/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/fermat2-ll_unwindbound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 06:07:04,320 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 06:07:04,323 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 06:07:04,380 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 06:07:04,380 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 06:07:04,381 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 06:07:04,384 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 06:07:04,388 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 06:07:04,390 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 06:07:04,394 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 06:07:04,395 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 06:07:04,397 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 06:07:04,397 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 06:07:04,401 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 06:07:04,403 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 06:07:04,405 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 06:07:04,406 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 06:07:04,406 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 06:07:04,408 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 06:07:04,413 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 06:07:04,415 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 06:07:04,416 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 06:07:04,416 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 06:07:04,417 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 06:07:04,418 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 06:07:04,424 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 06:07:04,425 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 06:07:04,425 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 06:07:04,426 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 06:07:04,426 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 06:07:04,427 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 06:07:04,427 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 06:07:04,429 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 06:07:04,429 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 06:07:04,430 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 06:07:04,430 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 06:07:04,431 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 06:07:04,431 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 06:07:04,431 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 06:07:04,432 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 06:07:04,432 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 06:07:04,434 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 06:07:04,434 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-08 06:07:04,445 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 06:07:04,445 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 06:07:04,446 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 06:07:04,446 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-08 06:07:04,447 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 06:07:04,447 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-08 06:07:04,447 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 06:07:04,447 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 06:07:04,447 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 06:07:04,448 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 06:07:04,448 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-08 06:07:04,448 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 06:07:04,449 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 06:07:04,449 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 06:07:04,449 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 06:07:04,449 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 06:07:04,449 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 06:07:04,449 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 06:07:04,450 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 06:07:04,450 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 06:07:04,450 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 06:07:04,450 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 06:07:04,450 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 06:07:04,450 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 06:07:04,450 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-08 06:07:04,451 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-08 06:07:04,636 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 06:07:04,656 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 06:07:04,658 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 06:07:04,659 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 06:07:04,660 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 06:07:04,661 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/fermat2-ll_unwindbound20.c [2022-04-08 06:07:04,707 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3cfc50b04/bd14caeba4034cb8a9ad2757a562f3ed/FLAG03dc87d08 [2022-04-08 06:07:05,033 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 06:07:05,034 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat2-ll_unwindbound20.c [2022-04-08 06:07:05,038 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3cfc50b04/bd14caeba4034cb8a9ad2757a562f3ed/FLAG03dc87d08 [2022-04-08 06:07:05,047 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3cfc50b04/bd14caeba4034cb8a9ad2757a562f3ed [2022-04-08 06:07:05,049 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 06:07:05,050 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 06:07:05,051 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 06:07:05,051 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 06:07:05,054 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 06:07:05,055 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 06:07:05" (1/1) ... [2022-04-08 06:07:05,056 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7b5aef19 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:07:05, skipping insertion in model container [2022-04-08 06:07:05,056 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 06:07:05" (1/1) ... [2022-04-08 06:07:05,061 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 06:07:05,071 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 06:07:05,189 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/fermat2-ll_unwindbound20.c[524,537] [2022-04-08 06:07:05,217 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 06:07:05,223 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 06:07:05,244 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/fermat2-ll_unwindbound20.c[524,537] [2022-04-08 06:07:05,258 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 06:07:05,270 INFO L208 MainTranslator]: Completed translation [2022-04-08 06:07:05,270 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:07:05 WrapperNode [2022-04-08 06:07:05,270 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 06:07:05,271 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 06:07:05,271 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 06:07:05,271 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 06:07:05,280 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:07:05" (1/1) ... [2022-04-08 06:07:05,280 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:07:05" (1/1) ... [2022-04-08 06:07:05,289 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:07:05" (1/1) ... [2022-04-08 06:07:05,289 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:07:05" (1/1) ... [2022-04-08 06:07:05,295 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:07:05" (1/1) ... [2022-04-08 06:07:05,299 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:07:05" (1/1) ... [2022-04-08 06:07:05,300 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:07:05" (1/1) ... [2022-04-08 06:07:05,301 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 06:07:05,302 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 06:07:05,302 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 06:07:05,302 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 06:07:05,305 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:07:05" (1/1) ... [2022-04-08 06:07:05,315 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 06:07:05,322 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:05,333 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-08 06:07:05,346 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-08 06:07:05,377 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 06:07:05,377 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 06:07:05,377 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 06:07:05,377 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 06:07:05,377 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 06:07:05,377 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 06:07:05,377 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 06:07:05,378 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 06:07:05,378 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 06:07:05,378 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 06:07:05,378 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 06:07:05,378 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 06:07:05,378 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 06:07:05,378 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 06:07:05,378 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 06:07:05,378 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 06:07:05,378 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 06:07:05,379 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 06:07:05,379 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 06:07:05,379 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 06:07:05,427 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 06:07:05,428 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 06:07:05,593 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 06:07:05,599 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 06:07:05,599 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-08 06:07:05,600 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 06:07:05 BoogieIcfgContainer [2022-04-08 06:07:05,600 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 06:07:05,602 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 06:07:05,602 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 06:07:05,609 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 06:07:05,609 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 06:07:05" (1/3) ... [2022-04-08 06:07:05,610 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5de391ba and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 06:07:05, skipping insertion in model container [2022-04-08 06:07:05,610 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:07:05" (2/3) ... [2022-04-08 06:07:05,610 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5de391ba and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 06:07:05, skipping insertion in model container [2022-04-08 06:07:05,611 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 06:07:05" (3/3) ... [2022-04-08 06:07:05,612 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat2-ll_unwindbound20.c [2022-04-08 06:07:05,616 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 06:07:05,616 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 06:07:05,648 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 06:07:05,653 INFO L340 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 [2022-04-08 06:07:05,653 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 06:07:05,667 INFO L276 IsEmpty]: Start isEmpty. Operand has 30 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 06:07:05,674 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-08 06:07:05,674 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:05,675 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:07:05,675 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:05,679 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:05,680 INFO L85 PathProgramCache]: Analyzing trace with hash -1859024204, now seen corresponding path program 1 times [2022-04-08 06:07:05,685 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:05,685 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [75571123] [2022-04-08 06:07:05,695 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:05,695 INFO L85 PathProgramCache]: Analyzing trace with hash -1859024204, now seen corresponding path program 2 times [2022-04-08 06:07:05,698 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:05,699 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [490021375] [2022-04-08 06:07:05,699 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:05,700 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:05,780 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:05,780 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1962405985] [2022-04-08 06:07:05,781 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:07:05,781 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:05,781 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:05,782 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-08 06:07:05,792 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-08 06:07:05,893 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 06:07:05,893 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:05,895 INFO L263 TraceCheckSpWp]: Trace formula consists of 80 conjuncts, 1 conjunts are in the unsatisfiable core [2022-04-08 06:07:05,911 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:05,917 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:06,050 INFO L272 TraceCheckUtils]: 0: Hoare triple {33#true} call ULTIMATE.init(); {33#true} is VALID [2022-04-08 06:07:06,051 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {33#true} is VALID [2022-04-08 06:07:06,051 INFO L290 TraceCheckUtils]: 2: Hoare triple {33#true} assume true; {33#true} is VALID [2022-04-08 06:07:06,052 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33#true} {33#true} #67#return; {33#true} is VALID [2022-04-08 06:07:06,052 INFO L272 TraceCheckUtils]: 4: Hoare triple {33#true} call #t~ret7 := main(); {33#true} is VALID [2022-04-08 06:07:06,052 INFO L290 TraceCheckUtils]: 5: Hoare triple {33#true} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {33#true} is VALID [2022-04-08 06:07:06,052 INFO L272 TraceCheckUtils]: 6: Hoare triple {33#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {33#true} is VALID [2022-04-08 06:07:06,053 INFO L290 TraceCheckUtils]: 7: Hoare triple {33#true} ~cond := #in~cond; {33#true} is VALID [2022-04-08 06:07:06,054 INFO L290 TraceCheckUtils]: 8: Hoare triple {33#true} assume 0 == ~cond;assume false; {33#true} is VALID [2022-04-08 06:07:06,054 INFO L290 TraceCheckUtils]: 9: Hoare triple {33#true} assume true; {33#true} is VALID [2022-04-08 06:07:06,054 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {33#true} {33#true} #59#return; {33#true} is VALID [2022-04-08 06:07:06,055 INFO L272 TraceCheckUtils]: 11: Hoare triple {33#true} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {33#true} is VALID [2022-04-08 06:07:06,055 INFO L290 TraceCheckUtils]: 12: Hoare triple {33#true} ~cond := #in~cond; {33#true} is VALID [2022-04-08 06:07:06,056 INFO L290 TraceCheckUtils]: 13: Hoare triple {33#true} assume 0 == ~cond;assume false; {34#false} is VALID [2022-04-08 06:07:06,056 INFO L290 TraceCheckUtils]: 14: Hoare triple {34#false} assume true; {34#false} is VALID [2022-04-08 06:07:06,056 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {34#false} {33#true} #61#return; {34#false} is VALID [2022-04-08 06:07:06,056 INFO L290 TraceCheckUtils]: 16: Hoare triple {34#false} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {34#false} is VALID [2022-04-08 06:07:06,057 INFO L290 TraceCheckUtils]: 17: Hoare triple {34#false} assume !true; {34#false} is VALID [2022-04-08 06:07:06,057 INFO L272 TraceCheckUtils]: 18: Hoare triple {34#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {34#false} is VALID [2022-04-08 06:07:06,058 INFO L290 TraceCheckUtils]: 19: Hoare triple {34#false} ~cond := #in~cond; {34#false} is VALID [2022-04-08 06:07:06,058 INFO L290 TraceCheckUtils]: 20: Hoare triple {34#false} assume 0 == ~cond; {34#false} is VALID [2022-04-08 06:07:06,059 INFO L290 TraceCheckUtils]: 21: Hoare triple {34#false} assume !false; {34#false} is VALID [2022-04-08 06:07:06,060 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-08 06:07:06,060 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 06:07:06,060 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:06,061 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [490021375] [2022-04-08 06:07:06,061 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:06,061 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1962405985] [2022-04-08 06:07:06,062 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1962405985] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:06,062 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:06,062 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-04-08 06:07:06,067 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:06,067 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [75571123] [2022-04-08 06:07:06,067 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [75571123] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:06,068 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:06,068 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-04-08 06:07:06,068 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [579211270] [2022-04-08 06:07:06,069 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:06,074 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 22 [2022-04-08 06:07:06,076 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:06,079 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 06:07:06,113 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-08 06:07:06,113 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-04-08 06:07:06,114 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:06,148 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-04-08 06:07:06,149 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-04-08 06:07:06,151 INFO L87 Difference]: Start difference. First operand has 30 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 06:07:06,225 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:06,225 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-08 06:07:06,225 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-04-08 06:07:06,225 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 22 [2022-04-08 06:07:06,226 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:07:06,227 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 06:07:06,239 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 70 transitions. [2022-04-08 06:07:06,239 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 06:07:06,243 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 70 transitions. [2022-04-08 06:07:06,243 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2 states and 70 transitions. [2022-04-08 06:07:06,348 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-08 06:07:06,376 INFO L225 Difference]: With dead ends: 53 [2022-04-08 06:07:06,376 INFO L226 Difference]: Without dead ends: 25 [2022-04-08 06:07:06,379 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 21 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-04-08 06:07:06,382 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 34 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:07:06,383 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 34 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:07:06,396 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25 states. [2022-04-08 06:07:06,407 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25 to 25. [2022-04-08 06:07:06,407 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:07:06,408 INFO L82 GeneralOperation]: Start isEquivalent. First operand 25 states. Second operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 06:07:06,409 INFO L74 IsIncluded]: Start isIncluded. First operand 25 states. Second operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 06:07:06,409 INFO L87 Difference]: Start difference. First operand 25 states. Second operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 06:07:06,412 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:06,412 INFO L93 Difference]: Finished difference Result 25 states and 29 transitions. [2022-04-08 06:07:06,413 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 29 transitions. [2022-04-08 06:07:06,413 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:06,413 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:06,414 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 25 states. [2022-04-08 06:07:06,414 INFO L87 Difference]: Start difference. First operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 25 states. [2022-04-08 06:07:06,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:06,417 INFO L93 Difference]: Finished difference Result 25 states and 29 transitions. [2022-04-08 06:07:06,417 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 29 transitions. [2022-04-08 06:07:06,417 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:06,418 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:06,418 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:07:06,418 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:07:06,418 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 06:07:06,420 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 29 transitions. [2022-04-08 06:07:06,421 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 29 transitions. Word has length 22 [2022-04-08 06:07:06,422 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:07:06,422 INFO L478 AbstractCegarLoop]: Abstraction has 25 states and 29 transitions. [2022-04-08 06:07:06,422 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-08 06:07:06,422 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 25 states and 29 transitions. [2022-04-08 06:07:06,452 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:06,452 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 29 transitions. [2022-04-08 06:07:06,453 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-08 06:07:06,453 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:06,454 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:07:06,476 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-08 06:07:06,671 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2022-04-08 06:07:06,672 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:06,673 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:06,673 INFO L85 PathProgramCache]: Analyzing trace with hash 243739414, now seen corresponding path program 1 times [2022-04-08 06:07:06,673 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:06,673 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [71250361] [2022-04-08 06:07:06,674 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:06,674 INFO L85 PathProgramCache]: Analyzing trace with hash 243739414, now seen corresponding path program 2 times [2022-04-08 06:07:06,674 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:06,674 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1864281048] [2022-04-08 06:07:06,675 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:06,675 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:06,700 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:06,700 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [301641990] [2022-04-08 06:07:06,700 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:07:06,700 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:06,701 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:06,708 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-08 06:07:06,709 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-08 06:07:06,767 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 06:07:06,767 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:06,768 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 06:07:06,781 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:06,783 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:06,960 INFO L272 TraceCheckUtils]: 0: Hoare triple {306#true} call ULTIMATE.init(); {306#true} is VALID [2022-04-08 06:07:06,962 INFO L290 TraceCheckUtils]: 1: Hoare triple {306#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,962 INFO L290 TraceCheckUtils]: 2: Hoare triple {314#(<= ~counter~0 0)} assume true; {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,963 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {314#(<= ~counter~0 0)} {306#true} #67#return; {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,963 INFO L272 TraceCheckUtils]: 4: Hoare triple {314#(<= ~counter~0 0)} call #t~ret7 := main(); {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,964 INFO L290 TraceCheckUtils]: 5: Hoare triple {314#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,965 INFO L272 TraceCheckUtils]: 6: Hoare triple {314#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,965 INFO L290 TraceCheckUtils]: 7: Hoare triple {314#(<= ~counter~0 0)} ~cond := #in~cond; {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,966 INFO L290 TraceCheckUtils]: 8: Hoare triple {314#(<= ~counter~0 0)} assume !(0 == ~cond); {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,966 INFO L290 TraceCheckUtils]: 9: Hoare triple {314#(<= ~counter~0 0)} assume true; {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,967 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {314#(<= ~counter~0 0)} {314#(<= ~counter~0 0)} #59#return; {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,968 INFO L272 TraceCheckUtils]: 11: Hoare triple {314#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,968 INFO L290 TraceCheckUtils]: 12: Hoare triple {314#(<= ~counter~0 0)} ~cond := #in~cond; {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,968 INFO L290 TraceCheckUtils]: 13: Hoare triple {314#(<= ~counter~0 0)} assume !(0 == ~cond); {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,969 INFO L290 TraceCheckUtils]: 14: Hoare triple {314#(<= ~counter~0 0)} assume true; {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,970 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {314#(<= ~counter~0 0)} {314#(<= ~counter~0 0)} #61#return; {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,972 INFO L290 TraceCheckUtils]: 16: Hoare triple {314#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {314#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:06,972 INFO L290 TraceCheckUtils]: 17: Hoare triple {314#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {363#(<= |main_#t~post6| 0)} is VALID [2022-04-08 06:07:06,973 INFO L290 TraceCheckUtils]: 18: Hoare triple {363#(<= |main_#t~post6| 0)} assume !(#t~post6 < 20);havoc #t~post6; {307#false} is VALID [2022-04-08 06:07:06,973 INFO L272 TraceCheckUtils]: 19: Hoare triple {307#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {307#false} is VALID [2022-04-08 06:07:06,974 INFO L290 TraceCheckUtils]: 20: Hoare triple {307#false} ~cond := #in~cond; {307#false} is VALID [2022-04-08 06:07:06,975 INFO L290 TraceCheckUtils]: 21: Hoare triple {307#false} assume 0 == ~cond; {307#false} is VALID [2022-04-08 06:07:06,975 INFO L290 TraceCheckUtils]: 22: Hoare triple {307#false} assume !false; {307#false} is VALID [2022-04-08 06:07:06,975 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-08 06:07:06,975 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 06:07:06,975 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:06,976 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1864281048] [2022-04-08 06:07:06,976 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:06,976 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [301641990] [2022-04-08 06:07:06,976 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [301641990] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:06,976 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:06,976 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 06:07:06,977 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:06,977 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [71250361] [2022-04-08 06:07:06,978 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [71250361] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:06,978 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:06,979 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 06:07:06,979 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [247227637] [2022-04-08 06:07:06,979 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:06,982 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-08 06:07:06,982 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:06,982 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-08 06:07:07,000 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-08 06:07:07,000 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 06:07:07,001 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:07,002 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 06:07:07,002 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 06:07:07,003 INFO L87 Difference]: Start difference. First operand 25 states and 29 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-08 06:07:07,088 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:07,089 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2022-04-08 06:07:07,089 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 06:07:07,089 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-08 06:07:07,089 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:07:07,090 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-08 06:07:07,095 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 38 transitions. [2022-04-08 06:07:07,095 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-08 06:07:07,108 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 38 transitions. [2022-04-08 06:07:07,108 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 38 transitions. [2022-04-08 06:07:07,141 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-08 06:07:07,143 INFO L225 Difference]: With dead ends: 34 [2022-04-08 06:07:07,144 INFO L226 Difference]: Without dead ends: 27 [2022-04-08 06:07:07,144 INFO L912 BasicCegarLoop]: 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-08 06:07:07,149 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 0 mSDsluCounter, 40 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 67 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:07:07,150 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 67 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:07:07,152 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-08 06:07:07,170 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-08 06:07:07,170 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:07:07,171 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 06:07:07,171 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 06:07:07,172 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 06:07:07,176 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:07,177 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-08 06:07:07,177 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-08 06:07:07,177 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:07,178 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:07,178 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 27 states. [2022-04-08 06:07:07,179 INFO L87 Difference]: Start difference. First operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 27 states. [2022-04-08 06:07:07,182 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:07,184 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-08 06:07:07,185 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-08 06:07:07,189 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:07,189 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:07,189 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:07:07,189 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:07:07,189 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 06:07:07,191 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2022-04-08 06:07:07,191 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 31 transitions. Word has length 23 [2022-04-08 06:07:07,191 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:07:07,191 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-04-08 06:07:07,191 INFO L479 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-08 06:07:07,191 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 31 transitions. [2022-04-08 06:07:07,225 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-08 06:07:07,226 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-08 06:07:07,226 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-08 06:07:07,226 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:07,227 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:07:07,252 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-08 06:07:07,449 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable1 [2022-04-08 06:07:07,449 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:07,450 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:07,450 INFO L85 PathProgramCache]: Analyzing trace with hash 245526874, now seen corresponding path program 1 times [2022-04-08 06:07:07,450 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:07,450 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [801420826] [2022-04-08 06:07:07,451 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:07,451 INFO L85 PathProgramCache]: Analyzing trace with hash 245526874, now seen corresponding path program 2 times [2022-04-08 06:07:07,451 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:07,451 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1032710281] [2022-04-08 06:07:07,451 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:07,451 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:07,468 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:07,469 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1330071286] [2022-04-08 06:07:07,469 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:07:07,469 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:07,469 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:07,470 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-08 06:07:07,487 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-08 06:07:07,525 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 06:07:07,525 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:07,526 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 06:07:07,539 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:07,540 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:07,882 INFO L272 TraceCheckUtils]: 0: Hoare triple {554#true} call ULTIMATE.init(); {554#true} is VALID [2022-04-08 06:07:07,882 INFO L290 TraceCheckUtils]: 1: Hoare triple {554#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {554#true} is VALID [2022-04-08 06:07:07,883 INFO L290 TraceCheckUtils]: 2: Hoare triple {554#true} assume true; {554#true} is VALID [2022-04-08 06:07:07,883 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {554#true} {554#true} #67#return; {554#true} is VALID [2022-04-08 06:07:07,883 INFO L272 TraceCheckUtils]: 4: Hoare triple {554#true} call #t~ret7 := main(); {554#true} is VALID [2022-04-08 06:07:07,883 INFO L290 TraceCheckUtils]: 5: Hoare triple {554#true} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {554#true} is VALID [2022-04-08 06:07:07,883 INFO L272 TraceCheckUtils]: 6: Hoare triple {554#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {554#true} is VALID [2022-04-08 06:07:07,883 INFO L290 TraceCheckUtils]: 7: Hoare triple {554#true} ~cond := #in~cond; {554#true} is VALID [2022-04-08 06:07:07,884 INFO L290 TraceCheckUtils]: 8: Hoare triple {554#true} assume !(0 == ~cond); {554#true} is VALID [2022-04-08 06:07:07,884 INFO L290 TraceCheckUtils]: 9: Hoare triple {554#true} assume true; {554#true} is VALID [2022-04-08 06:07:07,884 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {554#true} {554#true} #59#return; {554#true} is VALID [2022-04-08 06:07:07,884 INFO L272 TraceCheckUtils]: 11: Hoare triple {554#true} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {554#true} is VALID [2022-04-08 06:07:07,884 INFO L290 TraceCheckUtils]: 12: Hoare triple {554#true} ~cond := #in~cond; {554#true} is VALID [2022-04-08 06:07:07,884 INFO L290 TraceCheckUtils]: 13: Hoare triple {554#true} assume !(0 == ~cond); {554#true} is VALID [2022-04-08 06:07:07,884 INFO L290 TraceCheckUtils]: 14: Hoare triple {554#true} assume true; {554#true} is VALID [2022-04-08 06:07:07,885 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {554#true} {554#true} #61#return; {554#true} is VALID [2022-04-08 06:07:07,937 INFO L290 TraceCheckUtils]: 16: Hoare triple {554#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} is VALID [2022-04-08 06:07:07,938 INFO L290 TraceCheckUtils]: 17: Hoare triple {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} is VALID [2022-04-08 06:07:07,938 INFO L290 TraceCheckUtils]: 18: Hoare triple {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} is VALID [2022-04-08 06:07:09,199 INFO L272 TraceCheckUtils]: 19: Hoare triple {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {617#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:07:09,199 INFO L290 TraceCheckUtils]: 20: Hoare triple {617#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {621#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:07:09,200 INFO L290 TraceCheckUtils]: 21: Hoare triple {621#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {555#false} is VALID [2022-04-08 06:07:09,200 INFO L290 TraceCheckUtils]: 22: Hoare triple {555#false} assume !false; {555#false} is VALID [2022-04-08 06:07:09,200 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-08 06:07:09,200 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 06:07:09,201 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:09,201 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1032710281] [2022-04-08 06:07:09,201 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:09,201 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1330071286] [2022-04-08 06:07:09,201 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1330071286] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:09,201 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:09,201 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:07:09,201 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:09,201 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [801420826] [2022-04-08 06:07:09,201 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [801420826] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:09,201 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:09,202 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:07:09,202 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1351767303] [2022-04-08 06:07:09,202 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:09,202 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 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 23 [2022-04-08 06:07:09,202 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:09,203 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 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-08 06:07:11,664 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-08 06:07:11,664 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 06:07:11,664 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:11,664 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 06:07:11,665 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 06:07:11,665 INFO L87 Difference]: Start difference. First operand 27 states and 31 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 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-08 06:07:13,974 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.38s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 06:07:17,847 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.72s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 06:07:17,883 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:17,883 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-08 06:07:17,883 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 06:07:17,883 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 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 23 [2022-04-08 06:07:17,884 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:07:17,884 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 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-08 06:07:17,885 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-08 06:07:17,885 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 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-08 06:07:17,887 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-08 06:07:17,887 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 44 transitions. [2022-04-08 06:07:23,085 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 42 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:23,087 INFO L225 Difference]: With dead ends: 39 [2022-04-08 06:07:23,087 INFO L226 Difference]: Without dead ends: 37 [2022-04-08 06:07:23,087 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 19 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-08 06:07:23,088 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 8 mSDsluCounter, 61 mSDsCounter, 0 mSdLazyCounter, 36 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 85 SdHoareTripleChecker+Invalid, 37 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 36 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 4.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:07:23,089 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 85 Invalid, 37 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 36 Invalid, 0 Unknown, 0 Unchecked, 4.0s Time] [2022-04-08 06:07:23,089 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-08 06:07:23,115 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 36. [2022-04-08 06:07:23,116 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:07:23,116 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 36 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 06:07:23,116 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 36 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 06:07:23,117 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 36 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 06:07:23,122 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:23,122 INFO L93 Difference]: Finished difference Result 37 states and 44 transitions. [2022-04-08 06:07:23,122 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 44 transitions. [2022-04-08 06:07:23,124 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:23,124 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:23,125 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 37 states. [2022-04-08 06:07:23,125 INFO L87 Difference]: Start difference. First operand has 36 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 37 states. [2022-04-08 06:07:23,127 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:23,127 INFO L93 Difference]: Finished difference Result 37 states and 44 transitions. [2022-04-08 06:07:23,127 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 44 transitions. [2022-04-08 06:07:23,127 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:23,127 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:23,128 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:07:23,128 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:07:23,128 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 06:07:23,129 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 43 transitions. [2022-04-08 06:07:23,130 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 43 transitions. Word has length 23 [2022-04-08 06:07:23,130 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:07:23,130 INFO L478 AbstractCegarLoop]: Abstraction has 36 states and 43 transitions. [2022-04-08 06:07:23,130 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 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-08 06:07:23,130 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 36 states and 43 transitions. [2022-04-08 06:07:27,809 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 42 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:27,810 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 43 transitions. [2022-04-08 06:07:27,810 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-08 06:07:27,810 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:27,810 INFO L499 BasicCegarLoop]: 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-08 06:07:27,827 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-08 06:07:28,011 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:28,011 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:28,012 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:28,012 INFO L85 PathProgramCache]: Analyzing trace with hash -1019533657, now seen corresponding path program 1 times [2022-04-08 06:07:28,012 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:28,012 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1451547684] [2022-04-08 06:07:28,013 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:28,013 INFO L85 PathProgramCache]: Analyzing trace with hash -1019533657, now seen corresponding path program 2 times [2022-04-08 06:07:28,013 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:28,013 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [316508140] [2022-04-08 06:07:28,013 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:28,013 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:28,027 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:28,027 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [754543122] [2022-04-08 06:07:28,027 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:07:28,027 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:28,027 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:28,033 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-08 06:07:28,034 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-08 06:07:28,078 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:07:28,078 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:28,080 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-08 06:07:28,098 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:28,101 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:28,322 INFO L272 TraceCheckUtils]: 0: Hoare triple {853#true} call ULTIMATE.init(); {853#true} is VALID [2022-04-08 06:07:28,322 INFO L290 TraceCheckUtils]: 1: Hoare triple {853#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {853#true} is VALID [2022-04-08 06:07:28,322 INFO L290 TraceCheckUtils]: 2: Hoare triple {853#true} assume true; {853#true} is VALID [2022-04-08 06:07:28,322 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {853#true} {853#true} #67#return; {853#true} is VALID [2022-04-08 06:07:28,322 INFO L272 TraceCheckUtils]: 4: Hoare triple {853#true} call #t~ret7 := main(); {853#true} is VALID [2022-04-08 06:07:28,323 INFO L290 TraceCheckUtils]: 5: Hoare triple {853#true} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {853#true} is VALID [2022-04-08 06:07:28,323 INFO L272 TraceCheckUtils]: 6: Hoare triple {853#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {853#true} is VALID [2022-04-08 06:07:28,323 INFO L290 TraceCheckUtils]: 7: Hoare triple {853#true} ~cond := #in~cond; {853#true} is VALID [2022-04-08 06:07:28,323 INFO L290 TraceCheckUtils]: 8: Hoare triple {853#true} assume !(0 == ~cond); {853#true} is VALID [2022-04-08 06:07:28,323 INFO L290 TraceCheckUtils]: 9: Hoare triple {853#true} assume true; {853#true} is VALID [2022-04-08 06:07:28,323 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {853#true} {853#true} #59#return; {853#true} is VALID [2022-04-08 06:07:28,324 INFO L272 TraceCheckUtils]: 11: Hoare triple {853#true} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {853#true} is VALID [2022-04-08 06:07:28,324 INFO L290 TraceCheckUtils]: 12: Hoare triple {853#true} ~cond := #in~cond; {853#true} is VALID [2022-04-08 06:07:28,324 INFO L290 TraceCheckUtils]: 13: Hoare triple {853#true} assume !(0 == ~cond); {853#true} is VALID [2022-04-08 06:07:28,324 INFO L290 TraceCheckUtils]: 14: Hoare triple {853#true} assume true; {853#true} is VALID [2022-04-08 06:07:28,324 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {853#true} {853#true} #61#return; {853#true} is VALID [2022-04-08 06:07:28,324 INFO L290 TraceCheckUtils]: 16: Hoare triple {853#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {853#true} is VALID [2022-04-08 06:07:28,324 INFO L290 TraceCheckUtils]: 17: Hoare triple {853#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {853#true} is VALID [2022-04-08 06:07:28,325 INFO L290 TraceCheckUtils]: 18: Hoare triple {853#true} assume !!(#t~post6 < 20);havoc #t~post6; {853#true} is VALID [2022-04-08 06:07:28,325 INFO L272 TraceCheckUtils]: 19: Hoare triple {853#true} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {853#true} is VALID [2022-04-08 06:07:28,325 INFO L290 TraceCheckUtils]: 20: Hoare triple {853#true} ~cond := #in~cond; {918#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:07:28,326 INFO L290 TraceCheckUtils]: 21: Hoare triple {918#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {922#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:07:28,326 INFO L290 TraceCheckUtils]: 22: Hoare triple {922#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {922#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:07:28,327 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {922#(not (= |__VERIFIER_assert_#in~cond| 0))} {853#true} #63#return; {929#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4) (* main_~r~0 4)))} is VALID [2022-04-08 06:07:28,328 INFO L290 TraceCheckUtils]: 24: Hoare triple {929#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4) (* main_~r~0 4)))} assume !(0 != ~r~0); {933#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} is VALID [2022-04-08 06:07:28,329 INFO L272 TraceCheckUtils]: 25: Hoare triple {933#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {937#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:07:28,329 INFO L290 TraceCheckUtils]: 26: Hoare triple {937#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {941#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:07:28,330 INFO L290 TraceCheckUtils]: 27: Hoare triple {941#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {854#false} is VALID [2022-04-08 06:07:28,330 INFO L290 TraceCheckUtils]: 28: Hoare triple {854#false} assume !false; {854#false} is VALID [2022-04-08 06:07:28,330 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:07:28,330 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:07:28,769 INFO L290 TraceCheckUtils]: 28: Hoare triple {854#false} assume !false; {854#false} is VALID [2022-04-08 06:07:28,770 INFO L290 TraceCheckUtils]: 27: Hoare triple {941#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {854#false} is VALID [2022-04-08 06:07:28,770 INFO L290 TraceCheckUtils]: 26: Hoare triple {937#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {941#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:07:28,771 INFO L272 TraceCheckUtils]: 25: Hoare triple {933#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {937#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:07:28,772 INFO L290 TraceCheckUtils]: 24: Hoare triple {960#(or (not (= main_~r~0 0)) (= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4))))} assume !(0 != ~r~0); {933#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} is VALID [2022-04-08 06:07:28,775 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {922#(not (= |__VERIFIER_assert_#in~cond| 0))} {853#true} #63#return; {960#(or (not (= main_~r~0 0)) (= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4))))} is VALID [2022-04-08 06:07:28,775 INFO L290 TraceCheckUtils]: 22: Hoare triple {922#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {922#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:07:28,776 INFO L290 TraceCheckUtils]: 21: Hoare triple {973#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {922#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:07:28,776 INFO L290 TraceCheckUtils]: 20: Hoare triple {853#true} ~cond := #in~cond; {973#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:07:28,776 INFO L272 TraceCheckUtils]: 19: Hoare triple {853#true} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {853#true} is VALID [2022-04-08 06:07:28,776 INFO L290 TraceCheckUtils]: 18: Hoare triple {853#true} assume !!(#t~post6 < 20);havoc #t~post6; {853#true} is VALID [2022-04-08 06:07:28,777 INFO L290 TraceCheckUtils]: 17: Hoare triple {853#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {853#true} is VALID [2022-04-08 06:07:28,777 INFO L290 TraceCheckUtils]: 16: Hoare triple {853#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {853#true} is VALID [2022-04-08 06:07:28,777 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {853#true} {853#true} #61#return; {853#true} is VALID [2022-04-08 06:07:28,777 INFO L290 TraceCheckUtils]: 14: Hoare triple {853#true} assume true; {853#true} is VALID [2022-04-08 06:07:28,777 INFO L290 TraceCheckUtils]: 13: Hoare triple {853#true} assume !(0 == ~cond); {853#true} is VALID [2022-04-08 06:07:28,777 INFO L290 TraceCheckUtils]: 12: Hoare triple {853#true} ~cond := #in~cond; {853#true} is VALID [2022-04-08 06:07:28,778 INFO L272 TraceCheckUtils]: 11: Hoare triple {853#true} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {853#true} is VALID [2022-04-08 06:07:28,779 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {853#true} {853#true} #59#return; {853#true} is VALID [2022-04-08 06:07:28,779 INFO L290 TraceCheckUtils]: 9: Hoare triple {853#true} assume true; {853#true} is VALID [2022-04-08 06:07:28,780 INFO L290 TraceCheckUtils]: 8: Hoare triple {853#true} assume !(0 == ~cond); {853#true} is VALID [2022-04-08 06:07:28,781 INFO L290 TraceCheckUtils]: 7: Hoare triple {853#true} ~cond := #in~cond; {853#true} is VALID [2022-04-08 06:07:28,789 INFO L272 TraceCheckUtils]: 6: Hoare triple {853#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {853#true} is VALID [2022-04-08 06:07:28,789 INFO L290 TraceCheckUtils]: 5: Hoare triple {853#true} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {853#true} is VALID [2022-04-08 06:07:28,789 INFO L272 TraceCheckUtils]: 4: Hoare triple {853#true} call #t~ret7 := main(); {853#true} is VALID [2022-04-08 06:07:28,789 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {853#true} {853#true} #67#return; {853#true} is VALID [2022-04-08 06:07:28,790 INFO L290 TraceCheckUtils]: 2: Hoare triple {853#true} assume true; {853#true} is VALID [2022-04-08 06:07:28,790 INFO L290 TraceCheckUtils]: 1: Hoare triple {853#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {853#true} is VALID [2022-04-08 06:07:28,790 INFO L272 TraceCheckUtils]: 0: Hoare triple {853#true} call ULTIMATE.init(); {853#true} is VALID [2022-04-08 06:07:28,790 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:07:28,790 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:28,790 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [316508140] [2022-04-08 06:07:28,790 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:28,790 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [754543122] [2022-04-08 06:07:28,791 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [754543122] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:07:28,791 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:07:28,791 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-08 06:07:28,791 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:28,791 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1451547684] [2022-04-08 06:07:28,791 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1451547684] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:28,791 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:28,791 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 06:07:28,791 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [385852942] [2022-04-08 06:07:28,791 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:28,792 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 6 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 29 [2022-04-08 06:07:28,792 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:28,792 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 6 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 06:07:28,821 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-08 06:07:28,821 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 06:07:28,821 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:28,822 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 06:07:28,822 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-08 06:07:28,823 INFO L87 Difference]: Start difference. First operand 36 states and 43 transitions. Second operand has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 6 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 06:07:29,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:29,188 INFO L93 Difference]: Finished difference Result 43 states and 49 transitions. [2022-04-08 06:07:29,189 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 06:07:29,189 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 6 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 29 [2022-04-08 06:07:29,189 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:07:29,189 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 6 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 06:07:29,191 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 35 transitions. [2022-04-08 06:07:29,191 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 6 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 06:07:29,192 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 35 transitions. [2022-04-08 06:07:29,192 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 35 transitions. [2022-04-08 06:07:29,236 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-08 06:07:29,238 INFO L225 Difference]: With dead ends: 43 [2022-04-08 06:07:29,238 INFO L226 Difference]: Without dead ends: 38 [2022-04-08 06:07:29,238 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 48 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=115, Unknown=0, NotChecked=0, Total=156 [2022-04-08 06:07:29,239 INFO L913 BasicCegarLoop]: 21 mSDtfsCounter, 17 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 103 SdHoareTripleChecker+Invalid, 61 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:07:29,239 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 103 Invalid, 61 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:07:29,240 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-04-08 06:07:29,261 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 29. [2022-04-08 06:07:29,261 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:07:29,261 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 06:07:29,263 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 06:07:29,264 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 06:07:29,266 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:29,266 INFO L93 Difference]: Finished difference Result 38 states and 42 transitions. [2022-04-08 06:07:29,266 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 42 transitions. [2022-04-08 06:07:29,270 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:29,270 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:29,271 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 38 states. [2022-04-08 06:07:29,271 INFO L87 Difference]: Start difference. First operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 38 states. [2022-04-08 06:07:29,280 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:29,280 INFO L93 Difference]: Finished difference Result 38 states and 42 transitions. [2022-04-08 06:07:29,280 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 42 transitions. [2022-04-08 06:07:29,280 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:29,281 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:29,281 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:07:29,281 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:07:29,281 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-08 06:07:29,282 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 31 transitions. [2022-04-08 06:07:29,282 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 31 transitions. Word has length 29 [2022-04-08 06:07:29,282 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:07:29,282 INFO L478 AbstractCegarLoop]: Abstraction has 29 states and 31 transitions. [2022-04-08 06:07:29,283 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 6 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-08 06:07:29,283 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 31 transitions. [2022-04-08 06:07:31,325 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 30 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:31,325 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 31 transitions. [2022-04-08 06:07:31,326 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-08 06:07:31,326 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:31,326 INFO L499 BasicCegarLoop]: 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] [2022-04-08 06:07:31,351 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-08 06:07:31,526 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:31,527 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:31,527 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:31,527 INFO L85 PathProgramCache]: Analyzing trace with hash 1080225052, now seen corresponding path program 1 times [2022-04-08 06:07:31,527 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:31,527 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [528890488] [2022-04-08 06:07:31,528 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:31,528 INFO L85 PathProgramCache]: Analyzing trace with hash 1080225052, now seen corresponding path program 2 times [2022-04-08 06:07:31,528 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:31,528 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1409805240] [2022-04-08 06:07:31,528 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:31,528 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:31,544 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:31,545 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1610320266] [2022-04-08 06:07:31,545 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:07:31,545 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:31,545 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:31,552 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-08 06:07:31,576 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-08 06:07:31,597 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:07:31,597 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:31,598 INFO L263 TraceCheckSpWp]: Trace formula consists of 113 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 06:07:31,607 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:31,609 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:31,767 INFO L272 TraceCheckUtils]: 0: Hoare triple {1262#true} call ULTIMATE.init(); {1262#true} is VALID [2022-04-08 06:07:31,768 INFO L290 TraceCheckUtils]: 1: Hoare triple {1262#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,768 INFO L290 TraceCheckUtils]: 2: Hoare triple {1270#(<= ~counter~0 0)} assume true; {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,769 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1270#(<= ~counter~0 0)} {1262#true} #67#return; {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,769 INFO L272 TraceCheckUtils]: 4: Hoare triple {1270#(<= ~counter~0 0)} call #t~ret7 := main(); {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,770 INFO L290 TraceCheckUtils]: 5: Hoare triple {1270#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,770 INFO L272 TraceCheckUtils]: 6: Hoare triple {1270#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,771 INFO L290 TraceCheckUtils]: 7: Hoare triple {1270#(<= ~counter~0 0)} ~cond := #in~cond; {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,771 INFO L290 TraceCheckUtils]: 8: Hoare triple {1270#(<= ~counter~0 0)} assume !(0 == ~cond); {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,771 INFO L290 TraceCheckUtils]: 9: Hoare triple {1270#(<= ~counter~0 0)} assume true; {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,772 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1270#(<= ~counter~0 0)} {1270#(<= ~counter~0 0)} #59#return; {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,773 INFO L272 TraceCheckUtils]: 11: Hoare triple {1270#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,773 INFO L290 TraceCheckUtils]: 12: Hoare triple {1270#(<= ~counter~0 0)} ~cond := #in~cond; {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,773 INFO L290 TraceCheckUtils]: 13: Hoare triple {1270#(<= ~counter~0 0)} assume !(0 == ~cond); {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,774 INFO L290 TraceCheckUtils]: 14: Hoare triple {1270#(<= ~counter~0 0)} assume true; {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,774 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1270#(<= ~counter~0 0)} {1270#(<= ~counter~0 0)} #61#return; {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,774 INFO L290 TraceCheckUtils]: 16: Hoare triple {1270#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1270#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:31,775 INFO L290 TraceCheckUtils]: 17: Hoare triple {1270#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1319#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:31,775 INFO L290 TraceCheckUtils]: 18: Hoare triple {1319#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {1319#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:31,776 INFO L272 TraceCheckUtils]: 19: Hoare triple {1319#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1319#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:31,776 INFO L290 TraceCheckUtils]: 20: Hoare triple {1319#(<= ~counter~0 1)} ~cond := #in~cond; {1319#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:31,777 INFO L290 TraceCheckUtils]: 21: Hoare triple {1319#(<= ~counter~0 1)} assume !(0 == ~cond); {1319#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:31,777 INFO L290 TraceCheckUtils]: 22: Hoare triple {1319#(<= ~counter~0 1)} assume true; {1319#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:31,778 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1319#(<= ~counter~0 1)} {1319#(<= ~counter~0 1)} #63#return; {1319#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:31,778 INFO L290 TraceCheckUtils]: 24: Hoare triple {1319#(<= ~counter~0 1)} assume !!(0 != ~r~0); {1319#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:31,779 INFO L290 TraceCheckUtils]: 25: Hoare triple {1319#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1319#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:31,779 INFO L290 TraceCheckUtils]: 26: Hoare triple {1319#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1347#(<= |main_#t~post6| 1)} is VALID [2022-04-08 06:07:31,779 INFO L290 TraceCheckUtils]: 27: Hoare triple {1347#(<= |main_#t~post6| 1)} assume !(#t~post6 < 20);havoc #t~post6; {1263#false} is VALID [2022-04-08 06:07:31,780 INFO L272 TraceCheckUtils]: 28: Hoare triple {1263#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1263#false} is VALID [2022-04-08 06:07:31,780 INFO L290 TraceCheckUtils]: 29: Hoare triple {1263#false} ~cond := #in~cond; {1263#false} is VALID [2022-04-08 06:07:31,780 INFO L290 TraceCheckUtils]: 30: Hoare triple {1263#false} assume 0 == ~cond; {1263#false} is VALID [2022-04-08 06:07:31,780 INFO L290 TraceCheckUtils]: 31: Hoare triple {1263#false} assume !false; {1263#false} is VALID [2022-04-08 06:07:31,780 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:07:31,780 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:07:31,966 INFO L290 TraceCheckUtils]: 31: Hoare triple {1263#false} assume !false; {1263#false} is VALID [2022-04-08 06:07:31,966 INFO L290 TraceCheckUtils]: 30: Hoare triple {1263#false} assume 0 == ~cond; {1263#false} is VALID [2022-04-08 06:07:31,966 INFO L290 TraceCheckUtils]: 29: Hoare triple {1263#false} ~cond := #in~cond; {1263#false} is VALID [2022-04-08 06:07:31,976 INFO L272 TraceCheckUtils]: 28: Hoare triple {1263#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1263#false} is VALID [2022-04-08 06:07:31,977 INFO L290 TraceCheckUtils]: 27: Hoare triple {1375#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {1263#false} is VALID [2022-04-08 06:07:31,977 INFO L290 TraceCheckUtils]: 26: Hoare triple {1379#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1375#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:07:31,978 INFO L290 TraceCheckUtils]: 25: Hoare triple {1379#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1379#(< ~counter~0 20)} is VALID [2022-04-08 06:07:31,978 INFO L290 TraceCheckUtils]: 24: Hoare triple {1379#(< ~counter~0 20)} assume !!(0 != ~r~0); {1379#(< ~counter~0 20)} is VALID [2022-04-08 06:07:31,979 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1262#true} {1379#(< ~counter~0 20)} #63#return; {1379#(< ~counter~0 20)} is VALID [2022-04-08 06:07:31,979 INFO L290 TraceCheckUtils]: 22: Hoare triple {1262#true} assume true; {1262#true} is VALID [2022-04-08 06:07:31,980 INFO L290 TraceCheckUtils]: 21: Hoare triple {1262#true} assume !(0 == ~cond); {1262#true} is VALID [2022-04-08 06:07:31,980 INFO L290 TraceCheckUtils]: 20: Hoare triple {1262#true} ~cond := #in~cond; {1262#true} is VALID [2022-04-08 06:07:31,980 INFO L272 TraceCheckUtils]: 19: Hoare triple {1379#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1262#true} is VALID [2022-04-08 06:07:31,980 INFO L290 TraceCheckUtils]: 18: Hoare triple {1379#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {1379#(< ~counter~0 20)} is VALID [2022-04-08 06:07:31,981 INFO L290 TraceCheckUtils]: 17: Hoare triple {1407#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1379#(< ~counter~0 20)} is VALID [2022-04-08 06:07:31,981 INFO L290 TraceCheckUtils]: 16: Hoare triple {1407#(< ~counter~0 19)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1407#(< ~counter~0 19)} is VALID [2022-04-08 06:07:31,982 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1262#true} {1407#(< ~counter~0 19)} #61#return; {1407#(< ~counter~0 19)} is VALID [2022-04-08 06:07:31,982 INFO L290 TraceCheckUtils]: 14: Hoare triple {1262#true} assume true; {1262#true} is VALID [2022-04-08 06:07:31,982 INFO L290 TraceCheckUtils]: 13: Hoare triple {1262#true} assume !(0 == ~cond); {1262#true} is VALID [2022-04-08 06:07:31,982 INFO L290 TraceCheckUtils]: 12: Hoare triple {1262#true} ~cond := #in~cond; {1262#true} is VALID [2022-04-08 06:07:31,983 INFO L272 TraceCheckUtils]: 11: Hoare triple {1407#(< ~counter~0 19)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {1262#true} is VALID [2022-04-08 06:07:31,983 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1262#true} {1407#(< ~counter~0 19)} #59#return; {1407#(< ~counter~0 19)} is VALID [2022-04-08 06:07:31,983 INFO L290 TraceCheckUtils]: 9: Hoare triple {1262#true} assume true; {1262#true} is VALID [2022-04-08 06:07:31,984 INFO L290 TraceCheckUtils]: 8: Hoare triple {1262#true} assume !(0 == ~cond); {1262#true} is VALID [2022-04-08 06:07:31,984 INFO L290 TraceCheckUtils]: 7: Hoare triple {1262#true} ~cond := #in~cond; {1262#true} is VALID [2022-04-08 06:07:31,984 INFO L272 TraceCheckUtils]: 6: Hoare triple {1407#(< ~counter~0 19)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1262#true} is VALID [2022-04-08 06:07:31,984 INFO L290 TraceCheckUtils]: 5: Hoare triple {1407#(< ~counter~0 19)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {1407#(< ~counter~0 19)} is VALID [2022-04-08 06:07:31,985 INFO L272 TraceCheckUtils]: 4: Hoare triple {1407#(< ~counter~0 19)} call #t~ret7 := main(); {1407#(< ~counter~0 19)} is VALID [2022-04-08 06:07:31,985 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1407#(< ~counter~0 19)} {1262#true} #67#return; {1407#(< ~counter~0 19)} is VALID [2022-04-08 06:07:31,985 INFO L290 TraceCheckUtils]: 2: Hoare triple {1407#(< ~counter~0 19)} assume true; {1407#(< ~counter~0 19)} is VALID [2022-04-08 06:07:31,986 INFO L290 TraceCheckUtils]: 1: Hoare triple {1262#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1407#(< ~counter~0 19)} is VALID [2022-04-08 06:07:31,986 INFO L272 TraceCheckUtils]: 0: Hoare triple {1262#true} call ULTIMATE.init(); {1262#true} is VALID [2022-04-08 06:07:31,986 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:07:31,987 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:31,987 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1409805240] [2022-04-08 06:07:31,987 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:31,987 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1610320266] [2022-04-08 06:07:31,987 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1610320266] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:07:31,987 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:07:31,987 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-08 06:07:31,987 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:31,987 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [528890488] [2022-04-08 06:07:31,988 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [528890488] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:31,988 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:31,988 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:07:31,988 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1283204500] [2022-04-08 06:07:31,988 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:31,988 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) Word has length 32 [2022-04-08 06:07:31,988 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:31,989 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 06:07:32,014 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:32,014 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 06:07:32,015 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:32,015 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 06:07:32,015 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-08 06:07:32,015 INFO L87 Difference]: Start difference. First operand 29 states and 31 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 06:07:32,129 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:32,129 INFO L93 Difference]: Finished difference Result 43 states and 46 transitions. [2022-04-08 06:07:32,129 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 06:07:32,129 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) Word has length 32 [2022-04-08 06:07:32,130 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:07:32,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 06:07:32,131 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 45 transitions. [2022-04-08 06:07:32,132 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 06:07:32,133 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 45 transitions. [2022-04-08 06:07:32,133 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 45 transitions. [2022-04-08 06:07:32,172 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-08 06:07:32,173 INFO L225 Difference]: With dead ends: 43 [2022-04-08 06:07:32,173 INFO L226 Difference]: Without dead ends: 38 [2022-04-08 06:07:32,173 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 64 GetRequests, 57 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-04-08 06:07:32,174 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 7 mSDsluCounter, 51 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 78 SdHoareTripleChecker+Invalid, 18 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:07:32,174 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 78 Invalid, 18 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:07:32,175 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-04-08 06:07:32,202 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 38. [2022-04-08 06:07:32,202 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:07:32,202 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 38 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 06:07:32,203 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 38 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 06:07:32,203 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 38 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 06:07:32,204 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:32,205 INFO L93 Difference]: Finished difference Result 38 states and 41 transitions. [2022-04-08 06:07:32,205 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 41 transitions. [2022-04-08 06:07:32,205 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:32,205 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:32,205 INFO L74 IsIncluded]: Start isIncluded. First operand has 38 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 38 states. [2022-04-08 06:07:32,205 INFO L87 Difference]: Start difference. First operand has 38 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 38 states. [2022-04-08 06:07:32,207 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:32,207 INFO L93 Difference]: Finished difference Result 38 states and 41 transitions. [2022-04-08 06:07:32,207 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 41 transitions. [2022-04-08 06:07:32,207 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:32,207 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:32,207 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:07:32,207 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:07:32,208 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-08 06:07:32,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 41 transitions. [2022-04-08 06:07:32,209 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 41 transitions. Word has length 32 [2022-04-08 06:07:32,209 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:07:32,209 INFO L478 AbstractCegarLoop]: Abstraction has 38 states and 41 transitions. [2022-04-08 06:07:32,210 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-08 06:07:32,210 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 38 states and 41 transitions. [2022-04-08 06:07:34,275 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 40 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:34,276 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 41 transitions. [2022-04-08 06:07:34,276 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-08 06:07:34,276 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:34,276 INFO L499 BasicCegarLoop]: trace histogram [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, 1, 1] [2022-04-08 06:07:34,295 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-08 06:07:34,477 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:34,477 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:34,478 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:34,478 INFO L85 PathProgramCache]: Analyzing trace with hash 1448743382, now seen corresponding path program 3 times [2022-04-08 06:07:34,478 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:34,478 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1197493156] [2022-04-08 06:07:34,478 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:34,478 INFO L85 PathProgramCache]: Analyzing trace with hash 1448743382, now seen corresponding path program 4 times [2022-04-08 06:07:34,479 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:34,479 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1073387880] [2022-04-08 06:07:34,479 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:34,479 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:34,511 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:34,512 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1416589500] [2022-04-08 06:07:34,512 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:07:34,512 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:34,512 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:34,513 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-08 06:07:34,543 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-08 06:07:34,591 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:07:34,591 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:34,592 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 06:07:34,605 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:34,608 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:34,854 INFO L272 TraceCheckUtils]: 0: Hoare triple {1701#true} call ULTIMATE.init(); {1701#true} is VALID [2022-04-08 06:07:34,855 INFO L290 TraceCheckUtils]: 1: Hoare triple {1701#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,855 INFO L290 TraceCheckUtils]: 2: Hoare triple {1709#(<= ~counter~0 0)} assume true; {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,856 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1709#(<= ~counter~0 0)} {1701#true} #67#return; {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,856 INFO L272 TraceCheckUtils]: 4: Hoare triple {1709#(<= ~counter~0 0)} call #t~ret7 := main(); {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,856 INFO L290 TraceCheckUtils]: 5: Hoare triple {1709#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,857 INFO L272 TraceCheckUtils]: 6: Hoare triple {1709#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,857 INFO L290 TraceCheckUtils]: 7: Hoare triple {1709#(<= ~counter~0 0)} ~cond := #in~cond; {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,862 INFO L290 TraceCheckUtils]: 8: Hoare triple {1709#(<= ~counter~0 0)} assume !(0 == ~cond); {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,862 INFO L290 TraceCheckUtils]: 9: Hoare triple {1709#(<= ~counter~0 0)} assume true; {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,863 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1709#(<= ~counter~0 0)} {1709#(<= ~counter~0 0)} #59#return; {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,863 INFO L272 TraceCheckUtils]: 11: Hoare triple {1709#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,864 INFO L290 TraceCheckUtils]: 12: Hoare triple {1709#(<= ~counter~0 0)} ~cond := #in~cond; {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,864 INFO L290 TraceCheckUtils]: 13: Hoare triple {1709#(<= ~counter~0 0)} assume !(0 == ~cond); {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,865 INFO L290 TraceCheckUtils]: 14: Hoare triple {1709#(<= ~counter~0 0)} assume true; {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,865 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1709#(<= ~counter~0 0)} {1709#(<= ~counter~0 0)} #61#return; {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,865 INFO L290 TraceCheckUtils]: 16: Hoare triple {1709#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1709#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:34,868 INFO L290 TraceCheckUtils]: 17: Hoare triple {1709#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1758#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:34,869 INFO L290 TraceCheckUtils]: 18: Hoare triple {1758#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {1758#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:34,869 INFO L272 TraceCheckUtils]: 19: Hoare triple {1758#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1758#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:34,870 INFO L290 TraceCheckUtils]: 20: Hoare triple {1758#(<= ~counter~0 1)} ~cond := #in~cond; {1758#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:34,870 INFO L290 TraceCheckUtils]: 21: Hoare triple {1758#(<= ~counter~0 1)} assume !(0 == ~cond); {1758#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:34,870 INFO L290 TraceCheckUtils]: 22: Hoare triple {1758#(<= ~counter~0 1)} assume true; {1758#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:34,871 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1758#(<= ~counter~0 1)} {1758#(<= ~counter~0 1)} #63#return; {1758#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:34,872 INFO L290 TraceCheckUtils]: 24: Hoare triple {1758#(<= ~counter~0 1)} assume !!(0 != ~r~0); {1758#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:34,872 INFO L290 TraceCheckUtils]: 25: Hoare triple {1758#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1758#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:34,872 INFO L290 TraceCheckUtils]: 26: Hoare triple {1758#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1786#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:34,873 INFO L290 TraceCheckUtils]: 27: Hoare triple {1786#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {1786#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:34,874 INFO L272 TraceCheckUtils]: 28: Hoare triple {1786#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1786#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:34,874 INFO L290 TraceCheckUtils]: 29: Hoare triple {1786#(<= ~counter~0 2)} ~cond := #in~cond; {1786#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:34,874 INFO L290 TraceCheckUtils]: 30: Hoare triple {1786#(<= ~counter~0 2)} assume !(0 == ~cond); {1786#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:34,875 INFO L290 TraceCheckUtils]: 31: Hoare triple {1786#(<= ~counter~0 2)} assume true; {1786#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:34,875 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1786#(<= ~counter~0 2)} {1786#(<= ~counter~0 2)} #63#return; {1786#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:34,876 INFO L290 TraceCheckUtils]: 33: Hoare triple {1786#(<= ~counter~0 2)} assume !!(0 != ~r~0); {1786#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:34,876 INFO L290 TraceCheckUtils]: 34: Hoare triple {1786#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1786#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:34,877 INFO L290 TraceCheckUtils]: 35: Hoare triple {1786#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1814#(<= |main_#t~post6| 2)} is VALID [2022-04-08 06:07:34,877 INFO L290 TraceCheckUtils]: 36: Hoare triple {1814#(<= |main_#t~post6| 2)} assume !(#t~post6 < 20);havoc #t~post6; {1702#false} is VALID [2022-04-08 06:07:34,877 INFO L272 TraceCheckUtils]: 37: Hoare triple {1702#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1702#false} is VALID [2022-04-08 06:07:34,877 INFO L290 TraceCheckUtils]: 38: Hoare triple {1702#false} ~cond := #in~cond; {1702#false} is VALID [2022-04-08 06:07:34,877 INFO L290 TraceCheckUtils]: 39: Hoare triple {1702#false} assume 0 == ~cond; {1702#false} is VALID [2022-04-08 06:07:34,877 INFO L290 TraceCheckUtils]: 40: Hoare triple {1702#false} assume !false; {1702#false} is VALID [2022-04-08 06:07:34,878 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 4 proven. 13 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:07:34,878 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:07:35,123 INFO L290 TraceCheckUtils]: 40: Hoare triple {1702#false} assume !false; {1702#false} is VALID [2022-04-08 06:07:35,123 INFO L290 TraceCheckUtils]: 39: Hoare triple {1702#false} assume 0 == ~cond; {1702#false} is VALID [2022-04-08 06:07:35,123 INFO L290 TraceCheckUtils]: 38: Hoare triple {1702#false} ~cond := #in~cond; {1702#false} is VALID [2022-04-08 06:07:35,124 INFO L272 TraceCheckUtils]: 37: Hoare triple {1702#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1702#false} is VALID [2022-04-08 06:07:35,124 INFO L290 TraceCheckUtils]: 36: Hoare triple {1842#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {1702#false} is VALID [2022-04-08 06:07:35,124 INFO L290 TraceCheckUtils]: 35: Hoare triple {1846#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1842#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:07:35,125 INFO L290 TraceCheckUtils]: 34: Hoare triple {1846#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1846#(< ~counter~0 20)} is VALID [2022-04-08 06:07:35,125 INFO L290 TraceCheckUtils]: 33: Hoare triple {1846#(< ~counter~0 20)} assume !!(0 != ~r~0); {1846#(< ~counter~0 20)} is VALID [2022-04-08 06:07:35,126 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1701#true} {1846#(< ~counter~0 20)} #63#return; {1846#(< ~counter~0 20)} is VALID [2022-04-08 06:07:35,126 INFO L290 TraceCheckUtils]: 31: Hoare triple {1701#true} assume true; {1701#true} is VALID [2022-04-08 06:07:35,126 INFO L290 TraceCheckUtils]: 30: Hoare triple {1701#true} assume !(0 == ~cond); {1701#true} is VALID [2022-04-08 06:07:35,126 INFO L290 TraceCheckUtils]: 29: Hoare triple {1701#true} ~cond := #in~cond; {1701#true} is VALID [2022-04-08 06:07:35,126 INFO L272 TraceCheckUtils]: 28: Hoare triple {1846#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1701#true} is VALID [2022-04-08 06:07:35,131 INFO L290 TraceCheckUtils]: 27: Hoare triple {1846#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {1846#(< ~counter~0 20)} is VALID [2022-04-08 06:07:35,132 INFO L290 TraceCheckUtils]: 26: Hoare triple {1874#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1846#(< ~counter~0 20)} is VALID [2022-04-08 06:07:35,132 INFO L290 TraceCheckUtils]: 25: Hoare triple {1874#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1874#(< ~counter~0 19)} is VALID [2022-04-08 06:07:35,132 INFO L290 TraceCheckUtils]: 24: Hoare triple {1874#(< ~counter~0 19)} assume !!(0 != ~r~0); {1874#(< ~counter~0 19)} is VALID [2022-04-08 06:07:35,133 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1701#true} {1874#(< ~counter~0 19)} #63#return; {1874#(< ~counter~0 19)} is VALID [2022-04-08 06:07:35,133 INFO L290 TraceCheckUtils]: 22: Hoare triple {1701#true} assume true; {1701#true} is VALID [2022-04-08 06:07:35,133 INFO L290 TraceCheckUtils]: 21: Hoare triple {1701#true} assume !(0 == ~cond); {1701#true} is VALID [2022-04-08 06:07:35,134 INFO L290 TraceCheckUtils]: 20: Hoare triple {1701#true} ~cond := #in~cond; {1701#true} is VALID [2022-04-08 06:07:35,134 INFO L272 TraceCheckUtils]: 19: Hoare triple {1874#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1701#true} is VALID [2022-04-08 06:07:35,134 INFO L290 TraceCheckUtils]: 18: Hoare triple {1874#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {1874#(< ~counter~0 19)} is VALID [2022-04-08 06:07:35,135 INFO L290 TraceCheckUtils]: 17: Hoare triple {1902#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1874#(< ~counter~0 19)} is VALID [2022-04-08 06:07:35,135 INFO L290 TraceCheckUtils]: 16: Hoare triple {1902#(< ~counter~0 18)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1902#(< ~counter~0 18)} is VALID [2022-04-08 06:07:35,135 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1701#true} {1902#(< ~counter~0 18)} #61#return; {1902#(< ~counter~0 18)} is VALID [2022-04-08 06:07:35,136 INFO L290 TraceCheckUtils]: 14: Hoare triple {1701#true} assume true; {1701#true} is VALID [2022-04-08 06:07:35,136 INFO L290 TraceCheckUtils]: 13: Hoare triple {1701#true} assume !(0 == ~cond); {1701#true} is VALID [2022-04-08 06:07:35,136 INFO L290 TraceCheckUtils]: 12: Hoare triple {1701#true} ~cond := #in~cond; {1701#true} is VALID [2022-04-08 06:07:35,136 INFO L272 TraceCheckUtils]: 11: Hoare triple {1902#(< ~counter~0 18)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {1701#true} is VALID [2022-04-08 06:07:35,136 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1701#true} {1902#(< ~counter~0 18)} #59#return; {1902#(< ~counter~0 18)} is VALID [2022-04-08 06:07:35,136 INFO L290 TraceCheckUtils]: 9: Hoare triple {1701#true} assume true; {1701#true} is VALID [2022-04-08 06:07:35,137 INFO L290 TraceCheckUtils]: 8: Hoare triple {1701#true} assume !(0 == ~cond); {1701#true} is VALID [2022-04-08 06:07:35,137 INFO L290 TraceCheckUtils]: 7: Hoare triple {1701#true} ~cond := #in~cond; {1701#true} is VALID [2022-04-08 06:07:35,137 INFO L272 TraceCheckUtils]: 6: Hoare triple {1902#(< ~counter~0 18)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1701#true} is VALID [2022-04-08 06:07:35,137 INFO L290 TraceCheckUtils]: 5: Hoare triple {1902#(< ~counter~0 18)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {1902#(< ~counter~0 18)} is VALID [2022-04-08 06:07:35,137 INFO L272 TraceCheckUtils]: 4: Hoare triple {1902#(< ~counter~0 18)} call #t~ret7 := main(); {1902#(< ~counter~0 18)} is VALID [2022-04-08 06:07:35,138 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1902#(< ~counter~0 18)} {1701#true} #67#return; {1902#(< ~counter~0 18)} is VALID [2022-04-08 06:07:35,138 INFO L290 TraceCheckUtils]: 2: Hoare triple {1902#(< ~counter~0 18)} assume true; {1902#(< ~counter~0 18)} is VALID [2022-04-08 06:07:35,139 INFO L290 TraceCheckUtils]: 1: Hoare triple {1701#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1902#(< ~counter~0 18)} is VALID [2022-04-08 06:07:35,139 INFO L272 TraceCheckUtils]: 0: Hoare triple {1701#true} call ULTIMATE.init(); {1701#true} is VALID [2022-04-08 06:07:35,139 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 4 proven. 9 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-08 06:07:35,139 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:35,139 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1073387880] [2022-04-08 06:07:35,139 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:35,140 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1416589500] [2022-04-08 06:07:35,140 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1416589500] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:07:35,140 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:07:35,140 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-08 06:07:35,140 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:35,140 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1197493156] [2022-04-08 06:07:35,140 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1197493156] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:35,140 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:35,140 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 06:07:35,140 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2116751099] [2022-04-08 06:07:35,140 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:35,141 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (7), 5 states have call predecessors, (7), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) Word has length 41 [2022-04-08 06:07:35,141 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:35,141 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (7), 5 states have call predecessors, (7), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 06:07:35,170 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-08 06:07:35,170 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 06:07:35,171 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:35,171 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 06:07:35,171 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 06:07:35,171 INFO L87 Difference]: Start difference. First operand 38 states and 41 transitions. Second operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (7), 5 states have call predecessors, (7), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 06:07:35,320 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:35,320 INFO L93 Difference]: Finished difference Result 52 states and 56 transitions. [2022-04-08 06:07:35,320 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 06:07:35,320 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (7), 5 states have call predecessors, (7), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) Word has length 41 [2022-04-08 06:07:35,321 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:07:35,321 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (7), 5 states have call predecessors, (7), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 06:07:35,322 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 55 transitions. [2022-04-08 06:07:35,323 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (7), 5 states have call predecessors, (7), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 06:07:35,324 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 55 transitions. [2022-04-08 06:07:35,324 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 55 transitions. [2022-04-08 06:07:35,375 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:35,376 INFO L225 Difference]: With dead ends: 52 [2022-04-08 06:07:35,376 INFO L226 Difference]: Without dead ends: 47 [2022-04-08 06:07:35,376 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 83 GetRequests, 73 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=51, Invalid=81, Unknown=0, NotChecked=0, Total=132 [2022-04-08 06:07:35,377 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 8 mSDsluCounter, 64 mSDsCounter, 0 mSdLazyCounter, 16 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 92 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 16 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:07:35,377 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 92 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 16 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:07:35,378 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2022-04-08 06:07:35,417 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 47. [2022-04-08 06:07:35,417 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:07:35,418 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand has 47 states, 33 states have (on average 1.121212121212121) internal successors, (37), 33 states have internal predecessors, (37), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 06:07:35,418 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand has 47 states, 33 states have (on average 1.121212121212121) internal successors, (37), 33 states have internal predecessors, (37), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 06:07:35,418 INFO L87 Difference]: Start difference. First operand 47 states. Second operand has 47 states, 33 states have (on average 1.121212121212121) internal successors, (37), 33 states have internal predecessors, (37), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 06:07:35,420 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:35,420 INFO L93 Difference]: Finished difference Result 47 states and 51 transitions. [2022-04-08 06:07:35,420 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 51 transitions. [2022-04-08 06:07:35,420 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:35,420 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:35,420 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 33 states have (on average 1.121212121212121) internal successors, (37), 33 states have internal predecessors, (37), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 47 states. [2022-04-08 06:07:35,421 INFO L87 Difference]: Start difference. First operand has 47 states, 33 states have (on average 1.121212121212121) internal successors, (37), 33 states have internal predecessors, (37), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 47 states. [2022-04-08 06:07:35,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:35,425 INFO L93 Difference]: Finished difference Result 47 states and 51 transitions. [2022-04-08 06:07:35,425 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 51 transitions. [2022-04-08 06:07:35,426 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:35,426 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:35,426 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:07:35,426 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:07:35,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 33 states have (on average 1.121212121212121) internal successors, (37), 33 states have internal predecessors, (37), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 06:07:35,428 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 51 transitions. [2022-04-08 06:07:35,428 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 51 transitions. Word has length 41 [2022-04-08 06:07:35,428 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:07:35,428 INFO L478 AbstractCegarLoop]: Abstraction has 47 states and 51 transitions. [2022-04-08 06:07:35,429 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (7), 5 states have call predecessors, (7), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 06:07:35,429 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 47 states and 51 transitions. [2022-04-08 06:07:37,495 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 50 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:37,495 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 51 transitions. [2022-04-08 06:07:37,495 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-08 06:07:37,496 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:37,496 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:07:37,517 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-08 06:07:37,707 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:37,707 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:37,708 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:37,708 INFO L85 PathProgramCache]: Analyzing trace with hash -678977956, now seen corresponding path program 5 times [2022-04-08 06:07:37,708 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:37,708 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1019626553] [2022-04-08 06:07:37,708 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:37,708 INFO L85 PathProgramCache]: Analyzing trace with hash -678977956, now seen corresponding path program 6 times [2022-04-08 06:07:37,718 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:37,718 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2018329556] [2022-04-08 06:07:37,718 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:37,718 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:37,735 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:37,735 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [940818501] [2022-04-08 06:07:37,735 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:07:37,735 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:37,736 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:37,736 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-08 06:07:37,772 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-08 06:07:37,811 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-08 06:07:37,811 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:37,812 INFO L263 TraceCheckSpWp]: Trace formula consists of 153 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 06:07:37,830 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:37,832 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:38,116 INFO L272 TraceCheckUtils]: 0: Hoare triple {2252#true} call ULTIMATE.init(); {2252#true} is VALID [2022-04-08 06:07:38,116 INFO L290 TraceCheckUtils]: 1: Hoare triple {2252#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,117 INFO L290 TraceCheckUtils]: 2: Hoare triple {2260#(<= ~counter~0 0)} assume true; {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,117 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2260#(<= ~counter~0 0)} {2252#true} #67#return; {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,117 INFO L272 TraceCheckUtils]: 4: Hoare triple {2260#(<= ~counter~0 0)} call #t~ret7 := main(); {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,118 INFO L290 TraceCheckUtils]: 5: Hoare triple {2260#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,118 INFO L272 TraceCheckUtils]: 6: Hoare triple {2260#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,119 INFO L290 TraceCheckUtils]: 7: Hoare triple {2260#(<= ~counter~0 0)} ~cond := #in~cond; {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,119 INFO L290 TraceCheckUtils]: 8: Hoare triple {2260#(<= ~counter~0 0)} assume !(0 == ~cond); {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,119 INFO L290 TraceCheckUtils]: 9: Hoare triple {2260#(<= ~counter~0 0)} assume true; {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,120 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2260#(<= ~counter~0 0)} {2260#(<= ~counter~0 0)} #59#return; {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,120 INFO L272 TraceCheckUtils]: 11: Hoare triple {2260#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,120 INFO L290 TraceCheckUtils]: 12: Hoare triple {2260#(<= ~counter~0 0)} ~cond := #in~cond; {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,121 INFO L290 TraceCheckUtils]: 13: Hoare triple {2260#(<= ~counter~0 0)} assume !(0 == ~cond); {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,121 INFO L290 TraceCheckUtils]: 14: Hoare triple {2260#(<= ~counter~0 0)} assume true; {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,122 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2260#(<= ~counter~0 0)} {2260#(<= ~counter~0 0)} #61#return; {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,122 INFO L290 TraceCheckUtils]: 16: Hoare triple {2260#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {2260#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:38,122 INFO L290 TraceCheckUtils]: 17: Hoare triple {2260#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2309#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:38,123 INFO L290 TraceCheckUtils]: 18: Hoare triple {2309#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {2309#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:38,123 INFO L272 TraceCheckUtils]: 19: Hoare triple {2309#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2309#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:38,124 INFO L290 TraceCheckUtils]: 20: Hoare triple {2309#(<= ~counter~0 1)} ~cond := #in~cond; {2309#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:38,124 INFO L290 TraceCheckUtils]: 21: Hoare triple {2309#(<= ~counter~0 1)} assume !(0 == ~cond); {2309#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:38,124 INFO L290 TraceCheckUtils]: 22: Hoare triple {2309#(<= ~counter~0 1)} assume true; {2309#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:38,125 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2309#(<= ~counter~0 1)} {2309#(<= ~counter~0 1)} #63#return; {2309#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:38,125 INFO L290 TraceCheckUtils]: 24: Hoare triple {2309#(<= ~counter~0 1)} assume !!(0 != ~r~0); {2309#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:38,126 INFO L290 TraceCheckUtils]: 25: Hoare triple {2309#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2309#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:38,126 INFO L290 TraceCheckUtils]: 26: Hoare triple {2309#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2337#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:38,126 INFO L290 TraceCheckUtils]: 27: Hoare triple {2337#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {2337#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:38,127 INFO L272 TraceCheckUtils]: 28: Hoare triple {2337#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2337#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:38,127 INFO L290 TraceCheckUtils]: 29: Hoare triple {2337#(<= ~counter~0 2)} ~cond := #in~cond; {2337#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:38,128 INFO L290 TraceCheckUtils]: 30: Hoare triple {2337#(<= ~counter~0 2)} assume !(0 == ~cond); {2337#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:38,128 INFO L290 TraceCheckUtils]: 31: Hoare triple {2337#(<= ~counter~0 2)} assume true; {2337#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:38,128 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2337#(<= ~counter~0 2)} {2337#(<= ~counter~0 2)} #63#return; {2337#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:38,129 INFO L290 TraceCheckUtils]: 33: Hoare triple {2337#(<= ~counter~0 2)} assume !!(0 != ~r~0); {2337#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:38,129 INFO L290 TraceCheckUtils]: 34: Hoare triple {2337#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2337#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:38,130 INFO L290 TraceCheckUtils]: 35: Hoare triple {2337#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2365#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:38,131 INFO L290 TraceCheckUtils]: 36: Hoare triple {2365#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {2365#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:38,132 INFO L272 TraceCheckUtils]: 37: Hoare triple {2365#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2365#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:38,132 INFO L290 TraceCheckUtils]: 38: Hoare triple {2365#(<= ~counter~0 3)} ~cond := #in~cond; {2365#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:38,132 INFO L290 TraceCheckUtils]: 39: Hoare triple {2365#(<= ~counter~0 3)} assume !(0 == ~cond); {2365#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:38,133 INFO L290 TraceCheckUtils]: 40: Hoare triple {2365#(<= ~counter~0 3)} assume true; {2365#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:38,133 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2365#(<= ~counter~0 3)} {2365#(<= ~counter~0 3)} #63#return; {2365#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:38,133 INFO L290 TraceCheckUtils]: 42: Hoare triple {2365#(<= ~counter~0 3)} assume !!(0 != ~r~0); {2365#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:38,134 INFO L290 TraceCheckUtils]: 43: Hoare triple {2365#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2365#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:38,134 INFO L290 TraceCheckUtils]: 44: Hoare triple {2365#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2393#(<= |main_#t~post6| 3)} is VALID [2022-04-08 06:07:38,135 INFO L290 TraceCheckUtils]: 45: Hoare triple {2393#(<= |main_#t~post6| 3)} assume !(#t~post6 < 20);havoc #t~post6; {2253#false} is VALID [2022-04-08 06:07:38,135 INFO L272 TraceCheckUtils]: 46: Hoare triple {2253#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2253#false} is VALID [2022-04-08 06:07:38,135 INFO L290 TraceCheckUtils]: 47: Hoare triple {2253#false} ~cond := #in~cond; {2253#false} is VALID [2022-04-08 06:07:38,135 INFO L290 TraceCheckUtils]: 48: Hoare triple {2253#false} assume 0 == ~cond; {2253#false} is VALID [2022-04-08 06:07:38,135 INFO L290 TraceCheckUtils]: 49: Hoare triple {2253#false} assume !false; {2253#false} is VALID [2022-04-08 06:07:38,135 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 6 proven. 33 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:07:38,136 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:07:38,401 INFO L290 TraceCheckUtils]: 49: Hoare triple {2253#false} assume !false; {2253#false} is VALID [2022-04-08 06:07:38,402 INFO L290 TraceCheckUtils]: 48: Hoare triple {2253#false} assume 0 == ~cond; {2253#false} is VALID [2022-04-08 06:07:38,402 INFO L290 TraceCheckUtils]: 47: Hoare triple {2253#false} ~cond := #in~cond; {2253#false} is VALID [2022-04-08 06:07:38,402 INFO L272 TraceCheckUtils]: 46: Hoare triple {2253#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2253#false} is VALID [2022-04-08 06:07:38,402 INFO L290 TraceCheckUtils]: 45: Hoare triple {2421#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {2253#false} is VALID [2022-04-08 06:07:38,403 INFO L290 TraceCheckUtils]: 44: Hoare triple {2425#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2421#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:07:38,403 INFO L290 TraceCheckUtils]: 43: Hoare triple {2425#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2425#(< ~counter~0 20)} is VALID [2022-04-08 06:07:38,403 INFO L290 TraceCheckUtils]: 42: Hoare triple {2425#(< ~counter~0 20)} assume !!(0 != ~r~0); {2425#(< ~counter~0 20)} is VALID [2022-04-08 06:07:38,404 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2252#true} {2425#(< ~counter~0 20)} #63#return; {2425#(< ~counter~0 20)} is VALID [2022-04-08 06:07:38,404 INFO L290 TraceCheckUtils]: 40: Hoare triple {2252#true} assume true; {2252#true} is VALID [2022-04-08 06:07:38,404 INFO L290 TraceCheckUtils]: 39: Hoare triple {2252#true} assume !(0 == ~cond); {2252#true} is VALID [2022-04-08 06:07:38,404 INFO L290 TraceCheckUtils]: 38: Hoare triple {2252#true} ~cond := #in~cond; {2252#true} is VALID [2022-04-08 06:07:38,405 INFO L272 TraceCheckUtils]: 37: Hoare triple {2425#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2252#true} is VALID [2022-04-08 06:07:38,407 INFO L290 TraceCheckUtils]: 36: Hoare triple {2425#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {2425#(< ~counter~0 20)} is VALID [2022-04-08 06:07:38,407 INFO L290 TraceCheckUtils]: 35: Hoare triple {2453#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2425#(< ~counter~0 20)} is VALID [2022-04-08 06:07:38,408 INFO L290 TraceCheckUtils]: 34: Hoare triple {2453#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2453#(< ~counter~0 19)} is VALID [2022-04-08 06:07:38,408 INFO L290 TraceCheckUtils]: 33: Hoare triple {2453#(< ~counter~0 19)} assume !!(0 != ~r~0); {2453#(< ~counter~0 19)} is VALID [2022-04-08 06:07:38,409 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2252#true} {2453#(< ~counter~0 19)} #63#return; {2453#(< ~counter~0 19)} is VALID [2022-04-08 06:07:38,409 INFO L290 TraceCheckUtils]: 31: Hoare triple {2252#true} assume true; {2252#true} is VALID [2022-04-08 06:07:38,409 INFO L290 TraceCheckUtils]: 30: Hoare triple {2252#true} assume !(0 == ~cond); {2252#true} is VALID [2022-04-08 06:07:38,409 INFO L290 TraceCheckUtils]: 29: Hoare triple {2252#true} ~cond := #in~cond; {2252#true} is VALID [2022-04-08 06:07:38,409 INFO L272 TraceCheckUtils]: 28: Hoare triple {2453#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2252#true} is VALID [2022-04-08 06:07:38,409 INFO L290 TraceCheckUtils]: 27: Hoare triple {2453#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {2453#(< ~counter~0 19)} is VALID [2022-04-08 06:07:38,410 INFO L290 TraceCheckUtils]: 26: Hoare triple {2481#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2453#(< ~counter~0 19)} is VALID [2022-04-08 06:07:38,410 INFO L290 TraceCheckUtils]: 25: Hoare triple {2481#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2481#(< ~counter~0 18)} is VALID [2022-04-08 06:07:38,411 INFO L290 TraceCheckUtils]: 24: Hoare triple {2481#(< ~counter~0 18)} assume !!(0 != ~r~0); {2481#(< ~counter~0 18)} is VALID [2022-04-08 06:07:38,413 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2252#true} {2481#(< ~counter~0 18)} #63#return; {2481#(< ~counter~0 18)} is VALID [2022-04-08 06:07:38,413 INFO L290 TraceCheckUtils]: 22: Hoare triple {2252#true} assume true; {2252#true} is VALID [2022-04-08 06:07:38,413 INFO L290 TraceCheckUtils]: 21: Hoare triple {2252#true} assume !(0 == ~cond); {2252#true} is VALID [2022-04-08 06:07:38,413 INFO L290 TraceCheckUtils]: 20: Hoare triple {2252#true} ~cond := #in~cond; {2252#true} is VALID [2022-04-08 06:07:38,413 INFO L272 TraceCheckUtils]: 19: Hoare triple {2481#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2252#true} is VALID [2022-04-08 06:07:38,414 INFO L290 TraceCheckUtils]: 18: Hoare triple {2481#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {2481#(< ~counter~0 18)} is VALID [2022-04-08 06:07:38,414 INFO L290 TraceCheckUtils]: 17: Hoare triple {2509#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2481#(< ~counter~0 18)} is VALID [2022-04-08 06:07:38,414 INFO L290 TraceCheckUtils]: 16: Hoare triple {2509#(< ~counter~0 17)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {2509#(< ~counter~0 17)} is VALID [2022-04-08 06:07:38,415 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2252#true} {2509#(< ~counter~0 17)} #61#return; {2509#(< ~counter~0 17)} is VALID [2022-04-08 06:07:38,415 INFO L290 TraceCheckUtils]: 14: Hoare triple {2252#true} assume true; {2252#true} is VALID [2022-04-08 06:07:38,415 INFO L290 TraceCheckUtils]: 13: Hoare triple {2252#true} assume !(0 == ~cond); {2252#true} is VALID [2022-04-08 06:07:38,415 INFO L290 TraceCheckUtils]: 12: Hoare triple {2252#true} ~cond := #in~cond; {2252#true} is VALID [2022-04-08 06:07:38,415 INFO L272 TraceCheckUtils]: 11: Hoare triple {2509#(< ~counter~0 17)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {2252#true} is VALID [2022-04-08 06:07:38,416 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2252#true} {2509#(< ~counter~0 17)} #59#return; {2509#(< ~counter~0 17)} is VALID [2022-04-08 06:07:38,416 INFO L290 TraceCheckUtils]: 9: Hoare triple {2252#true} assume true; {2252#true} is VALID [2022-04-08 06:07:38,416 INFO L290 TraceCheckUtils]: 8: Hoare triple {2252#true} assume !(0 == ~cond); {2252#true} is VALID [2022-04-08 06:07:38,416 INFO L290 TraceCheckUtils]: 7: Hoare triple {2252#true} ~cond := #in~cond; {2252#true} is VALID [2022-04-08 06:07:38,416 INFO L272 TraceCheckUtils]: 6: Hoare triple {2509#(< ~counter~0 17)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2252#true} is VALID [2022-04-08 06:07:38,417 INFO L290 TraceCheckUtils]: 5: Hoare triple {2509#(< ~counter~0 17)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {2509#(< ~counter~0 17)} is VALID [2022-04-08 06:07:38,417 INFO L272 TraceCheckUtils]: 4: Hoare triple {2509#(< ~counter~0 17)} call #t~ret7 := main(); {2509#(< ~counter~0 17)} is VALID [2022-04-08 06:07:38,418 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2509#(< ~counter~0 17)} {2252#true} #67#return; {2509#(< ~counter~0 17)} is VALID [2022-04-08 06:07:38,418 INFO L290 TraceCheckUtils]: 2: Hoare triple {2509#(< ~counter~0 17)} assume true; {2509#(< ~counter~0 17)} is VALID [2022-04-08 06:07:38,419 INFO L290 TraceCheckUtils]: 1: Hoare triple {2252#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2509#(< ~counter~0 17)} is VALID [2022-04-08 06:07:38,419 INFO L272 TraceCheckUtils]: 0: Hoare triple {2252#true} call ULTIMATE.init(); {2252#true} is VALID [2022-04-08 06:07:38,419 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 6 proven. 21 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 06:07:38,419 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:38,419 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2018329556] [2022-04-08 06:07:38,419 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:38,419 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [940818501] [2022-04-08 06:07:38,419 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [940818501] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:07:38,420 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:07:38,420 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-08 06:07:38,420 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:38,420 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1019626553] [2022-04-08 06:07:38,420 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1019626553] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:38,420 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:38,420 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 06:07:38,420 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1342065318] [2022-04-08 06:07:38,420 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:38,421 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) Word has length 50 [2022-04-08 06:07:38,421 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:38,421 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-08 06:07:38,462 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-08 06:07:38,462 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 06:07:38,462 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:38,463 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 06:07:38,463 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-08 06:07:38,464 INFO L87 Difference]: Start difference. First operand 47 states and 51 transitions. Second operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-08 06:07:38,655 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:38,655 INFO L93 Difference]: Finished difference Result 61 states and 66 transitions. [2022-04-08 06:07:38,655 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 06:07:38,656 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) Word has length 50 [2022-04-08 06:07:38,656 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:07:38,656 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-08 06:07:38,660 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 65 transitions. [2022-04-08 06:07:38,661 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-08 06:07:38,663 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 65 transitions. [2022-04-08 06:07:38,664 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 65 transitions. [2022-04-08 06:07:38,710 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:38,713 INFO L225 Difference]: With dead ends: 61 [2022-04-08 06:07:38,713 INFO L226 Difference]: Without dead ends: 56 [2022-04-08 06:07:38,713 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 102 GetRequests, 89 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=83, Invalid=127, Unknown=0, NotChecked=0, Total=210 [2022-04-08 06:07:38,714 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 9 mSDsluCounter, 77 mSDsCounter, 0 mSdLazyCounter, 22 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 106 SdHoareTripleChecker+Invalid, 29 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 22 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:07:38,714 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 106 Invalid, 29 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 22 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:07:38,716 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-04-08 06:07:38,774 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 56. [2022-04-08 06:07:38,774 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:07:38,775 INFO L82 GeneralOperation]: Start isEquivalent. First operand 56 states. Second operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 06:07:38,777 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 06:07:38,777 INFO L87 Difference]: Start difference. First operand 56 states. Second operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 06:07:38,779 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:38,779 INFO L93 Difference]: Finished difference Result 56 states and 61 transitions. [2022-04-08 06:07:38,779 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 61 transitions. [2022-04-08 06:07:38,779 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:38,780 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:38,781 INFO L74 IsIncluded]: Start isIncluded. First operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 56 states. [2022-04-08 06:07:38,781 INFO L87 Difference]: Start difference. First operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 56 states. [2022-04-08 06:07:38,783 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:38,783 INFO L93 Difference]: Finished difference Result 56 states and 61 transitions. [2022-04-08 06:07:38,783 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 61 transitions. [2022-04-08 06:07:38,783 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:38,783 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:38,783 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:07:38,783 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:07:38,784 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-08 06:07:38,785 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 61 transitions. [2022-04-08 06:07:38,785 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 61 transitions. Word has length 50 [2022-04-08 06:07:38,787 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:07:38,787 INFO L478 AbstractCegarLoop]: Abstraction has 56 states and 61 transitions. [2022-04-08 06:07:38,787 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-08 06:07:38,787 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 56 states and 61 transitions. [2022-04-08 06:07:39,700 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:39,700 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 61 transitions. [2022-04-08 06:07:39,701 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-04-08 06:07:39,701 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:39,701 INFO L499 BasicCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 4, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:07:39,717 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-08 06:07:39,903 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:39,904 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:39,904 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:39,904 INFO L85 PathProgramCache]: Analyzing trace with hash 1632159894, now seen corresponding path program 7 times [2022-04-08 06:07:39,904 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:39,904 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1028950898] [2022-04-08 06:07:39,905 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:39,905 INFO L85 PathProgramCache]: Analyzing trace with hash 1632159894, now seen corresponding path program 8 times [2022-04-08 06:07:39,905 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:39,905 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1806053917] [2022-04-08 06:07:39,905 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:39,905 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:39,936 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:39,937 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1507458510] [2022-04-08 06:07:39,937 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:07:39,937 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:39,937 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:39,939 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-08 06:07:39,959 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-08 06:07:40,003 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:07:40,003 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:40,004 INFO L263 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 06:07:40,018 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:40,023 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:40,365 INFO L272 TraceCheckUtils]: 0: Hoare triple {2915#true} call ULTIMATE.init(); {2915#true} is VALID [2022-04-08 06:07:40,366 INFO L290 TraceCheckUtils]: 1: Hoare triple {2915#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,367 INFO L290 TraceCheckUtils]: 2: Hoare triple {2923#(<= ~counter~0 0)} assume true; {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,367 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2923#(<= ~counter~0 0)} {2915#true} #67#return; {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,368 INFO L272 TraceCheckUtils]: 4: Hoare triple {2923#(<= ~counter~0 0)} call #t~ret7 := main(); {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,368 INFO L290 TraceCheckUtils]: 5: Hoare triple {2923#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,369 INFO L272 TraceCheckUtils]: 6: Hoare triple {2923#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,369 INFO L290 TraceCheckUtils]: 7: Hoare triple {2923#(<= ~counter~0 0)} ~cond := #in~cond; {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,369 INFO L290 TraceCheckUtils]: 8: Hoare triple {2923#(<= ~counter~0 0)} assume !(0 == ~cond); {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,370 INFO L290 TraceCheckUtils]: 9: Hoare triple {2923#(<= ~counter~0 0)} assume true; {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,370 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2923#(<= ~counter~0 0)} {2923#(<= ~counter~0 0)} #59#return; {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,371 INFO L272 TraceCheckUtils]: 11: Hoare triple {2923#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,371 INFO L290 TraceCheckUtils]: 12: Hoare triple {2923#(<= ~counter~0 0)} ~cond := #in~cond; {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,372 INFO L290 TraceCheckUtils]: 13: Hoare triple {2923#(<= ~counter~0 0)} assume !(0 == ~cond); {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,372 INFO L290 TraceCheckUtils]: 14: Hoare triple {2923#(<= ~counter~0 0)} assume true; {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,373 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2923#(<= ~counter~0 0)} {2923#(<= ~counter~0 0)} #61#return; {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,373 INFO L290 TraceCheckUtils]: 16: Hoare triple {2923#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {2923#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:40,374 INFO L290 TraceCheckUtils]: 17: Hoare triple {2923#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2972#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:40,374 INFO L290 TraceCheckUtils]: 18: Hoare triple {2972#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {2972#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:40,375 INFO L272 TraceCheckUtils]: 19: Hoare triple {2972#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2972#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:40,376 INFO L290 TraceCheckUtils]: 20: Hoare triple {2972#(<= ~counter~0 1)} ~cond := #in~cond; {2972#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:40,376 INFO L290 TraceCheckUtils]: 21: Hoare triple {2972#(<= ~counter~0 1)} assume !(0 == ~cond); {2972#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:40,377 INFO L290 TraceCheckUtils]: 22: Hoare triple {2972#(<= ~counter~0 1)} assume true; {2972#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:40,377 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2972#(<= ~counter~0 1)} {2972#(<= ~counter~0 1)} #63#return; {2972#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:40,378 INFO L290 TraceCheckUtils]: 24: Hoare triple {2972#(<= ~counter~0 1)} assume !!(0 != ~r~0); {2972#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:40,378 INFO L290 TraceCheckUtils]: 25: Hoare triple {2972#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2972#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:40,379 INFO L290 TraceCheckUtils]: 26: Hoare triple {2972#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3000#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:40,379 INFO L290 TraceCheckUtils]: 27: Hoare triple {3000#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {3000#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:40,380 INFO L272 TraceCheckUtils]: 28: Hoare triple {3000#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3000#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:40,380 INFO L290 TraceCheckUtils]: 29: Hoare triple {3000#(<= ~counter~0 2)} ~cond := #in~cond; {3000#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:40,381 INFO L290 TraceCheckUtils]: 30: Hoare triple {3000#(<= ~counter~0 2)} assume !(0 == ~cond); {3000#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:40,381 INFO L290 TraceCheckUtils]: 31: Hoare triple {3000#(<= ~counter~0 2)} assume true; {3000#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:40,382 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3000#(<= ~counter~0 2)} {3000#(<= ~counter~0 2)} #63#return; {3000#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:40,382 INFO L290 TraceCheckUtils]: 33: Hoare triple {3000#(<= ~counter~0 2)} assume !!(0 != ~r~0); {3000#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:40,383 INFO L290 TraceCheckUtils]: 34: Hoare triple {3000#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3000#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:40,383 INFO L290 TraceCheckUtils]: 35: Hoare triple {3000#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3028#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:40,384 INFO L290 TraceCheckUtils]: 36: Hoare triple {3028#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {3028#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:40,385 INFO L272 TraceCheckUtils]: 37: Hoare triple {3028#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3028#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:40,385 INFO L290 TraceCheckUtils]: 38: Hoare triple {3028#(<= ~counter~0 3)} ~cond := #in~cond; {3028#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:40,385 INFO L290 TraceCheckUtils]: 39: Hoare triple {3028#(<= ~counter~0 3)} assume !(0 == ~cond); {3028#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:40,386 INFO L290 TraceCheckUtils]: 40: Hoare triple {3028#(<= ~counter~0 3)} assume true; {3028#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:40,386 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3028#(<= ~counter~0 3)} {3028#(<= ~counter~0 3)} #63#return; {3028#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:40,387 INFO L290 TraceCheckUtils]: 42: Hoare triple {3028#(<= ~counter~0 3)} assume !!(0 != ~r~0); {3028#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:40,387 INFO L290 TraceCheckUtils]: 43: Hoare triple {3028#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3028#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:40,388 INFO L290 TraceCheckUtils]: 44: Hoare triple {3028#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3056#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:40,388 INFO L290 TraceCheckUtils]: 45: Hoare triple {3056#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {3056#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:40,389 INFO L272 TraceCheckUtils]: 46: Hoare triple {3056#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3056#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:40,389 INFO L290 TraceCheckUtils]: 47: Hoare triple {3056#(<= ~counter~0 4)} ~cond := #in~cond; {3056#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:40,390 INFO L290 TraceCheckUtils]: 48: Hoare triple {3056#(<= ~counter~0 4)} assume !(0 == ~cond); {3056#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:40,390 INFO L290 TraceCheckUtils]: 49: Hoare triple {3056#(<= ~counter~0 4)} assume true; {3056#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:40,391 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3056#(<= ~counter~0 4)} {3056#(<= ~counter~0 4)} #63#return; {3056#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:40,391 INFO L290 TraceCheckUtils]: 51: Hoare triple {3056#(<= ~counter~0 4)} assume !!(0 != ~r~0); {3056#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:40,391 INFO L290 TraceCheckUtils]: 52: Hoare triple {3056#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3056#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:40,392 INFO L290 TraceCheckUtils]: 53: Hoare triple {3056#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3084#(<= |main_#t~post6| 4)} is VALID [2022-04-08 06:07:40,392 INFO L290 TraceCheckUtils]: 54: Hoare triple {3084#(<= |main_#t~post6| 4)} assume !(#t~post6 < 20);havoc #t~post6; {2916#false} is VALID [2022-04-08 06:07:40,392 INFO L272 TraceCheckUtils]: 55: Hoare triple {2916#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2916#false} is VALID [2022-04-08 06:07:40,392 INFO L290 TraceCheckUtils]: 56: Hoare triple {2916#false} ~cond := #in~cond; {2916#false} is VALID [2022-04-08 06:07:40,392 INFO L290 TraceCheckUtils]: 57: Hoare triple {2916#false} assume 0 == ~cond; {2916#false} is VALID [2022-04-08 06:07:40,393 INFO L290 TraceCheckUtils]: 58: Hoare triple {2916#false} assume !false; {2916#false} is VALID [2022-04-08 06:07:40,393 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 8 proven. 62 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:07:40,393 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:07:40,760 INFO L290 TraceCheckUtils]: 58: Hoare triple {2916#false} assume !false; {2916#false} is VALID [2022-04-08 06:07:40,760 INFO L290 TraceCheckUtils]: 57: Hoare triple {2916#false} assume 0 == ~cond; {2916#false} is VALID [2022-04-08 06:07:40,760 INFO L290 TraceCheckUtils]: 56: Hoare triple {2916#false} ~cond := #in~cond; {2916#false} is VALID [2022-04-08 06:07:40,760 INFO L272 TraceCheckUtils]: 55: Hoare triple {2916#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2916#false} is VALID [2022-04-08 06:07:40,760 INFO L290 TraceCheckUtils]: 54: Hoare triple {3112#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {2916#false} is VALID [2022-04-08 06:07:40,761 INFO L290 TraceCheckUtils]: 53: Hoare triple {3116#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3112#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:07:40,761 INFO L290 TraceCheckUtils]: 52: Hoare triple {3116#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3116#(< ~counter~0 20)} is VALID [2022-04-08 06:07:40,761 INFO L290 TraceCheckUtils]: 51: Hoare triple {3116#(< ~counter~0 20)} assume !!(0 != ~r~0); {3116#(< ~counter~0 20)} is VALID [2022-04-08 06:07:40,762 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2915#true} {3116#(< ~counter~0 20)} #63#return; {3116#(< ~counter~0 20)} is VALID [2022-04-08 06:07:40,762 INFO L290 TraceCheckUtils]: 49: Hoare triple {2915#true} assume true; {2915#true} is VALID [2022-04-08 06:07:40,762 INFO L290 TraceCheckUtils]: 48: Hoare triple {2915#true} assume !(0 == ~cond); {2915#true} is VALID [2022-04-08 06:07:40,762 INFO L290 TraceCheckUtils]: 47: Hoare triple {2915#true} ~cond := #in~cond; {2915#true} is VALID [2022-04-08 06:07:40,762 INFO L272 TraceCheckUtils]: 46: Hoare triple {3116#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2915#true} is VALID [2022-04-08 06:07:40,762 INFO L290 TraceCheckUtils]: 45: Hoare triple {3116#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {3116#(< ~counter~0 20)} is VALID [2022-04-08 06:07:40,763 INFO L290 TraceCheckUtils]: 44: Hoare triple {3144#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3116#(< ~counter~0 20)} is VALID [2022-04-08 06:07:40,763 INFO L290 TraceCheckUtils]: 43: Hoare triple {3144#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3144#(< ~counter~0 19)} is VALID [2022-04-08 06:07:40,763 INFO L290 TraceCheckUtils]: 42: Hoare triple {3144#(< ~counter~0 19)} assume !!(0 != ~r~0); {3144#(< ~counter~0 19)} is VALID [2022-04-08 06:07:40,764 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2915#true} {3144#(< ~counter~0 19)} #63#return; {3144#(< ~counter~0 19)} is VALID [2022-04-08 06:07:40,764 INFO L290 TraceCheckUtils]: 40: Hoare triple {2915#true} assume true; {2915#true} is VALID [2022-04-08 06:07:40,764 INFO L290 TraceCheckUtils]: 39: Hoare triple {2915#true} assume !(0 == ~cond); {2915#true} is VALID [2022-04-08 06:07:40,764 INFO L290 TraceCheckUtils]: 38: Hoare triple {2915#true} ~cond := #in~cond; {2915#true} is VALID [2022-04-08 06:07:40,764 INFO L272 TraceCheckUtils]: 37: Hoare triple {3144#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2915#true} is VALID [2022-04-08 06:07:40,764 INFO L290 TraceCheckUtils]: 36: Hoare triple {3144#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {3144#(< ~counter~0 19)} is VALID [2022-04-08 06:07:40,765 INFO L290 TraceCheckUtils]: 35: Hoare triple {3172#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3144#(< ~counter~0 19)} is VALID [2022-04-08 06:07:40,765 INFO L290 TraceCheckUtils]: 34: Hoare triple {3172#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3172#(< ~counter~0 18)} is VALID [2022-04-08 06:07:40,765 INFO L290 TraceCheckUtils]: 33: Hoare triple {3172#(< ~counter~0 18)} assume !!(0 != ~r~0); {3172#(< ~counter~0 18)} is VALID [2022-04-08 06:07:40,766 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2915#true} {3172#(< ~counter~0 18)} #63#return; {3172#(< ~counter~0 18)} is VALID [2022-04-08 06:07:40,766 INFO L290 TraceCheckUtils]: 31: Hoare triple {2915#true} assume true; {2915#true} is VALID [2022-04-08 06:07:40,766 INFO L290 TraceCheckUtils]: 30: Hoare triple {2915#true} assume !(0 == ~cond); {2915#true} is VALID [2022-04-08 06:07:40,766 INFO L290 TraceCheckUtils]: 29: Hoare triple {2915#true} ~cond := #in~cond; {2915#true} is VALID [2022-04-08 06:07:40,766 INFO L272 TraceCheckUtils]: 28: Hoare triple {3172#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2915#true} is VALID [2022-04-08 06:07:40,766 INFO L290 TraceCheckUtils]: 27: Hoare triple {3172#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {3172#(< ~counter~0 18)} is VALID [2022-04-08 06:07:40,767 INFO L290 TraceCheckUtils]: 26: Hoare triple {3200#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3172#(< ~counter~0 18)} is VALID [2022-04-08 06:07:40,767 INFO L290 TraceCheckUtils]: 25: Hoare triple {3200#(< ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3200#(< ~counter~0 17)} is VALID [2022-04-08 06:07:40,767 INFO L290 TraceCheckUtils]: 24: Hoare triple {3200#(< ~counter~0 17)} assume !!(0 != ~r~0); {3200#(< ~counter~0 17)} is VALID [2022-04-08 06:07:40,768 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2915#true} {3200#(< ~counter~0 17)} #63#return; {3200#(< ~counter~0 17)} is VALID [2022-04-08 06:07:40,768 INFO L290 TraceCheckUtils]: 22: Hoare triple {2915#true} assume true; {2915#true} is VALID [2022-04-08 06:07:40,768 INFO L290 TraceCheckUtils]: 21: Hoare triple {2915#true} assume !(0 == ~cond); {2915#true} is VALID [2022-04-08 06:07:40,768 INFO L290 TraceCheckUtils]: 20: Hoare triple {2915#true} ~cond := #in~cond; {2915#true} is VALID [2022-04-08 06:07:40,768 INFO L272 TraceCheckUtils]: 19: Hoare triple {3200#(< ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2915#true} is VALID [2022-04-08 06:07:40,769 INFO L290 TraceCheckUtils]: 18: Hoare triple {3200#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {3200#(< ~counter~0 17)} is VALID [2022-04-08 06:07:40,770 INFO L290 TraceCheckUtils]: 17: Hoare triple {3228#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3200#(< ~counter~0 17)} is VALID [2022-04-08 06:07:40,770 INFO L290 TraceCheckUtils]: 16: Hoare triple {3228#(< ~counter~0 16)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {3228#(< ~counter~0 16)} is VALID [2022-04-08 06:07:40,770 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2915#true} {3228#(< ~counter~0 16)} #61#return; {3228#(< ~counter~0 16)} is VALID [2022-04-08 06:07:40,770 INFO L290 TraceCheckUtils]: 14: Hoare triple {2915#true} assume true; {2915#true} is VALID [2022-04-08 06:07:40,771 INFO L290 TraceCheckUtils]: 13: Hoare triple {2915#true} assume !(0 == ~cond); {2915#true} is VALID [2022-04-08 06:07:40,771 INFO L290 TraceCheckUtils]: 12: Hoare triple {2915#true} ~cond := #in~cond; {2915#true} is VALID [2022-04-08 06:07:40,771 INFO L272 TraceCheckUtils]: 11: Hoare triple {3228#(< ~counter~0 16)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {2915#true} is VALID [2022-04-08 06:07:40,771 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2915#true} {3228#(< ~counter~0 16)} #59#return; {3228#(< ~counter~0 16)} is VALID [2022-04-08 06:07:40,771 INFO L290 TraceCheckUtils]: 9: Hoare triple {2915#true} assume true; {2915#true} is VALID [2022-04-08 06:07:40,771 INFO L290 TraceCheckUtils]: 8: Hoare triple {2915#true} assume !(0 == ~cond); {2915#true} is VALID [2022-04-08 06:07:40,771 INFO L290 TraceCheckUtils]: 7: Hoare triple {2915#true} ~cond := #in~cond; {2915#true} is VALID [2022-04-08 06:07:40,771 INFO L272 TraceCheckUtils]: 6: Hoare triple {3228#(< ~counter~0 16)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2915#true} is VALID [2022-04-08 06:07:40,772 INFO L290 TraceCheckUtils]: 5: Hoare triple {3228#(< ~counter~0 16)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {3228#(< ~counter~0 16)} is VALID [2022-04-08 06:07:40,772 INFO L272 TraceCheckUtils]: 4: Hoare triple {3228#(< ~counter~0 16)} call #t~ret7 := main(); {3228#(< ~counter~0 16)} is VALID [2022-04-08 06:07:40,772 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3228#(< ~counter~0 16)} {2915#true} #67#return; {3228#(< ~counter~0 16)} is VALID [2022-04-08 06:07:40,772 INFO L290 TraceCheckUtils]: 2: Hoare triple {3228#(< ~counter~0 16)} assume true; {3228#(< ~counter~0 16)} is VALID [2022-04-08 06:07:40,773 INFO L290 TraceCheckUtils]: 1: Hoare triple {2915#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3228#(< ~counter~0 16)} is VALID [2022-04-08 06:07:40,773 INFO L272 TraceCheckUtils]: 0: Hoare triple {2915#true} call ULTIMATE.init(); {2915#true} is VALID [2022-04-08 06:07:40,773 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 8 proven. 38 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 06:07:40,773 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:40,773 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1806053917] [2022-04-08 06:07:40,773 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:40,774 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1507458510] [2022-04-08 06:07:40,774 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1507458510] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:07:40,774 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:07:40,774 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-08 06:07:40,774 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:40,774 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1028950898] [2022-04-08 06:07:40,774 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1028950898] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:40,774 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:40,774 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 06:07:40,774 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [894868894] [2022-04-08 06:07:40,774 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:40,775 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), 7 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 6 states have call successors, (7) Word has length 59 [2022-04-08 06:07:40,775 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:40,775 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), 7 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-08 06:07:40,816 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-08 06:07:40,816 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 06:07:40,816 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:40,816 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 06:07:40,817 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 06:07:40,817 INFO L87 Difference]: Start difference. First operand 56 states and 61 transitions. Second operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-08 06:07:41,054 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:41,054 INFO L93 Difference]: Finished difference Result 70 states and 76 transitions. [2022-04-08 06:07:41,054 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 06:07:41,054 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), 7 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 6 states have call successors, (7) Word has length 59 [2022-04-08 06:07:41,055 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:07:41,055 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), 7 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-08 06:07:41,057 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 75 transitions. [2022-04-08 06:07:41,057 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), 7 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-08 06:07:41,059 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 75 transitions. [2022-04-08 06:07:41,059 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 75 transitions. [2022-04-08 06:07:41,120 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-08 06:07:41,122 INFO L225 Difference]: With dead ends: 70 [2022-04-08 06:07:41,122 INFO L226 Difference]: Without dead ends: 65 [2022-04-08 06:07:41,122 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 121 GetRequests, 105 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=123, Invalid=183, Unknown=0, NotChecked=0, Total=306 [2022-04-08 06:07:41,123 INFO L913 BasicCegarLoop]: 30 mSDtfsCounter, 25 mSDsluCounter, 78 mSDsCounter, 0 mSdLazyCounter, 26 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 25 SdHoareTripleChecker+Valid, 108 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 26 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:07:41,123 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [25 Valid, 108 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 26 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:07:41,123 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2022-04-08 06:07:41,184 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 65. [2022-04-08 06:07:41,184 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:07:41,184 INFO L82 GeneralOperation]: Start isEquivalent. First operand 65 states. Second operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 06:07:41,184 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 06:07:41,184 INFO L87 Difference]: Start difference. First operand 65 states. Second operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 06:07:41,187 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:41,187 INFO L93 Difference]: Finished difference Result 65 states and 71 transitions. [2022-04-08 06:07:41,187 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 71 transitions. [2022-04-08 06:07:41,187 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:41,187 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:41,188 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-08 06:07:41,195 INFO L87 Difference]: Start difference. First operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-08 06:07:41,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:41,198 INFO L93 Difference]: Finished difference Result 65 states and 71 transitions. [2022-04-08 06:07:41,198 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 71 transitions. [2022-04-08 06:07:41,198 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:41,198 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:41,198 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:07:41,198 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:07:41,199 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 06:07:41,202 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 71 transitions. [2022-04-08 06:07:41,202 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 71 transitions. Word has length 59 [2022-04-08 06:07:41,202 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:07:41,202 INFO L478 AbstractCegarLoop]: Abstraction has 65 states and 71 transitions. [2022-04-08 06:07:41,204 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-08 06:07:41,204 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 65 states and 71 transitions. [2022-04-08 06:07:41,709 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:41,709 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 71 transitions. [2022-04-08 06:07:41,710 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2022-04-08 06:07:41,710 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:41,710 INFO L499 BasicCegarLoop]: trace histogram [6, 6, 5, 5, 5, 5, 5, 5, 5, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:07:41,734 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-08 06:07:41,910 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable7 [2022-04-08 06:07:41,911 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:41,911 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:41,911 INFO L85 PathProgramCache]: Analyzing trace with hash -1512407140, now seen corresponding path program 9 times [2022-04-08 06:07:41,911 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:41,911 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1667561607] [2022-04-08 06:07:41,911 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:41,912 INFO L85 PathProgramCache]: Analyzing trace with hash -1512407140, now seen corresponding path program 10 times [2022-04-08 06:07:41,912 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:41,912 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [365144173] [2022-04-08 06:07:41,912 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:41,912 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:41,932 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:41,932 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [700982620] [2022-04-08 06:07:41,932 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:07:41,932 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:41,932 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:41,934 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-08 06:07:41,935 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-08 06:07:42,093 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:07:42,093 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:42,094 INFO L263 TraceCheckSpWp]: Trace formula consists of 193 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 06:07:42,107 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:42,108 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:42,473 INFO L272 TraceCheckUtils]: 0: Hoare triple {3690#true} call ULTIMATE.init(); {3690#true} is VALID [2022-04-08 06:07:42,473 INFO L290 TraceCheckUtils]: 1: Hoare triple {3690#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,474 INFO L290 TraceCheckUtils]: 2: Hoare triple {3698#(<= ~counter~0 0)} assume true; {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,474 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3698#(<= ~counter~0 0)} {3690#true} #67#return; {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,474 INFO L272 TraceCheckUtils]: 4: Hoare triple {3698#(<= ~counter~0 0)} call #t~ret7 := main(); {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,475 INFO L290 TraceCheckUtils]: 5: Hoare triple {3698#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,475 INFO L272 TraceCheckUtils]: 6: Hoare triple {3698#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,475 INFO L290 TraceCheckUtils]: 7: Hoare triple {3698#(<= ~counter~0 0)} ~cond := #in~cond; {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,476 INFO L290 TraceCheckUtils]: 8: Hoare triple {3698#(<= ~counter~0 0)} assume !(0 == ~cond); {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,476 INFO L290 TraceCheckUtils]: 9: Hoare triple {3698#(<= ~counter~0 0)} assume true; {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,476 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3698#(<= ~counter~0 0)} {3698#(<= ~counter~0 0)} #59#return; {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,477 INFO L272 TraceCheckUtils]: 11: Hoare triple {3698#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,477 INFO L290 TraceCheckUtils]: 12: Hoare triple {3698#(<= ~counter~0 0)} ~cond := #in~cond; {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,478 INFO L290 TraceCheckUtils]: 13: Hoare triple {3698#(<= ~counter~0 0)} assume !(0 == ~cond); {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,478 INFO L290 TraceCheckUtils]: 14: Hoare triple {3698#(<= ~counter~0 0)} assume true; {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,478 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3698#(<= ~counter~0 0)} {3698#(<= ~counter~0 0)} #61#return; {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,479 INFO L290 TraceCheckUtils]: 16: Hoare triple {3698#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {3698#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:42,479 INFO L290 TraceCheckUtils]: 17: Hoare triple {3698#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3747#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:42,479 INFO L290 TraceCheckUtils]: 18: Hoare triple {3747#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {3747#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:42,480 INFO L272 TraceCheckUtils]: 19: Hoare triple {3747#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3747#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:42,481 INFO L290 TraceCheckUtils]: 20: Hoare triple {3747#(<= ~counter~0 1)} ~cond := #in~cond; {3747#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:42,481 INFO L290 TraceCheckUtils]: 21: Hoare triple {3747#(<= ~counter~0 1)} assume !(0 == ~cond); {3747#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:42,481 INFO L290 TraceCheckUtils]: 22: Hoare triple {3747#(<= ~counter~0 1)} assume true; {3747#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:42,482 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3747#(<= ~counter~0 1)} {3747#(<= ~counter~0 1)} #63#return; {3747#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:42,482 INFO L290 TraceCheckUtils]: 24: Hoare triple {3747#(<= ~counter~0 1)} assume !!(0 != ~r~0); {3747#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:42,483 INFO L290 TraceCheckUtils]: 25: Hoare triple {3747#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3747#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:42,483 INFO L290 TraceCheckUtils]: 26: Hoare triple {3747#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3775#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:42,484 INFO L290 TraceCheckUtils]: 27: Hoare triple {3775#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {3775#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:42,484 INFO L272 TraceCheckUtils]: 28: Hoare triple {3775#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3775#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:42,484 INFO L290 TraceCheckUtils]: 29: Hoare triple {3775#(<= ~counter~0 2)} ~cond := #in~cond; {3775#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:42,485 INFO L290 TraceCheckUtils]: 30: Hoare triple {3775#(<= ~counter~0 2)} assume !(0 == ~cond); {3775#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:42,485 INFO L290 TraceCheckUtils]: 31: Hoare triple {3775#(<= ~counter~0 2)} assume true; {3775#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:42,486 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3775#(<= ~counter~0 2)} {3775#(<= ~counter~0 2)} #63#return; {3775#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:42,486 INFO L290 TraceCheckUtils]: 33: Hoare triple {3775#(<= ~counter~0 2)} assume !!(0 != ~r~0); {3775#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:42,486 INFO L290 TraceCheckUtils]: 34: Hoare triple {3775#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3775#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:42,486 INFO L290 TraceCheckUtils]: 35: Hoare triple {3775#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3803#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:42,487 INFO L290 TraceCheckUtils]: 36: Hoare triple {3803#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {3803#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:42,487 INFO L272 TraceCheckUtils]: 37: Hoare triple {3803#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3803#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:42,488 INFO L290 TraceCheckUtils]: 38: Hoare triple {3803#(<= ~counter~0 3)} ~cond := #in~cond; {3803#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:42,488 INFO L290 TraceCheckUtils]: 39: Hoare triple {3803#(<= ~counter~0 3)} assume !(0 == ~cond); {3803#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:42,488 INFO L290 TraceCheckUtils]: 40: Hoare triple {3803#(<= ~counter~0 3)} assume true; {3803#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:42,489 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3803#(<= ~counter~0 3)} {3803#(<= ~counter~0 3)} #63#return; {3803#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:42,490 INFO L290 TraceCheckUtils]: 42: Hoare triple {3803#(<= ~counter~0 3)} assume !!(0 != ~r~0); {3803#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:42,490 INFO L290 TraceCheckUtils]: 43: Hoare triple {3803#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3803#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:42,490 INFO L290 TraceCheckUtils]: 44: Hoare triple {3803#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3831#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:42,490 INFO L290 TraceCheckUtils]: 45: Hoare triple {3831#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {3831#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:42,491 INFO L272 TraceCheckUtils]: 46: Hoare triple {3831#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3831#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:42,491 INFO L290 TraceCheckUtils]: 47: Hoare triple {3831#(<= ~counter~0 4)} ~cond := #in~cond; {3831#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:42,492 INFO L290 TraceCheckUtils]: 48: Hoare triple {3831#(<= ~counter~0 4)} assume !(0 == ~cond); {3831#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:42,492 INFO L290 TraceCheckUtils]: 49: Hoare triple {3831#(<= ~counter~0 4)} assume true; {3831#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:42,492 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3831#(<= ~counter~0 4)} {3831#(<= ~counter~0 4)} #63#return; {3831#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:42,493 INFO L290 TraceCheckUtils]: 51: Hoare triple {3831#(<= ~counter~0 4)} assume !!(0 != ~r~0); {3831#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:42,493 INFO L290 TraceCheckUtils]: 52: Hoare triple {3831#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3831#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:42,493 INFO L290 TraceCheckUtils]: 53: Hoare triple {3831#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3859#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:42,494 INFO L290 TraceCheckUtils]: 54: Hoare triple {3859#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {3859#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:42,494 INFO L272 TraceCheckUtils]: 55: Hoare triple {3859#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3859#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:42,494 INFO L290 TraceCheckUtils]: 56: Hoare triple {3859#(<= ~counter~0 5)} ~cond := #in~cond; {3859#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:42,495 INFO L290 TraceCheckUtils]: 57: Hoare triple {3859#(<= ~counter~0 5)} assume !(0 == ~cond); {3859#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:42,495 INFO L290 TraceCheckUtils]: 58: Hoare triple {3859#(<= ~counter~0 5)} assume true; {3859#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:42,495 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {3859#(<= ~counter~0 5)} {3859#(<= ~counter~0 5)} #63#return; {3859#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:42,496 INFO L290 TraceCheckUtils]: 60: Hoare triple {3859#(<= ~counter~0 5)} assume !!(0 != ~r~0); {3859#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:42,496 INFO L290 TraceCheckUtils]: 61: Hoare triple {3859#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3859#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:42,496 INFO L290 TraceCheckUtils]: 62: Hoare triple {3859#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3887#(<= |main_#t~post6| 5)} is VALID [2022-04-08 06:07:42,497 INFO L290 TraceCheckUtils]: 63: Hoare triple {3887#(<= |main_#t~post6| 5)} assume !(#t~post6 < 20);havoc #t~post6; {3691#false} is VALID [2022-04-08 06:07:42,497 INFO L272 TraceCheckUtils]: 64: Hoare triple {3691#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3691#false} is VALID [2022-04-08 06:07:42,497 INFO L290 TraceCheckUtils]: 65: Hoare triple {3691#false} ~cond := #in~cond; {3691#false} is VALID [2022-04-08 06:07:42,497 INFO L290 TraceCheckUtils]: 66: Hoare triple {3691#false} assume 0 == ~cond; {3691#false} is VALID [2022-04-08 06:07:42,497 INFO L290 TraceCheckUtils]: 67: Hoare triple {3691#false} assume !false; {3691#false} is VALID [2022-04-08 06:07:42,497 INFO L134 CoverageAnalysis]: Checked inductivity of 114 backedges. 10 proven. 100 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:07:42,497 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:07:42,872 INFO L290 TraceCheckUtils]: 67: Hoare triple {3691#false} assume !false; {3691#false} is VALID [2022-04-08 06:07:42,872 INFO L290 TraceCheckUtils]: 66: Hoare triple {3691#false} assume 0 == ~cond; {3691#false} is VALID [2022-04-08 06:07:42,872 INFO L290 TraceCheckUtils]: 65: Hoare triple {3691#false} ~cond := #in~cond; {3691#false} is VALID [2022-04-08 06:07:42,872 INFO L272 TraceCheckUtils]: 64: Hoare triple {3691#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3691#false} is VALID [2022-04-08 06:07:42,873 INFO L290 TraceCheckUtils]: 63: Hoare triple {3915#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {3691#false} is VALID [2022-04-08 06:07:42,873 INFO L290 TraceCheckUtils]: 62: Hoare triple {3919#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3915#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:07:42,873 INFO L290 TraceCheckUtils]: 61: Hoare triple {3919#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3919#(< ~counter~0 20)} is VALID [2022-04-08 06:07:42,874 INFO L290 TraceCheckUtils]: 60: Hoare triple {3919#(< ~counter~0 20)} assume !!(0 != ~r~0); {3919#(< ~counter~0 20)} is VALID [2022-04-08 06:07:42,875 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {3690#true} {3919#(< ~counter~0 20)} #63#return; {3919#(< ~counter~0 20)} is VALID [2022-04-08 06:07:42,875 INFO L290 TraceCheckUtils]: 58: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:07:42,875 INFO L290 TraceCheckUtils]: 57: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:07:42,875 INFO L290 TraceCheckUtils]: 56: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:07:42,875 INFO L272 TraceCheckUtils]: 55: Hoare triple {3919#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:07:42,875 INFO L290 TraceCheckUtils]: 54: Hoare triple {3919#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {3919#(< ~counter~0 20)} is VALID [2022-04-08 06:07:42,876 INFO L290 TraceCheckUtils]: 53: Hoare triple {3947#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3919#(< ~counter~0 20)} is VALID [2022-04-08 06:07:42,876 INFO L290 TraceCheckUtils]: 52: Hoare triple {3947#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3947#(< ~counter~0 19)} is VALID [2022-04-08 06:07:42,877 INFO L290 TraceCheckUtils]: 51: Hoare triple {3947#(< ~counter~0 19)} assume !!(0 != ~r~0); {3947#(< ~counter~0 19)} is VALID [2022-04-08 06:07:42,877 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3690#true} {3947#(< ~counter~0 19)} #63#return; {3947#(< ~counter~0 19)} is VALID [2022-04-08 06:07:42,877 INFO L290 TraceCheckUtils]: 49: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:07:42,878 INFO L290 TraceCheckUtils]: 48: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:07:42,878 INFO L290 TraceCheckUtils]: 47: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:07:42,878 INFO L272 TraceCheckUtils]: 46: Hoare triple {3947#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:07:42,878 INFO L290 TraceCheckUtils]: 45: Hoare triple {3947#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {3947#(< ~counter~0 19)} is VALID [2022-04-08 06:07:42,879 INFO L290 TraceCheckUtils]: 44: Hoare triple {3975#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3947#(< ~counter~0 19)} is VALID [2022-04-08 06:07:42,879 INFO L290 TraceCheckUtils]: 43: Hoare triple {3975#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3975#(< ~counter~0 18)} is VALID [2022-04-08 06:07:42,879 INFO L290 TraceCheckUtils]: 42: Hoare triple {3975#(< ~counter~0 18)} assume !!(0 != ~r~0); {3975#(< ~counter~0 18)} is VALID [2022-04-08 06:07:42,880 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3690#true} {3975#(< ~counter~0 18)} #63#return; {3975#(< ~counter~0 18)} is VALID [2022-04-08 06:07:42,880 INFO L290 TraceCheckUtils]: 40: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:07:42,880 INFO L290 TraceCheckUtils]: 39: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:07:42,880 INFO L290 TraceCheckUtils]: 38: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:07:42,880 INFO L272 TraceCheckUtils]: 37: Hoare triple {3975#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:07:42,881 INFO L290 TraceCheckUtils]: 36: Hoare triple {3975#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {3975#(< ~counter~0 18)} is VALID [2022-04-08 06:07:42,881 INFO L290 TraceCheckUtils]: 35: Hoare triple {4003#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3975#(< ~counter~0 18)} is VALID [2022-04-08 06:07:42,882 INFO L290 TraceCheckUtils]: 34: Hoare triple {4003#(< ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4003#(< ~counter~0 17)} is VALID [2022-04-08 06:07:42,882 INFO L290 TraceCheckUtils]: 33: Hoare triple {4003#(< ~counter~0 17)} assume !!(0 != ~r~0); {4003#(< ~counter~0 17)} is VALID [2022-04-08 06:07:42,883 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3690#true} {4003#(< ~counter~0 17)} #63#return; {4003#(< ~counter~0 17)} is VALID [2022-04-08 06:07:42,883 INFO L290 TraceCheckUtils]: 31: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:07:42,883 INFO L290 TraceCheckUtils]: 30: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:07:42,883 INFO L290 TraceCheckUtils]: 29: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:07:42,883 INFO L272 TraceCheckUtils]: 28: Hoare triple {4003#(< ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:07:42,883 INFO L290 TraceCheckUtils]: 27: Hoare triple {4003#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {4003#(< ~counter~0 17)} is VALID [2022-04-08 06:07:42,884 INFO L290 TraceCheckUtils]: 26: Hoare triple {4031#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4003#(< ~counter~0 17)} is VALID [2022-04-08 06:07:42,884 INFO L290 TraceCheckUtils]: 25: Hoare triple {4031#(< ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4031#(< ~counter~0 16)} is VALID [2022-04-08 06:07:42,884 INFO L290 TraceCheckUtils]: 24: Hoare triple {4031#(< ~counter~0 16)} assume !!(0 != ~r~0); {4031#(< ~counter~0 16)} is VALID [2022-04-08 06:07:42,885 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3690#true} {4031#(< ~counter~0 16)} #63#return; {4031#(< ~counter~0 16)} is VALID [2022-04-08 06:07:42,885 INFO L290 TraceCheckUtils]: 22: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:07:42,885 INFO L290 TraceCheckUtils]: 21: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:07:42,885 INFO L290 TraceCheckUtils]: 20: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:07:42,885 INFO L272 TraceCheckUtils]: 19: Hoare triple {4031#(< ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:07:42,886 INFO L290 TraceCheckUtils]: 18: Hoare triple {4031#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {4031#(< ~counter~0 16)} is VALID [2022-04-08 06:07:42,886 INFO L290 TraceCheckUtils]: 17: Hoare triple {4059#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4031#(< ~counter~0 16)} is VALID [2022-04-08 06:07:42,887 INFO L290 TraceCheckUtils]: 16: Hoare triple {4059#(< ~counter~0 15)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {4059#(< ~counter~0 15)} is VALID [2022-04-08 06:07:42,887 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3690#true} {4059#(< ~counter~0 15)} #61#return; {4059#(< ~counter~0 15)} is VALID [2022-04-08 06:07:42,887 INFO L290 TraceCheckUtils]: 14: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:07:42,887 INFO L290 TraceCheckUtils]: 13: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:07:42,887 INFO L290 TraceCheckUtils]: 12: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:07:42,888 INFO L272 TraceCheckUtils]: 11: Hoare triple {4059#(< ~counter~0 15)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {3690#true} is VALID [2022-04-08 06:07:42,888 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3690#true} {4059#(< ~counter~0 15)} #59#return; {4059#(< ~counter~0 15)} is VALID [2022-04-08 06:07:42,888 INFO L290 TraceCheckUtils]: 9: Hoare triple {3690#true} assume true; {3690#true} is VALID [2022-04-08 06:07:42,888 INFO L290 TraceCheckUtils]: 8: Hoare triple {3690#true} assume !(0 == ~cond); {3690#true} is VALID [2022-04-08 06:07:42,888 INFO L290 TraceCheckUtils]: 7: Hoare triple {3690#true} ~cond := #in~cond; {3690#true} is VALID [2022-04-08 06:07:42,888 INFO L272 TraceCheckUtils]: 6: Hoare triple {4059#(< ~counter~0 15)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {3690#true} is VALID [2022-04-08 06:07:42,889 INFO L290 TraceCheckUtils]: 5: Hoare triple {4059#(< ~counter~0 15)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {4059#(< ~counter~0 15)} is VALID [2022-04-08 06:07:42,889 INFO L272 TraceCheckUtils]: 4: Hoare triple {4059#(< ~counter~0 15)} call #t~ret7 := main(); {4059#(< ~counter~0 15)} is VALID [2022-04-08 06:07:42,890 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4059#(< ~counter~0 15)} {3690#true} #67#return; {4059#(< ~counter~0 15)} is VALID [2022-04-08 06:07:42,890 INFO L290 TraceCheckUtils]: 2: Hoare triple {4059#(< ~counter~0 15)} assume true; {4059#(< ~counter~0 15)} is VALID [2022-04-08 06:07:42,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {3690#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4059#(< ~counter~0 15)} is VALID [2022-04-08 06:07:42,891 INFO L272 TraceCheckUtils]: 0: Hoare triple {3690#true} call ULTIMATE.init(); {3690#true} is VALID [2022-04-08 06:07:42,891 INFO L134 CoverageAnalysis]: Checked inductivity of 114 backedges. 10 proven. 60 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-08 06:07:42,891 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:42,891 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [365144173] [2022-04-08 06:07:42,891 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:42,891 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [700982620] [2022-04-08 06:07:42,891 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [700982620] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:07:42,892 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:07:42,892 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-08 06:07:42,892 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:42,892 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1667561607] [2022-04-08 06:07:42,892 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1667561607] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:42,892 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:42,892 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 06:07:42,892 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1210281251] [2022-04-08 06:07:42,892 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:42,893 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) Word has length 68 [2022-04-08 06:07:42,893 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:42,893 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-08 06:07:42,951 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:42,951 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 06:07:42,951 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:42,952 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 06:07:42,952 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-08 06:07:42,952 INFO L87 Difference]: Start difference. First operand 65 states and 71 transitions. Second operand has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-08 06:07:43,194 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:43,194 INFO L93 Difference]: Finished difference Result 79 states and 86 transitions. [2022-04-08 06:07:43,194 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 06:07:43,194 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) Word has length 68 [2022-04-08 06:07:43,196 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:07:43,196 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-08 06:07:43,204 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 85 transitions. [2022-04-08 06:07:43,205 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-08 06:07:43,207 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 85 transitions. [2022-04-08 06:07:43,207 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 85 transitions. [2022-04-08 06:07:43,276 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-08 06:07:43,278 INFO L225 Difference]: With dead ends: 79 [2022-04-08 06:07:43,278 INFO L226 Difference]: Without dead ends: 74 [2022-04-08 06:07:43,278 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 140 GetRequests, 121 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=171, Invalid=249, Unknown=0, NotChecked=0, Total=420 [2022-04-08 06:07:43,281 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 13 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 33 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 116 SdHoareTripleChecker+Invalid, 40 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 33 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:07:43,281 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 116 Invalid, 40 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 33 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:07:43,282 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-08 06:07:43,369 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-04-08 06:07:43,369 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:07:43,369 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 74 states, 54 states have (on average 1.1296296296296295) internal successors, (61), 54 states have internal predecessors, (61), 11 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 06:07:43,369 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 74 states, 54 states have (on average 1.1296296296296295) internal successors, (61), 54 states have internal predecessors, (61), 11 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 06:07:43,370 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 74 states, 54 states have (on average 1.1296296296296295) internal successors, (61), 54 states have internal predecessors, (61), 11 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 06:07:43,372 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:43,373 INFO L93 Difference]: Finished difference Result 74 states and 81 transitions. [2022-04-08 06:07:43,373 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 81 transitions. [2022-04-08 06:07:43,373 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:43,373 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:43,373 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 54 states have (on average 1.1296296296296295) internal successors, (61), 54 states have internal predecessors, (61), 11 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 74 states. [2022-04-08 06:07:43,373 INFO L87 Difference]: Start difference. First operand has 74 states, 54 states have (on average 1.1296296296296295) internal successors, (61), 54 states have internal predecessors, (61), 11 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 74 states. [2022-04-08 06:07:43,375 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:43,375 INFO L93 Difference]: Finished difference Result 74 states and 81 transitions. [2022-04-08 06:07:43,375 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 81 transitions. [2022-04-08 06:07:43,375 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:43,375 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:43,375 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:07:43,375 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:07:43,376 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 54 states have (on average 1.1296296296296295) internal successors, (61), 54 states have internal predecessors, (61), 11 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 06:07:43,378 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 81 transitions. [2022-04-08 06:07:43,378 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 81 transitions. Word has length 68 [2022-04-08 06:07:43,378 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:07:43,378 INFO L478 AbstractCegarLoop]: Abstraction has 74 states and 81 transitions. [2022-04-08 06:07:43,378 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-08 06:07:43,379 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 74 states and 81 transitions. [2022-04-08 06:07:45,486 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 80 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:45,486 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 81 transitions. [2022-04-08 06:07:45,486 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2022-04-08 06:07:45,487 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:45,487 INFO L499 BasicCegarLoop]: trace histogram [7, 7, 6, 6, 6, 6, 6, 6, 6, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:07:45,503 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-08 06:07:45,687 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:45,687 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:45,687 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:45,688 INFO L85 PathProgramCache]: Analyzing trace with hash 771706710, now seen corresponding path program 11 times [2022-04-08 06:07:45,688 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:45,688 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2020380843] [2022-04-08 06:07:45,688 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:45,688 INFO L85 PathProgramCache]: Analyzing trace with hash 771706710, now seen corresponding path program 12 times [2022-04-08 06:07:45,688 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:45,688 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [93549942] [2022-04-08 06:07:45,688 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:45,689 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:45,701 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:45,702 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2063389726] [2022-04-08 06:07:45,702 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:07:45,702 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:45,702 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:45,703 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-08 06:07:45,725 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-08 06:07:45,852 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-08 06:07:45,852 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:45,854 INFO L263 TraceCheckSpWp]: Trace formula consists of 213 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 06:07:45,869 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:45,870 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:46,257 INFO L272 TraceCheckUtils]: 0: Hoare triple {4577#true} call ULTIMATE.init(); {4577#true} is VALID [2022-04-08 06:07:46,257 INFO L290 TraceCheckUtils]: 1: Hoare triple {4577#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,258 INFO L290 TraceCheckUtils]: 2: Hoare triple {4585#(<= ~counter~0 0)} assume true; {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,258 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4585#(<= ~counter~0 0)} {4577#true} #67#return; {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,258 INFO L272 TraceCheckUtils]: 4: Hoare triple {4585#(<= ~counter~0 0)} call #t~ret7 := main(); {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,259 INFO L290 TraceCheckUtils]: 5: Hoare triple {4585#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,259 INFO L272 TraceCheckUtils]: 6: Hoare triple {4585#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,260 INFO L290 TraceCheckUtils]: 7: Hoare triple {4585#(<= ~counter~0 0)} ~cond := #in~cond; {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,260 INFO L290 TraceCheckUtils]: 8: Hoare triple {4585#(<= ~counter~0 0)} assume !(0 == ~cond); {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,260 INFO L290 TraceCheckUtils]: 9: Hoare triple {4585#(<= ~counter~0 0)} assume true; {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,261 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4585#(<= ~counter~0 0)} {4585#(<= ~counter~0 0)} #59#return; {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,261 INFO L272 TraceCheckUtils]: 11: Hoare triple {4585#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,261 INFO L290 TraceCheckUtils]: 12: Hoare triple {4585#(<= ~counter~0 0)} ~cond := #in~cond; {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,262 INFO L290 TraceCheckUtils]: 13: Hoare triple {4585#(<= ~counter~0 0)} assume !(0 == ~cond); {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,262 INFO L290 TraceCheckUtils]: 14: Hoare triple {4585#(<= ~counter~0 0)} assume true; {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,262 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4585#(<= ~counter~0 0)} {4585#(<= ~counter~0 0)} #61#return; {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,263 INFO L290 TraceCheckUtils]: 16: Hoare triple {4585#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {4585#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:46,263 INFO L290 TraceCheckUtils]: 17: Hoare triple {4585#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4634#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:46,263 INFO L290 TraceCheckUtils]: 18: Hoare triple {4634#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {4634#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:46,264 INFO L272 TraceCheckUtils]: 19: Hoare triple {4634#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4634#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:46,264 INFO L290 TraceCheckUtils]: 20: Hoare triple {4634#(<= ~counter~0 1)} ~cond := #in~cond; {4634#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:46,264 INFO L290 TraceCheckUtils]: 21: Hoare triple {4634#(<= ~counter~0 1)} assume !(0 == ~cond); {4634#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:46,265 INFO L290 TraceCheckUtils]: 22: Hoare triple {4634#(<= ~counter~0 1)} assume true; {4634#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:46,265 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4634#(<= ~counter~0 1)} {4634#(<= ~counter~0 1)} #63#return; {4634#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:46,271 INFO L290 TraceCheckUtils]: 24: Hoare triple {4634#(<= ~counter~0 1)} assume !!(0 != ~r~0); {4634#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:46,272 INFO L290 TraceCheckUtils]: 25: Hoare triple {4634#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4634#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:46,273 INFO L290 TraceCheckUtils]: 26: Hoare triple {4634#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4662#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:46,273 INFO L290 TraceCheckUtils]: 27: Hoare triple {4662#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {4662#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:46,274 INFO L272 TraceCheckUtils]: 28: Hoare triple {4662#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4662#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:46,275 INFO L290 TraceCheckUtils]: 29: Hoare triple {4662#(<= ~counter~0 2)} ~cond := #in~cond; {4662#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:46,275 INFO L290 TraceCheckUtils]: 30: Hoare triple {4662#(<= ~counter~0 2)} assume !(0 == ~cond); {4662#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:46,275 INFO L290 TraceCheckUtils]: 31: Hoare triple {4662#(<= ~counter~0 2)} assume true; {4662#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:46,276 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4662#(<= ~counter~0 2)} {4662#(<= ~counter~0 2)} #63#return; {4662#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:46,276 INFO L290 TraceCheckUtils]: 33: Hoare triple {4662#(<= ~counter~0 2)} assume !!(0 != ~r~0); {4662#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:46,277 INFO L290 TraceCheckUtils]: 34: Hoare triple {4662#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4662#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:46,280 INFO L290 TraceCheckUtils]: 35: Hoare triple {4662#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4690#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:46,280 INFO L290 TraceCheckUtils]: 36: Hoare triple {4690#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {4690#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:46,281 INFO L272 TraceCheckUtils]: 37: Hoare triple {4690#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4690#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:46,281 INFO L290 TraceCheckUtils]: 38: Hoare triple {4690#(<= ~counter~0 3)} ~cond := #in~cond; {4690#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:46,281 INFO L290 TraceCheckUtils]: 39: Hoare triple {4690#(<= ~counter~0 3)} assume !(0 == ~cond); {4690#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:46,282 INFO L290 TraceCheckUtils]: 40: Hoare triple {4690#(<= ~counter~0 3)} assume true; {4690#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:46,282 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4690#(<= ~counter~0 3)} {4690#(<= ~counter~0 3)} #63#return; {4690#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:46,283 INFO L290 TraceCheckUtils]: 42: Hoare triple {4690#(<= ~counter~0 3)} assume !!(0 != ~r~0); {4690#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:46,283 INFO L290 TraceCheckUtils]: 43: Hoare triple {4690#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4690#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:46,284 INFO L290 TraceCheckUtils]: 44: Hoare triple {4690#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4718#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:46,284 INFO L290 TraceCheckUtils]: 45: Hoare triple {4718#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {4718#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:46,285 INFO L272 TraceCheckUtils]: 46: Hoare triple {4718#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4718#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:46,285 INFO L290 TraceCheckUtils]: 47: Hoare triple {4718#(<= ~counter~0 4)} ~cond := #in~cond; {4718#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:46,285 INFO L290 TraceCheckUtils]: 48: Hoare triple {4718#(<= ~counter~0 4)} assume !(0 == ~cond); {4718#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:46,286 INFO L290 TraceCheckUtils]: 49: Hoare triple {4718#(<= ~counter~0 4)} assume true; {4718#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:46,286 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4718#(<= ~counter~0 4)} {4718#(<= ~counter~0 4)} #63#return; {4718#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:46,287 INFO L290 TraceCheckUtils]: 51: Hoare triple {4718#(<= ~counter~0 4)} assume !!(0 != ~r~0); {4718#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:46,287 INFO L290 TraceCheckUtils]: 52: Hoare triple {4718#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4718#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:46,288 INFO L290 TraceCheckUtils]: 53: Hoare triple {4718#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4746#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:46,288 INFO L290 TraceCheckUtils]: 54: Hoare triple {4746#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {4746#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:46,289 INFO L272 TraceCheckUtils]: 55: Hoare triple {4746#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4746#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:46,289 INFO L290 TraceCheckUtils]: 56: Hoare triple {4746#(<= ~counter~0 5)} ~cond := #in~cond; {4746#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:46,289 INFO L290 TraceCheckUtils]: 57: Hoare triple {4746#(<= ~counter~0 5)} assume !(0 == ~cond); {4746#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:46,290 INFO L290 TraceCheckUtils]: 58: Hoare triple {4746#(<= ~counter~0 5)} assume true; {4746#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:46,290 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {4746#(<= ~counter~0 5)} {4746#(<= ~counter~0 5)} #63#return; {4746#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:46,290 INFO L290 TraceCheckUtils]: 60: Hoare triple {4746#(<= ~counter~0 5)} assume !!(0 != ~r~0); {4746#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:46,291 INFO L290 TraceCheckUtils]: 61: Hoare triple {4746#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4746#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:46,291 INFO L290 TraceCheckUtils]: 62: Hoare triple {4746#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4774#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:46,292 INFO L290 TraceCheckUtils]: 63: Hoare triple {4774#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {4774#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:46,292 INFO L272 TraceCheckUtils]: 64: Hoare triple {4774#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4774#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:46,293 INFO L290 TraceCheckUtils]: 65: Hoare triple {4774#(<= ~counter~0 6)} ~cond := #in~cond; {4774#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:46,293 INFO L290 TraceCheckUtils]: 66: Hoare triple {4774#(<= ~counter~0 6)} assume !(0 == ~cond); {4774#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:46,293 INFO L290 TraceCheckUtils]: 67: Hoare triple {4774#(<= ~counter~0 6)} assume true; {4774#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:46,294 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {4774#(<= ~counter~0 6)} {4774#(<= ~counter~0 6)} #63#return; {4774#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:46,294 INFO L290 TraceCheckUtils]: 69: Hoare triple {4774#(<= ~counter~0 6)} assume !!(0 != ~r~0); {4774#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:46,295 INFO L290 TraceCheckUtils]: 70: Hoare triple {4774#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4774#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:46,295 INFO L290 TraceCheckUtils]: 71: Hoare triple {4774#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4802#(<= |main_#t~post6| 6)} is VALID [2022-04-08 06:07:46,295 INFO L290 TraceCheckUtils]: 72: Hoare triple {4802#(<= |main_#t~post6| 6)} assume !(#t~post6 < 20);havoc #t~post6; {4578#false} is VALID [2022-04-08 06:07:46,296 INFO L272 TraceCheckUtils]: 73: Hoare triple {4578#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4578#false} is VALID [2022-04-08 06:07:46,296 INFO L290 TraceCheckUtils]: 74: Hoare triple {4578#false} ~cond := #in~cond; {4578#false} is VALID [2022-04-08 06:07:46,296 INFO L290 TraceCheckUtils]: 75: Hoare triple {4578#false} assume 0 == ~cond; {4578#false} is VALID [2022-04-08 06:07:46,296 INFO L290 TraceCheckUtils]: 76: Hoare triple {4578#false} assume !false; {4578#false} is VALID [2022-04-08 06:07:46,296 INFO L134 CoverageAnalysis]: Checked inductivity of 163 backedges. 12 proven. 147 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:07:46,296 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:07:46,709 INFO L290 TraceCheckUtils]: 76: Hoare triple {4578#false} assume !false; {4578#false} is VALID [2022-04-08 06:07:46,710 INFO L290 TraceCheckUtils]: 75: Hoare triple {4578#false} assume 0 == ~cond; {4578#false} is VALID [2022-04-08 06:07:46,710 INFO L290 TraceCheckUtils]: 74: Hoare triple {4578#false} ~cond := #in~cond; {4578#false} is VALID [2022-04-08 06:07:46,710 INFO L272 TraceCheckUtils]: 73: Hoare triple {4578#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4578#false} is VALID [2022-04-08 06:07:46,715 INFO L290 TraceCheckUtils]: 72: Hoare triple {4830#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {4578#false} is VALID [2022-04-08 06:07:46,716 INFO L290 TraceCheckUtils]: 71: Hoare triple {4834#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4830#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:07:46,716 INFO L290 TraceCheckUtils]: 70: Hoare triple {4834#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4834#(< ~counter~0 20)} is VALID [2022-04-08 06:07:46,716 INFO L290 TraceCheckUtils]: 69: Hoare triple {4834#(< ~counter~0 20)} assume !!(0 != ~r~0); {4834#(< ~counter~0 20)} is VALID [2022-04-08 06:07:46,717 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {4577#true} {4834#(< ~counter~0 20)} #63#return; {4834#(< ~counter~0 20)} is VALID [2022-04-08 06:07:46,717 INFO L290 TraceCheckUtils]: 67: Hoare triple {4577#true} assume true; {4577#true} is VALID [2022-04-08 06:07:46,717 INFO L290 TraceCheckUtils]: 66: Hoare triple {4577#true} assume !(0 == ~cond); {4577#true} is VALID [2022-04-08 06:07:46,717 INFO L290 TraceCheckUtils]: 65: Hoare triple {4577#true} ~cond := #in~cond; {4577#true} is VALID [2022-04-08 06:07:46,717 INFO L272 TraceCheckUtils]: 64: Hoare triple {4834#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4577#true} is VALID [2022-04-08 06:07:46,722 INFO L290 TraceCheckUtils]: 63: Hoare triple {4834#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {4834#(< ~counter~0 20)} is VALID [2022-04-08 06:07:46,722 INFO L290 TraceCheckUtils]: 62: Hoare triple {4862#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4834#(< ~counter~0 20)} is VALID [2022-04-08 06:07:46,723 INFO L290 TraceCheckUtils]: 61: Hoare triple {4862#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4862#(< ~counter~0 19)} is VALID [2022-04-08 06:07:46,724 INFO L290 TraceCheckUtils]: 60: Hoare triple {4862#(< ~counter~0 19)} assume !!(0 != ~r~0); {4862#(< ~counter~0 19)} is VALID [2022-04-08 06:07:46,724 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {4577#true} {4862#(< ~counter~0 19)} #63#return; {4862#(< ~counter~0 19)} is VALID [2022-04-08 06:07:46,724 INFO L290 TraceCheckUtils]: 58: Hoare triple {4577#true} assume true; {4577#true} is VALID [2022-04-08 06:07:46,724 INFO L290 TraceCheckUtils]: 57: Hoare triple {4577#true} assume !(0 == ~cond); {4577#true} is VALID [2022-04-08 06:07:46,725 INFO L290 TraceCheckUtils]: 56: Hoare triple {4577#true} ~cond := #in~cond; {4577#true} is VALID [2022-04-08 06:07:46,725 INFO L272 TraceCheckUtils]: 55: Hoare triple {4862#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4577#true} is VALID [2022-04-08 06:07:46,727 INFO L290 TraceCheckUtils]: 54: Hoare triple {4862#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {4862#(< ~counter~0 19)} is VALID [2022-04-08 06:07:46,728 INFO L290 TraceCheckUtils]: 53: Hoare triple {4890#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4862#(< ~counter~0 19)} is VALID [2022-04-08 06:07:46,728 INFO L290 TraceCheckUtils]: 52: Hoare triple {4890#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4890#(< ~counter~0 18)} is VALID [2022-04-08 06:07:46,728 INFO L290 TraceCheckUtils]: 51: Hoare triple {4890#(< ~counter~0 18)} assume !!(0 != ~r~0); {4890#(< ~counter~0 18)} is VALID [2022-04-08 06:07:46,729 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4577#true} {4890#(< ~counter~0 18)} #63#return; {4890#(< ~counter~0 18)} is VALID [2022-04-08 06:07:46,729 INFO L290 TraceCheckUtils]: 49: Hoare triple {4577#true} assume true; {4577#true} is VALID [2022-04-08 06:07:46,729 INFO L290 TraceCheckUtils]: 48: Hoare triple {4577#true} assume !(0 == ~cond); {4577#true} is VALID [2022-04-08 06:07:46,729 INFO L290 TraceCheckUtils]: 47: Hoare triple {4577#true} ~cond := #in~cond; {4577#true} is VALID [2022-04-08 06:07:46,729 INFO L272 TraceCheckUtils]: 46: Hoare triple {4890#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4577#true} is VALID [2022-04-08 06:07:46,730 INFO L290 TraceCheckUtils]: 45: Hoare triple {4890#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {4890#(< ~counter~0 18)} is VALID [2022-04-08 06:07:46,730 INFO L290 TraceCheckUtils]: 44: Hoare triple {4918#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4890#(< ~counter~0 18)} is VALID [2022-04-08 06:07:46,730 INFO L290 TraceCheckUtils]: 43: Hoare triple {4918#(< ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4918#(< ~counter~0 17)} is VALID [2022-04-08 06:07:46,731 INFO L290 TraceCheckUtils]: 42: Hoare triple {4918#(< ~counter~0 17)} assume !!(0 != ~r~0); {4918#(< ~counter~0 17)} is VALID [2022-04-08 06:07:46,731 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4577#true} {4918#(< ~counter~0 17)} #63#return; {4918#(< ~counter~0 17)} is VALID [2022-04-08 06:07:46,731 INFO L290 TraceCheckUtils]: 40: Hoare triple {4577#true} assume true; {4577#true} is VALID [2022-04-08 06:07:46,731 INFO L290 TraceCheckUtils]: 39: Hoare triple {4577#true} assume !(0 == ~cond); {4577#true} is VALID [2022-04-08 06:07:46,731 INFO L290 TraceCheckUtils]: 38: Hoare triple {4577#true} ~cond := #in~cond; {4577#true} is VALID [2022-04-08 06:07:46,731 INFO L272 TraceCheckUtils]: 37: Hoare triple {4918#(< ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4577#true} is VALID [2022-04-08 06:07:46,732 INFO L290 TraceCheckUtils]: 36: Hoare triple {4918#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {4918#(< ~counter~0 17)} is VALID [2022-04-08 06:07:46,732 INFO L290 TraceCheckUtils]: 35: Hoare triple {4946#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4918#(< ~counter~0 17)} is VALID [2022-04-08 06:07:46,732 INFO L290 TraceCheckUtils]: 34: Hoare triple {4946#(< ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4946#(< ~counter~0 16)} is VALID [2022-04-08 06:07:46,733 INFO L290 TraceCheckUtils]: 33: Hoare triple {4946#(< ~counter~0 16)} assume !!(0 != ~r~0); {4946#(< ~counter~0 16)} is VALID [2022-04-08 06:07:46,733 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4577#true} {4946#(< ~counter~0 16)} #63#return; {4946#(< ~counter~0 16)} is VALID [2022-04-08 06:07:46,733 INFO L290 TraceCheckUtils]: 31: Hoare triple {4577#true} assume true; {4577#true} is VALID [2022-04-08 06:07:46,733 INFO L290 TraceCheckUtils]: 30: Hoare triple {4577#true} assume !(0 == ~cond); {4577#true} is VALID [2022-04-08 06:07:46,733 INFO L290 TraceCheckUtils]: 29: Hoare triple {4577#true} ~cond := #in~cond; {4577#true} is VALID [2022-04-08 06:07:46,733 INFO L272 TraceCheckUtils]: 28: Hoare triple {4946#(< ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4577#true} is VALID [2022-04-08 06:07:46,734 INFO L290 TraceCheckUtils]: 27: Hoare triple {4946#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {4946#(< ~counter~0 16)} is VALID [2022-04-08 06:07:46,734 INFO L290 TraceCheckUtils]: 26: Hoare triple {4974#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4946#(< ~counter~0 16)} is VALID [2022-04-08 06:07:46,734 INFO L290 TraceCheckUtils]: 25: Hoare triple {4974#(< ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4974#(< ~counter~0 15)} is VALID [2022-04-08 06:07:46,735 INFO L290 TraceCheckUtils]: 24: Hoare triple {4974#(< ~counter~0 15)} assume !!(0 != ~r~0); {4974#(< ~counter~0 15)} is VALID [2022-04-08 06:07:46,735 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4577#true} {4974#(< ~counter~0 15)} #63#return; {4974#(< ~counter~0 15)} is VALID [2022-04-08 06:07:46,735 INFO L290 TraceCheckUtils]: 22: Hoare triple {4577#true} assume true; {4577#true} is VALID [2022-04-08 06:07:46,735 INFO L290 TraceCheckUtils]: 21: Hoare triple {4577#true} assume !(0 == ~cond); {4577#true} is VALID [2022-04-08 06:07:46,735 INFO L290 TraceCheckUtils]: 20: Hoare triple {4577#true} ~cond := #in~cond; {4577#true} is VALID [2022-04-08 06:07:46,735 INFO L272 TraceCheckUtils]: 19: Hoare triple {4974#(< ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4577#true} is VALID [2022-04-08 06:07:46,736 INFO L290 TraceCheckUtils]: 18: Hoare triple {4974#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {4974#(< ~counter~0 15)} is VALID [2022-04-08 06:07:46,736 INFO L290 TraceCheckUtils]: 17: Hoare triple {5002#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4974#(< ~counter~0 15)} is VALID [2022-04-08 06:07:46,736 INFO L290 TraceCheckUtils]: 16: Hoare triple {5002#(< ~counter~0 14)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {5002#(< ~counter~0 14)} is VALID [2022-04-08 06:07:46,737 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4577#true} {5002#(< ~counter~0 14)} #61#return; {5002#(< ~counter~0 14)} is VALID [2022-04-08 06:07:46,737 INFO L290 TraceCheckUtils]: 14: Hoare triple {4577#true} assume true; {4577#true} is VALID [2022-04-08 06:07:46,737 INFO L290 TraceCheckUtils]: 13: Hoare triple {4577#true} assume !(0 == ~cond); {4577#true} is VALID [2022-04-08 06:07:46,737 INFO L290 TraceCheckUtils]: 12: Hoare triple {4577#true} ~cond := #in~cond; {4577#true} is VALID [2022-04-08 06:07:46,737 INFO L272 TraceCheckUtils]: 11: Hoare triple {5002#(< ~counter~0 14)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {4577#true} is VALID [2022-04-08 06:07:46,737 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4577#true} {5002#(< ~counter~0 14)} #59#return; {5002#(< ~counter~0 14)} is VALID [2022-04-08 06:07:46,737 INFO L290 TraceCheckUtils]: 9: Hoare triple {4577#true} assume true; {4577#true} is VALID [2022-04-08 06:07:46,737 INFO L290 TraceCheckUtils]: 8: Hoare triple {4577#true} assume !(0 == ~cond); {4577#true} is VALID [2022-04-08 06:07:46,738 INFO L290 TraceCheckUtils]: 7: Hoare triple {4577#true} ~cond := #in~cond; {4577#true} is VALID [2022-04-08 06:07:46,738 INFO L272 TraceCheckUtils]: 6: Hoare triple {5002#(< ~counter~0 14)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {4577#true} is VALID [2022-04-08 06:07:46,738 INFO L290 TraceCheckUtils]: 5: Hoare triple {5002#(< ~counter~0 14)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {5002#(< ~counter~0 14)} is VALID [2022-04-08 06:07:46,738 INFO L272 TraceCheckUtils]: 4: Hoare triple {5002#(< ~counter~0 14)} call #t~ret7 := main(); {5002#(< ~counter~0 14)} is VALID [2022-04-08 06:07:46,738 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5002#(< ~counter~0 14)} {4577#true} #67#return; {5002#(< ~counter~0 14)} is VALID [2022-04-08 06:07:46,739 INFO L290 TraceCheckUtils]: 2: Hoare triple {5002#(< ~counter~0 14)} assume true; {5002#(< ~counter~0 14)} is VALID [2022-04-08 06:07:46,739 INFO L290 TraceCheckUtils]: 1: Hoare triple {4577#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5002#(< ~counter~0 14)} is VALID [2022-04-08 06:07:46,739 INFO L272 TraceCheckUtils]: 0: Hoare triple {4577#true} call ULTIMATE.init(); {4577#true} is VALID [2022-04-08 06:07:46,740 INFO L134 CoverageAnalysis]: Checked inductivity of 163 backedges. 12 proven. 87 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-08 06:07:46,740 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:46,740 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [93549942] [2022-04-08 06:07:46,740 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:46,740 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2063389726] [2022-04-08 06:07:46,740 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2063389726] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:07:46,740 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:07:46,740 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-08 06:07:46,740 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:46,740 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2020380843] [2022-04-08 06:07:46,741 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2020380843] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:46,741 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:46,741 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 06:07:46,741 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1107162844] [2022-04-08 06:07:46,741 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:46,741 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (11), 9 states have call predecessors, (11), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) Word has length 77 [2022-04-08 06:07:46,742 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:46,742 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (11), 9 states have call predecessors, (11), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-08 06:07:46,803 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:46,803 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 06:07:46,803 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:46,803 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 06:07:46,803 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-08 06:07:46,805 INFO L87 Difference]: Start difference. First operand 74 states and 81 transitions. Second operand has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (11), 9 states have call predecessors, (11), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-08 06:07:47,103 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:47,103 INFO L93 Difference]: Finished difference Result 88 states and 96 transitions. [2022-04-08 06:07:47,103 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-08 06:07:47,104 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (11), 9 states have call predecessors, (11), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) Word has length 77 [2022-04-08 06:07:47,104 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:07:47,104 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (11), 9 states have call predecessors, (11), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-08 06:07:47,106 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 95 transitions. [2022-04-08 06:07:47,106 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (11), 9 states have call predecessors, (11), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-08 06:07:47,108 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 95 transitions. [2022-04-08 06:07:47,108 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 95 transitions. [2022-04-08 06:07:47,190 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:47,192 INFO L225 Difference]: With dead ends: 88 [2022-04-08 06:07:47,192 INFO L226 Difference]: Without dead ends: 83 [2022-04-08 06:07:47,192 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 159 GetRequests, 137 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 34 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=227, Invalid=325, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:07:47,193 INFO L913 BasicCegarLoop]: 32 mSDtfsCounter, 21 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 39 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 130 SdHoareTripleChecker+Invalid, 53 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 39 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:07:47,193 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [21 Valid, 130 Invalid, 53 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 39 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:07:47,194 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 83 states. [2022-04-08 06:07:47,261 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 83 to 83. [2022-04-08 06:07:47,261 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:07:47,261 INFO L82 GeneralOperation]: Start isEquivalent. First operand 83 states. Second operand has 83 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 61 states have internal predecessors, (69), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:07:47,261 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand has 83 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 61 states have internal predecessors, (69), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:07:47,262 INFO L87 Difference]: Start difference. First operand 83 states. Second operand has 83 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 61 states have internal predecessors, (69), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:07:47,263 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:47,264 INFO L93 Difference]: Finished difference Result 83 states and 91 transitions. [2022-04-08 06:07:47,264 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 91 transitions. [2022-04-08 06:07:47,264 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:47,264 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:47,264 INFO L74 IsIncluded]: Start isIncluded. First operand has 83 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 61 states have internal predecessors, (69), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 83 states. [2022-04-08 06:07:47,264 INFO L87 Difference]: Start difference. First operand has 83 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 61 states have internal predecessors, (69), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 83 states. [2022-04-08 06:07:47,266 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:47,266 INFO L93 Difference]: Finished difference Result 83 states and 91 transitions. [2022-04-08 06:07:47,266 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 91 transitions. [2022-04-08 06:07:47,266 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:47,267 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:47,267 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:07:47,267 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:07:47,267 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 83 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 61 states have internal predecessors, (69), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:07:47,268 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 91 transitions. [2022-04-08 06:07:47,269 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 91 transitions. Word has length 77 [2022-04-08 06:07:47,269 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:07:47,269 INFO L478 AbstractCegarLoop]: Abstraction has 83 states and 91 transitions. [2022-04-08 06:07:47,269 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (11), 9 states have call predecessors, (11), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-08 06:07:47,269 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 83 states and 91 transitions. [2022-04-08 06:07:48,480 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:48,481 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 91 transitions. [2022-04-08 06:07:48,481 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-08 06:07:48,481 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:48,481 INFO L499 BasicCegarLoop]: trace histogram [8, 8, 7, 7, 7, 7, 7, 7, 7, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:07:48,485 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-08 06:07:48,683 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-08 06:07:48,683 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:48,684 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:48,684 INFO L85 PathProgramCache]: Analyzing trace with hash 1848611036, now seen corresponding path program 13 times [2022-04-08 06:07:48,684 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:48,684 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1857891709] [2022-04-08 06:07:48,684 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:48,684 INFO L85 PathProgramCache]: Analyzing trace with hash 1848611036, now seen corresponding path program 14 times [2022-04-08 06:07:48,685 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:48,685 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1995118992] [2022-04-08 06:07:48,685 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:48,685 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:48,711 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:48,711 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [311189595] [2022-04-08 06:07:48,712 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:07:48,712 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:48,712 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:48,714 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-08 06:07:48,714 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-08 06:07:48,773 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:07:48,773 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:48,774 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-08 06:07:48,792 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:48,797 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:49,272 INFO L272 TraceCheckUtils]: 0: Hoare triple {5576#true} call ULTIMATE.init(); {5576#true} is VALID [2022-04-08 06:07:49,272 INFO L290 TraceCheckUtils]: 1: Hoare triple {5576#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,273 INFO L290 TraceCheckUtils]: 2: Hoare triple {5584#(<= ~counter~0 0)} assume true; {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,273 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5584#(<= ~counter~0 0)} {5576#true} #67#return; {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,273 INFO L272 TraceCheckUtils]: 4: Hoare triple {5584#(<= ~counter~0 0)} call #t~ret7 := main(); {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,274 INFO L290 TraceCheckUtils]: 5: Hoare triple {5584#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,274 INFO L272 TraceCheckUtils]: 6: Hoare triple {5584#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,274 INFO L290 TraceCheckUtils]: 7: Hoare triple {5584#(<= ~counter~0 0)} ~cond := #in~cond; {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,275 INFO L290 TraceCheckUtils]: 8: Hoare triple {5584#(<= ~counter~0 0)} assume !(0 == ~cond); {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,275 INFO L290 TraceCheckUtils]: 9: Hoare triple {5584#(<= ~counter~0 0)} assume true; {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,275 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5584#(<= ~counter~0 0)} {5584#(<= ~counter~0 0)} #59#return; {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,276 INFO L272 TraceCheckUtils]: 11: Hoare triple {5584#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,276 INFO L290 TraceCheckUtils]: 12: Hoare triple {5584#(<= ~counter~0 0)} ~cond := #in~cond; {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,276 INFO L290 TraceCheckUtils]: 13: Hoare triple {5584#(<= ~counter~0 0)} assume !(0 == ~cond); {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,276 INFO L290 TraceCheckUtils]: 14: Hoare triple {5584#(<= ~counter~0 0)} assume true; {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,277 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5584#(<= ~counter~0 0)} {5584#(<= ~counter~0 0)} #61#return; {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,277 INFO L290 TraceCheckUtils]: 16: Hoare triple {5584#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {5584#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:49,278 INFO L290 TraceCheckUtils]: 17: Hoare triple {5584#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5633#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:49,278 INFO L290 TraceCheckUtils]: 18: Hoare triple {5633#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {5633#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:49,278 INFO L272 TraceCheckUtils]: 19: Hoare triple {5633#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5633#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:49,279 INFO L290 TraceCheckUtils]: 20: Hoare triple {5633#(<= ~counter~0 1)} ~cond := #in~cond; {5633#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:49,279 INFO L290 TraceCheckUtils]: 21: Hoare triple {5633#(<= ~counter~0 1)} assume !(0 == ~cond); {5633#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:49,279 INFO L290 TraceCheckUtils]: 22: Hoare triple {5633#(<= ~counter~0 1)} assume true; {5633#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:49,280 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5633#(<= ~counter~0 1)} {5633#(<= ~counter~0 1)} #63#return; {5633#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:49,280 INFO L290 TraceCheckUtils]: 24: Hoare triple {5633#(<= ~counter~0 1)} assume !!(0 != ~r~0); {5633#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:49,280 INFO L290 TraceCheckUtils]: 25: Hoare triple {5633#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5633#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:49,281 INFO L290 TraceCheckUtils]: 26: Hoare triple {5633#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5661#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:49,281 INFO L290 TraceCheckUtils]: 27: Hoare triple {5661#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {5661#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:49,281 INFO L272 TraceCheckUtils]: 28: Hoare triple {5661#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5661#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:49,282 INFO L290 TraceCheckUtils]: 29: Hoare triple {5661#(<= ~counter~0 2)} ~cond := #in~cond; {5661#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:49,282 INFO L290 TraceCheckUtils]: 30: Hoare triple {5661#(<= ~counter~0 2)} assume !(0 == ~cond); {5661#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:49,294 INFO L290 TraceCheckUtils]: 31: Hoare triple {5661#(<= ~counter~0 2)} assume true; {5661#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:49,294 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {5661#(<= ~counter~0 2)} {5661#(<= ~counter~0 2)} #63#return; {5661#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:49,295 INFO L290 TraceCheckUtils]: 33: Hoare triple {5661#(<= ~counter~0 2)} assume !!(0 != ~r~0); {5661#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:49,295 INFO L290 TraceCheckUtils]: 34: Hoare triple {5661#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5661#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:49,295 INFO L290 TraceCheckUtils]: 35: Hoare triple {5661#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5689#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:49,296 INFO L290 TraceCheckUtils]: 36: Hoare triple {5689#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {5689#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:49,296 INFO L272 TraceCheckUtils]: 37: Hoare triple {5689#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5689#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:49,296 INFO L290 TraceCheckUtils]: 38: Hoare triple {5689#(<= ~counter~0 3)} ~cond := #in~cond; {5689#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:49,297 INFO L290 TraceCheckUtils]: 39: Hoare triple {5689#(<= ~counter~0 3)} assume !(0 == ~cond); {5689#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:49,297 INFO L290 TraceCheckUtils]: 40: Hoare triple {5689#(<= ~counter~0 3)} assume true; {5689#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:49,297 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5689#(<= ~counter~0 3)} {5689#(<= ~counter~0 3)} #63#return; {5689#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:49,298 INFO L290 TraceCheckUtils]: 42: Hoare triple {5689#(<= ~counter~0 3)} assume !!(0 != ~r~0); {5689#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:49,298 INFO L290 TraceCheckUtils]: 43: Hoare triple {5689#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5689#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:49,298 INFO L290 TraceCheckUtils]: 44: Hoare triple {5689#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5717#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:49,299 INFO L290 TraceCheckUtils]: 45: Hoare triple {5717#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {5717#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:49,301 INFO L272 TraceCheckUtils]: 46: Hoare triple {5717#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5717#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:49,302 INFO L290 TraceCheckUtils]: 47: Hoare triple {5717#(<= ~counter~0 4)} ~cond := #in~cond; {5717#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:49,302 INFO L290 TraceCheckUtils]: 48: Hoare triple {5717#(<= ~counter~0 4)} assume !(0 == ~cond); {5717#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:49,302 INFO L290 TraceCheckUtils]: 49: Hoare triple {5717#(<= ~counter~0 4)} assume true; {5717#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:49,303 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5717#(<= ~counter~0 4)} {5717#(<= ~counter~0 4)} #63#return; {5717#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:49,303 INFO L290 TraceCheckUtils]: 51: Hoare triple {5717#(<= ~counter~0 4)} assume !!(0 != ~r~0); {5717#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:49,303 INFO L290 TraceCheckUtils]: 52: Hoare triple {5717#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5717#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:49,304 INFO L290 TraceCheckUtils]: 53: Hoare triple {5717#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5745#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:49,304 INFO L290 TraceCheckUtils]: 54: Hoare triple {5745#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {5745#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:49,305 INFO L272 TraceCheckUtils]: 55: Hoare triple {5745#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5745#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:49,305 INFO L290 TraceCheckUtils]: 56: Hoare triple {5745#(<= ~counter~0 5)} ~cond := #in~cond; {5745#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:49,305 INFO L290 TraceCheckUtils]: 57: Hoare triple {5745#(<= ~counter~0 5)} assume !(0 == ~cond); {5745#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:49,305 INFO L290 TraceCheckUtils]: 58: Hoare triple {5745#(<= ~counter~0 5)} assume true; {5745#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:49,306 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {5745#(<= ~counter~0 5)} {5745#(<= ~counter~0 5)} #63#return; {5745#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:49,306 INFO L290 TraceCheckUtils]: 60: Hoare triple {5745#(<= ~counter~0 5)} assume !!(0 != ~r~0); {5745#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:49,306 INFO L290 TraceCheckUtils]: 61: Hoare triple {5745#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5745#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:49,307 INFO L290 TraceCheckUtils]: 62: Hoare triple {5745#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5773#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:49,307 INFO L290 TraceCheckUtils]: 63: Hoare triple {5773#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {5773#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:49,308 INFO L272 TraceCheckUtils]: 64: Hoare triple {5773#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5773#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:49,308 INFO L290 TraceCheckUtils]: 65: Hoare triple {5773#(<= ~counter~0 6)} ~cond := #in~cond; {5773#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:49,308 INFO L290 TraceCheckUtils]: 66: Hoare triple {5773#(<= ~counter~0 6)} assume !(0 == ~cond); {5773#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:49,308 INFO L290 TraceCheckUtils]: 67: Hoare triple {5773#(<= ~counter~0 6)} assume true; {5773#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:49,309 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {5773#(<= ~counter~0 6)} {5773#(<= ~counter~0 6)} #63#return; {5773#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:49,309 INFO L290 TraceCheckUtils]: 69: Hoare triple {5773#(<= ~counter~0 6)} assume !!(0 != ~r~0); {5773#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:49,309 INFO L290 TraceCheckUtils]: 70: Hoare triple {5773#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5773#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:49,310 INFO L290 TraceCheckUtils]: 71: Hoare triple {5773#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5801#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:49,310 INFO L290 TraceCheckUtils]: 72: Hoare triple {5801#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {5801#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:49,311 INFO L272 TraceCheckUtils]: 73: Hoare triple {5801#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5801#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:49,311 INFO L290 TraceCheckUtils]: 74: Hoare triple {5801#(<= ~counter~0 7)} ~cond := #in~cond; {5801#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:49,311 INFO L290 TraceCheckUtils]: 75: Hoare triple {5801#(<= ~counter~0 7)} assume !(0 == ~cond); {5801#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:49,311 INFO L290 TraceCheckUtils]: 76: Hoare triple {5801#(<= ~counter~0 7)} assume true; {5801#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:49,312 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {5801#(<= ~counter~0 7)} {5801#(<= ~counter~0 7)} #63#return; {5801#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:49,312 INFO L290 TraceCheckUtils]: 78: Hoare triple {5801#(<= ~counter~0 7)} assume !!(0 != ~r~0); {5801#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:49,312 INFO L290 TraceCheckUtils]: 79: Hoare triple {5801#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5801#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:49,313 INFO L290 TraceCheckUtils]: 80: Hoare triple {5801#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5829#(<= |main_#t~post6| 7)} is VALID [2022-04-08 06:07:49,313 INFO L290 TraceCheckUtils]: 81: Hoare triple {5829#(<= |main_#t~post6| 7)} assume !(#t~post6 < 20);havoc #t~post6; {5577#false} is VALID [2022-04-08 06:07:49,313 INFO L272 TraceCheckUtils]: 82: Hoare triple {5577#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5577#false} is VALID [2022-04-08 06:07:49,313 INFO L290 TraceCheckUtils]: 83: Hoare triple {5577#false} ~cond := #in~cond; {5577#false} is VALID [2022-04-08 06:07:49,313 INFO L290 TraceCheckUtils]: 84: Hoare triple {5577#false} assume 0 == ~cond; {5577#false} is VALID [2022-04-08 06:07:49,313 INFO L290 TraceCheckUtils]: 85: Hoare triple {5577#false} assume !false; {5577#false} is VALID [2022-04-08 06:07:49,314 INFO L134 CoverageAnalysis]: Checked inductivity of 221 backedges. 14 proven. 203 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:07:49,314 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:07:49,762 INFO L290 TraceCheckUtils]: 85: Hoare triple {5577#false} assume !false; {5577#false} is VALID [2022-04-08 06:07:49,763 INFO L290 TraceCheckUtils]: 84: Hoare triple {5577#false} assume 0 == ~cond; {5577#false} is VALID [2022-04-08 06:07:49,763 INFO L290 TraceCheckUtils]: 83: Hoare triple {5577#false} ~cond := #in~cond; {5577#false} is VALID [2022-04-08 06:07:49,763 INFO L272 TraceCheckUtils]: 82: Hoare triple {5577#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5577#false} is VALID [2022-04-08 06:07:49,763 INFO L290 TraceCheckUtils]: 81: Hoare triple {5857#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {5577#false} is VALID [2022-04-08 06:07:49,764 INFO L290 TraceCheckUtils]: 80: Hoare triple {5861#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5857#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:07:49,764 INFO L290 TraceCheckUtils]: 79: Hoare triple {5861#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5861#(< ~counter~0 20)} is VALID [2022-04-08 06:07:49,764 INFO L290 TraceCheckUtils]: 78: Hoare triple {5861#(< ~counter~0 20)} assume !!(0 != ~r~0); {5861#(< ~counter~0 20)} is VALID [2022-04-08 06:07:49,765 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {5576#true} {5861#(< ~counter~0 20)} #63#return; {5861#(< ~counter~0 20)} is VALID [2022-04-08 06:07:49,765 INFO L290 TraceCheckUtils]: 76: Hoare triple {5576#true} assume true; {5576#true} is VALID [2022-04-08 06:07:49,765 INFO L290 TraceCheckUtils]: 75: Hoare triple {5576#true} assume !(0 == ~cond); {5576#true} is VALID [2022-04-08 06:07:49,765 INFO L290 TraceCheckUtils]: 74: Hoare triple {5576#true} ~cond := #in~cond; {5576#true} is VALID [2022-04-08 06:07:49,765 INFO L272 TraceCheckUtils]: 73: Hoare triple {5861#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5576#true} is VALID [2022-04-08 06:07:49,765 INFO L290 TraceCheckUtils]: 72: Hoare triple {5861#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {5861#(< ~counter~0 20)} is VALID [2022-04-08 06:07:49,766 INFO L290 TraceCheckUtils]: 71: Hoare triple {5889#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5861#(< ~counter~0 20)} is VALID [2022-04-08 06:07:49,766 INFO L290 TraceCheckUtils]: 70: Hoare triple {5889#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5889#(< ~counter~0 19)} is VALID [2022-04-08 06:07:49,766 INFO L290 TraceCheckUtils]: 69: Hoare triple {5889#(< ~counter~0 19)} assume !!(0 != ~r~0); {5889#(< ~counter~0 19)} is VALID [2022-04-08 06:07:49,768 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {5576#true} {5889#(< ~counter~0 19)} #63#return; {5889#(< ~counter~0 19)} is VALID [2022-04-08 06:07:49,768 INFO L290 TraceCheckUtils]: 67: Hoare triple {5576#true} assume true; {5576#true} is VALID [2022-04-08 06:07:49,768 INFO L290 TraceCheckUtils]: 66: Hoare triple {5576#true} assume !(0 == ~cond); {5576#true} is VALID [2022-04-08 06:07:49,768 INFO L290 TraceCheckUtils]: 65: Hoare triple {5576#true} ~cond := #in~cond; {5576#true} is VALID [2022-04-08 06:07:49,769 INFO L272 TraceCheckUtils]: 64: Hoare triple {5889#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5576#true} is VALID [2022-04-08 06:07:49,769 INFO L290 TraceCheckUtils]: 63: Hoare triple {5889#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {5889#(< ~counter~0 19)} is VALID [2022-04-08 06:07:49,769 INFO L290 TraceCheckUtils]: 62: Hoare triple {5917#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5889#(< ~counter~0 19)} is VALID [2022-04-08 06:07:49,769 INFO L290 TraceCheckUtils]: 61: Hoare triple {5917#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5917#(< ~counter~0 18)} is VALID [2022-04-08 06:07:49,770 INFO L290 TraceCheckUtils]: 60: Hoare triple {5917#(< ~counter~0 18)} assume !!(0 != ~r~0); {5917#(< ~counter~0 18)} is VALID [2022-04-08 06:07:49,770 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {5576#true} {5917#(< ~counter~0 18)} #63#return; {5917#(< ~counter~0 18)} is VALID [2022-04-08 06:07:49,770 INFO L290 TraceCheckUtils]: 58: Hoare triple {5576#true} assume true; {5576#true} is VALID [2022-04-08 06:07:49,770 INFO L290 TraceCheckUtils]: 57: Hoare triple {5576#true} assume !(0 == ~cond); {5576#true} is VALID [2022-04-08 06:07:49,770 INFO L290 TraceCheckUtils]: 56: Hoare triple {5576#true} ~cond := #in~cond; {5576#true} is VALID [2022-04-08 06:07:49,771 INFO L272 TraceCheckUtils]: 55: Hoare triple {5917#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5576#true} is VALID [2022-04-08 06:07:49,771 INFO L290 TraceCheckUtils]: 54: Hoare triple {5917#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {5917#(< ~counter~0 18)} is VALID [2022-04-08 06:07:49,771 INFO L290 TraceCheckUtils]: 53: Hoare triple {5945#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5917#(< ~counter~0 18)} is VALID [2022-04-08 06:07:49,771 INFO L290 TraceCheckUtils]: 52: Hoare triple {5945#(< ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5945#(< ~counter~0 17)} is VALID [2022-04-08 06:07:49,772 INFO L290 TraceCheckUtils]: 51: Hoare triple {5945#(< ~counter~0 17)} assume !!(0 != ~r~0); {5945#(< ~counter~0 17)} is VALID [2022-04-08 06:07:49,772 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5576#true} {5945#(< ~counter~0 17)} #63#return; {5945#(< ~counter~0 17)} is VALID [2022-04-08 06:07:49,772 INFO L290 TraceCheckUtils]: 49: Hoare triple {5576#true} assume true; {5576#true} is VALID [2022-04-08 06:07:49,772 INFO L290 TraceCheckUtils]: 48: Hoare triple {5576#true} assume !(0 == ~cond); {5576#true} is VALID [2022-04-08 06:07:49,772 INFO L290 TraceCheckUtils]: 47: Hoare triple {5576#true} ~cond := #in~cond; {5576#true} is VALID [2022-04-08 06:07:49,773 INFO L272 TraceCheckUtils]: 46: Hoare triple {5945#(< ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5576#true} is VALID [2022-04-08 06:07:49,773 INFO L290 TraceCheckUtils]: 45: Hoare triple {5945#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {5945#(< ~counter~0 17)} is VALID [2022-04-08 06:07:49,773 INFO L290 TraceCheckUtils]: 44: Hoare triple {5973#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5945#(< ~counter~0 17)} is VALID [2022-04-08 06:07:49,773 INFO L290 TraceCheckUtils]: 43: Hoare triple {5973#(< ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5973#(< ~counter~0 16)} is VALID [2022-04-08 06:07:49,774 INFO L290 TraceCheckUtils]: 42: Hoare triple {5973#(< ~counter~0 16)} assume !!(0 != ~r~0); {5973#(< ~counter~0 16)} is VALID [2022-04-08 06:07:49,774 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5576#true} {5973#(< ~counter~0 16)} #63#return; {5973#(< ~counter~0 16)} is VALID [2022-04-08 06:07:49,774 INFO L290 TraceCheckUtils]: 40: Hoare triple {5576#true} assume true; {5576#true} is VALID [2022-04-08 06:07:49,774 INFO L290 TraceCheckUtils]: 39: Hoare triple {5576#true} assume !(0 == ~cond); {5576#true} is VALID [2022-04-08 06:07:49,774 INFO L290 TraceCheckUtils]: 38: Hoare triple {5576#true} ~cond := #in~cond; {5576#true} is VALID [2022-04-08 06:07:49,774 INFO L272 TraceCheckUtils]: 37: Hoare triple {5973#(< ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5576#true} is VALID [2022-04-08 06:07:49,775 INFO L290 TraceCheckUtils]: 36: Hoare triple {5973#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {5973#(< ~counter~0 16)} is VALID [2022-04-08 06:07:49,775 INFO L290 TraceCheckUtils]: 35: Hoare triple {6001#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5973#(< ~counter~0 16)} is VALID [2022-04-08 06:07:49,775 INFO L290 TraceCheckUtils]: 34: Hoare triple {6001#(< ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6001#(< ~counter~0 15)} is VALID [2022-04-08 06:07:49,776 INFO L290 TraceCheckUtils]: 33: Hoare triple {6001#(< ~counter~0 15)} assume !!(0 != ~r~0); {6001#(< ~counter~0 15)} is VALID [2022-04-08 06:07:49,776 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {5576#true} {6001#(< ~counter~0 15)} #63#return; {6001#(< ~counter~0 15)} is VALID [2022-04-08 06:07:49,776 INFO L290 TraceCheckUtils]: 31: Hoare triple {5576#true} assume true; {5576#true} is VALID [2022-04-08 06:07:49,776 INFO L290 TraceCheckUtils]: 30: Hoare triple {5576#true} assume !(0 == ~cond); {5576#true} is VALID [2022-04-08 06:07:49,776 INFO L290 TraceCheckUtils]: 29: Hoare triple {5576#true} ~cond := #in~cond; {5576#true} is VALID [2022-04-08 06:07:49,776 INFO L272 TraceCheckUtils]: 28: Hoare triple {6001#(< ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5576#true} is VALID [2022-04-08 06:07:49,777 INFO L290 TraceCheckUtils]: 27: Hoare triple {6001#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {6001#(< ~counter~0 15)} is VALID [2022-04-08 06:07:49,777 INFO L290 TraceCheckUtils]: 26: Hoare triple {6029#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6001#(< ~counter~0 15)} is VALID [2022-04-08 06:07:49,777 INFO L290 TraceCheckUtils]: 25: Hoare triple {6029#(< ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6029#(< ~counter~0 14)} is VALID [2022-04-08 06:07:49,778 INFO L290 TraceCheckUtils]: 24: Hoare triple {6029#(< ~counter~0 14)} assume !!(0 != ~r~0); {6029#(< ~counter~0 14)} is VALID [2022-04-08 06:07:49,778 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5576#true} {6029#(< ~counter~0 14)} #63#return; {6029#(< ~counter~0 14)} is VALID [2022-04-08 06:07:49,778 INFO L290 TraceCheckUtils]: 22: Hoare triple {5576#true} assume true; {5576#true} is VALID [2022-04-08 06:07:49,778 INFO L290 TraceCheckUtils]: 21: Hoare triple {5576#true} assume !(0 == ~cond); {5576#true} is VALID [2022-04-08 06:07:49,778 INFO L290 TraceCheckUtils]: 20: Hoare triple {5576#true} ~cond := #in~cond; {5576#true} is VALID [2022-04-08 06:07:49,778 INFO L272 TraceCheckUtils]: 19: Hoare triple {6029#(< ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5576#true} is VALID [2022-04-08 06:07:49,779 INFO L290 TraceCheckUtils]: 18: Hoare triple {6029#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {6029#(< ~counter~0 14)} is VALID [2022-04-08 06:07:49,779 INFO L290 TraceCheckUtils]: 17: Hoare triple {6057#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6029#(< ~counter~0 14)} is VALID [2022-04-08 06:07:49,779 INFO L290 TraceCheckUtils]: 16: Hoare triple {6057#(< ~counter~0 13)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {6057#(< ~counter~0 13)} is VALID [2022-04-08 06:07:49,780 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5576#true} {6057#(< ~counter~0 13)} #61#return; {6057#(< ~counter~0 13)} is VALID [2022-04-08 06:07:49,780 INFO L290 TraceCheckUtils]: 14: Hoare triple {5576#true} assume true; {5576#true} is VALID [2022-04-08 06:07:49,780 INFO L290 TraceCheckUtils]: 13: Hoare triple {5576#true} assume !(0 == ~cond); {5576#true} is VALID [2022-04-08 06:07:49,780 INFO L290 TraceCheckUtils]: 12: Hoare triple {5576#true} ~cond := #in~cond; {5576#true} is VALID [2022-04-08 06:07:49,780 INFO L272 TraceCheckUtils]: 11: Hoare triple {6057#(< ~counter~0 13)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {5576#true} is VALID [2022-04-08 06:07:49,780 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5576#true} {6057#(< ~counter~0 13)} #59#return; {6057#(< ~counter~0 13)} is VALID [2022-04-08 06:07:49,780 INFO L290 TraceCheckUtils]: 9: Hoare triple {5576#true} assume true; {5576#true} is VALID [2022-04-08 06:07:49,780 INFO L290 TraceCheckUtils]: 8: Hoare triple {5576#true} assume !(0 == ~cond); {5576#true} is VALID [2022-04-08 06:07:49,781 INFO L290 TraceCheckUtils]: 7: Hoare triple {5576#true} ~cond := #in~cond; {5576#true} is VALID [2022-04-08 06:07:49,781 INFO L272 TraceCheckUtils]: 6: Hoare triple {6057#(< ~counter~0 13)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {5576#true} is VALID [2022-04-08 06:07:49,781 INFO L290 TraceCheckUtils]: 5: Hoare triple {6057#(< ~counter~0 13)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {6057#(< ~counter~0 13)} is VALID [2022-04-08 06:07:49,781 INFO L272 TraceCheckUtils]: 4: Hoare triple {6057#(< ~counter~0 13)} call #t~ret7 := main(); {6057#(< ~counter~0 13)} is VALID [2022-04-08 06:07:49,781 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6057#(< ~counter~0 13)} {5576#true} #67#return; {6057#(< ~counter~0 13)} is VALID [2022-04-08 06:07:49,782 INFO L290 TraceCheckUtils]: 2: Hoare triple {6057#(< ~counter~0 13)} assume true; {6057#(< ~counter~0 13)} is VALID [2022-04-08 06:07:49,782 INFO L290 TraceCheckUtils]: 1: Hoare triple {5576#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6057#(< ~counter~0 13)} is VALID [2022-04-08 06:07:49,782 INFO L272 TraceCheckUtils]: 0: Hoare triple {5576#true} call ULTIMATE.init(); {5576#true} is VALID [2022-04-08 06:07:49,783 INFO L134 CoverageAnalysis]: Checked inductivity of 221 backedges. 14 proven. 119 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-08 06:07:49,783 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:49,783 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1995118992] [2022-04-08 06:07:49,783 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:49,783 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [311189595] [2022-04-08 06:07:49,783 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [311189595] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:07:49,783 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:07:49,783 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-08 06:07:49,783 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:49,783 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1857891709] [2022-04-08 06:07:49,783 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1857891709] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:49,784 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:49,784 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 06:07:49,784 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [103834348] [2022-04-08 06:07:49,784 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:49,784 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (12), 10 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 9 states have call successors, (10) Word has length 86 [2022-04-08 06:07:49,784 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:49,785 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (12), 10 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 9 states have call successors, (10) [2022-04-08 06:07:49,841 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-08 06:07:49,841 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 06:07:49,841 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:49,843 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 06:07:49,843 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-08 06:07:49,843 INFO L87 Difference]: Start difference. First operand 83 states and 91 transitions. Second operand has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (12), 10 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 9 states have call successors, (10) [2022-04-08 06:07:50,133 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:50,133 INFO L93 Difference]: Finished difference Result 97 states and 106 transitions. [2022-04-08 06:07:50,133 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-08 06:07:50,133 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (12), 10 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 9 states have call successors, (10) Word has length 86 [2022-04-08 06:07:50,133 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:07:50,134 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (12), 10 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 9 states have call successors, (10) [2022-04-08 06:07:50,136 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 105 transitions. [2022-04-08 06:07:50,136 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (12), 10 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 9 states have call successors, (10) [2022-04-08 06:07:50,138 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 105 transitions. [2022-04-08 06:07:50,138 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 105 transitions. [2022-04-08 06:07:50,212 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:50,213 INFO L225 Difference]: With dead ends: 97 [2022-04-08 06:07:50,213 INFO L226 Difference]: Without dead ends: 92 [2022-04-08 06:07:50,214 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 178 GetRequests, 153 SyntacticMatches, 0 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 43 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=291, Invalid=411, Unknown=0, NotChecked=0, Total=702 [2022-04-08 06:07:50,214 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 24 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 132 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 40 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:07:50,214 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 132 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:07:50,215 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 92 states. [2022-04-08 06:07:50,313 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 92 to 92. [2022-04-08 06:07:50,313 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:07:50,313 INFO L82 GeneralOperation]: Start isEquivalent. First operand 92 states. Second operand has 92 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 68 states have internal predecessors, (77), 13 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 06:07:50,314 INFO L74 IsIncluded]: Start isIncluded. First operand 92 states. Second operand has 92 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 68 states have internal predecessors, (77), 13 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 06:07:50,314 INFO L87 Difference]: Start difference. First operand 92 states. Second operand has 92 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 68 states have internal predecessors, (77), 13 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 06:07:50,316 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:50,316 INFO L93 Difference]: Finished difference Result 92 states and 101 transitions. [2022-04-08 06:07:50,316 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 101 transitions. [2022-04-08 06:07:50,316 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:50,316 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:50,317 INFO L74 IsIncluded]: Start isIncluded. First operand has 92 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 68 states have internal predecessors, (77), 13 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 92 states. [2022-04-08 06:07:50,317 INFO L87 Difference]: Start difference. First operand has 92 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 68 states have internal predecessors, (77), 13 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 92 states. [2022-04-08 06:07:50,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:50,319 INFO L93 Difference]: Finished difference Result 92 states and 101 transitions. [2022-04-08 06:07:50,319 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 101 transitions. [2022-04-08 06:07:50,319 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:50,319 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:50,319 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:07:50,319 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:07:50,319 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 92 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 68 states have internal predecessors, (77), 13 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 06:07:50,321 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 101 transitions. [2022-04-08 06:07:50,321 INFO L78 Accepts]: Start accepts. Automaton has 92 states and 101 transitions. Word has length 86 [2022-04-08 06:07:50,321 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:07:50,321 INFO L478 AbstractCegarLoop]: Abstraction has 92 states and 101 transitions. [2022-04-08 06:07:50,322 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (12), 10 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 9 states have call successors, (10) [2022-04-08 06:07:50,322 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 92 states and 101 transitions. [2022-04-08 06:07:51,117 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:51,117 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 101 transitions. [2022-04-08 06:07:51,118 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 96 [2022-04-08 06:07:51,118 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:51,118 INFO L499 BasicCegarLoop]: trace histogram [9, 9, 8, 8, 8, 8, 8, 8, 8, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:07:51,137 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-08 06:07:51,323 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-08 06:07:51,323 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:51,324 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:51,324 INFO L85 PathProgramCache]: Analyzing trace with hash -399923690, now seen corresponding path program 15 times [2022-04-08 06:07:51,324 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:51,324 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2037794823] [2022-04-08 06:07:51,324 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:51,325 INFO L85 PathProgramCache]: Analyzing trace with hash -399923690, now seen corresponding path program 16 times [2022-04-08 06:07:51,325 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:51,325 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [598289134] [2022-04-08 06:07:51,325 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:51,325 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:51,341 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:51,341 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1688827599] [2022-04-08 06:07:51,341 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:07:51,341 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:51,341 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:51,342 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-08 06:07:51,343 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-08 06:07:51,448 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:07:51,449 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:51,450 INFO L263 TraceCheckSpWp]: Trace formula consists of 253 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-08 06:07:51,469 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:51,471 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:51,935 INFO L272 TraceCheckUtils]: 0: Hoare triple {6687#true} call ULTIMATE.init(); {6687#true} is VALID [2022-04-08 06:07:51,935 INFO L290 TraceCheckUtils]: 1: Hoare triple {6687#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,936 INFO L290 TraceCheckUtils]: 2: Hoare triple {6695#(<= ~counter~0 0)} assume true; {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,936 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6695#(<= ~counter~0 0)} {6687#true} #67#return; {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,936 INFO L272 TraceCheckUtils]: 4: Hoare triple {6695#(<= ~counter~0 0)} call #t~ret7 := main(); {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,937 INFO L290 TraceCheckUtils]: 5: Hoare triple {6695#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,937 INFO L272 TraceCheckUtils]: 6: Hoare triple {6695#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,937 INFO L290 TraceCheckUtils]: 7: Hoare triple {6695#(<= ~counter~0 0)} ~cond := #in~cond; {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,938 INFO L290 TraceCheckUtils]: 8: Hoare triple {6695#(<= ~counter~0 0)} assume !(0 == ~cond); {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,938 INFO L290 TraceCheckUtils]: 9: Hoare triple {6695#(<= ~counter~0 0)} assume true; {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,938 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6695#(<= ~counter~0 0)} {6695#(<= ~counter~0 0)} #59#return; {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,939 INFO L272 TraceCheckUtils]: 11: Hoare triple {6695#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,939 INFO L290 TraceCheckUtils]: 12: Hoare triple {6695#(<= ~counter~0 0)} ~cond := #in~cond; {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,939 INFO L290 TraceCheckUtils]: 13: Hoare triple {6695#(<= ~counter~0 0)} assume !(0 == ~cond); {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,940 INFO L290 TraceCheckUtils]: 14: Hoare triple {6695#(<= ~counter~0 0)} assume true; {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,940 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6695#(<= ~counter~0 0)} {6695#(<= ~counter~0 0)} #61#return; {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,941 INFO L290 TraceCheckUtils]: 16: Hoare triple {6695#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {6695#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:51,941 INFO L290 TraceCheckUtils]: 17: Hoare triple {6695#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6744#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:51,941 INFO L290 TraceCheckUtils]: 18: Hoare triple {6744#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {6744#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:51,942 INFO L272 TraceCheckUtils]: 19: Hoare triple {6744#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6744#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:51,942 INFO L290 TraceCheckUtils]: 20: Hoare triple {6744#(<= ~counter~0 1)} ~cond := #in~cond; {6744#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:51,942 INFO L290 TraceCheckUtils]: 21: Hoare triple {6744#(<= ~counter~0 1)} assume !(0 == ~cond); {6744#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:51,943 INFO L290 TraceCheckUtils]: 22: Hoare triple {6744#(<= ~counter~0 1)} assume true; {6744#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:51,943 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6744#(<= ~counter~0 1)} {6744#(<= ~counter~0 1)} #63#return; {6744#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:51,943 INFO L290 TraceCheckUtils]: 24: Hoare triple {6744#(<= ~counter~0 1)} assume !!(0 != ~r~0); {6744#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:51,944 INFO L290 TraceCheckUtils]: 25: Hoare triple {6744#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6744#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:51,944 INFO L290 TraceCheckUtils]: 26: Hoare triple {6744#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6772#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:51,944 INFO L290 TraceCheckUtils]: 27: Hoare triple {6772#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {6772#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:51,945 INFO L272 TraceCheckUtils]: 28: Hoare triple {6772#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6772#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:51,945 INFO L290 TraceCheckUtils]: 29: Hoare triple {6772#(<= ~counter~0 2)} ~cond := #in~cond; {6772#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:51,945 INFO L290 TraceCheckUtils]: 30: Hoare triple {6772#(<= ~counter~0 2)} assume !(0 == ~cond); {6772#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:51,946 INFO L290 TraceCheckUtils]: 31: Hoare triple {6772#(<= ~counter~0 2)} assume true; {6772#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:51,946 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {6772#(<= ~counter~0 2)} {6772#(<= ~counter~0 2)} #63#return; {6772#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:51,946 INFO L290 TraceCheckUtils]: 33: Hoare triple {6772#(<= ~counter~0 2)} assume !!(0 != ~r~0); {6772#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:51,946 INFO L290 TraceCheckUtils]: 34: Hoare triple {6772#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6772#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:51,947 INFO L290 TraceCheckUtils]: 35: Hoare triple {6772#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6800#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:51,947 INFO L290 TraceCheckUtils]: 36: Hoare triple {6800#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {6800#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:51,948 INFO L272 TraceCheckUtils]: 37: Hoare triple {6800#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6800#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:51,948 INFO L290 TraceCheckUtils]: 38: Hoare triple {6800#(<= ~counter~0 3)} ~cond := #in~cond; {6800#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:51,948 INFO L290 TraceCheckUtils]: 39: Hoare triple {6800#(<= ~counter~0 3)} assume !(0 == ~cond); {6800#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:51,948 INFO L290 TraceCheckUtils]: 40: Hoare triple {6800#(<= ~counter~0 3)} assume true; {6800#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:51,949 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6800#(<= ~counter~0 3)} {6800#(<= ~counter~0 3)} #63#return; {6800#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:51,949 INFO L290 TraceCheckUtils]: 42: Hoare triple {6800#(<= ~counter~0 3)} assume !!(0 != ~r~0); {6800#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:51,949 INFO L290 TraceCheckUtils]: 43: Hoare triple {6800#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6800#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:51,950 INFO L290 TraceCheckUtils]: 44: Hoare triple {6800#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6828#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:51,950 INFO L290 TraceCheckUtils]: 45: Hoare triple {6828#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {6828#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:51,951 INFO L272 TraceCheckUtils]: 46: Hoare triple {6828#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6828#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:51,951 INFO L290 TraceCheckUtils]: 47: Hoare triple {6828#(<= ~counter~0 4)} ~cond := #in~cond; {6828#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:51,951 INFO L290 TraceCheckUtils]: 48: Hoare triple {6828#(<= ~counter~0 4)} assume !(0 == ~cond); {6828#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:51,951 INFO L290 TraceCheckUtils]: 49: Hoare triple {6828#(<= ~counter~0 4)} assume true; {6828#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:51,952 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {6828#(<= ~counter~0 4)} {6828#(<= ~counter~0 4)} #63#return; {6828#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:51,952 INFO L290 TraceCheckUtils]: 51: Hoare triple {6828#(<= ~counter~0 4)} assume !!(0 != ~r~0); {6828#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:51,952 INFO L290 TraceCheckUtils]: 52: Hoare triple {6828#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6828#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:51,953 INFO L290 TraceCheckUtils]: 53: Hoare triple {6828#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6856#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:51,953 INFO L290 TraceCheckUtils]: 54: Hoare triple {6856#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {6856#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:51,953 INFO L272 TraceCheckUtils]: 55: Hoare triple {6856#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6856#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:51,954 INFO L290 TraceCheckUtils]: 56: Hoare triple {6856#(<= ~counter~0 5)} ~cond := #in~cond; {6856#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:51,954 INFO L290 TraceCheckUtils]: 57: Hoare triple {6856#(<= ~counter~0 5)} assume !(0 == ~cond); {6856#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:51,954 INFO L290 TraceCheckUtils]: 58: Hoare triple {6856#(<= ~counter~0 5)} assume true; {6856#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:51,955 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {6856#(<= ~counter~0 5)} {6856#(<= ~counter~0 5)} #63#return; {6856#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:51,956 INFO L290 TraceCheckUtils]: 60: Hoare triple {6856#(<= ~counter~0 5)} assume !!(0 != ~r~0); {6856#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:51,956 INFO L290 TraceCheckUtils]: 61: Hoare triple {6856#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6856#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:51,958 INFO L290 TraceCheckUtils]: 62: Hoare triple {6856#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6884#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:51,958 INFO L290 TraceCheckUtils]: 63: Hoare triple {6884#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {6884#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:51,958 INFO L272 TraceCheckUtils]: 64: Hoare triple {6884#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6884#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:51,959 INFO L290 TraceCheckUtils]: 65: Hoare triple {6884#(<= ~counter~0 6)} ~cond := #in~cond; {6884#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:51,959 INFO L290 TraceCheckUtils]: 66: Hoare triple {6884#(<= ~counter~0 6)} assume !(0 == ~cond); {6884#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:51,959 INFO L290 TraceCheckUtils]: 67: Hoare triple {6884#(<= ~counter~0 6)} assume true; {6884#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:51,960 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {6884#(<= ~counter~0 6)} {6884#(<= ~counter~0 6)} #63#return; {6884#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:51,960 INFO L290 TraceCheckUtils]: 69: Hoare triple {6884#(<= ~counter~0 6)} assume !!(0 != ~r~0); {6884#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:51,960 INFO L290 TraceCheckUtils]: 70: Hoare triple {6884#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6884#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:51,961 INFO L290 TraceCheckUtils]: 71: Hoare triple {6884#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6912#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:51,961 INFO L290 TraceCheckUtils]: 72: Hoare triple {6912#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {6912#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:51,961 INFO L272 TraceCheckUtils]: 73: Hoare triple {6912#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6912#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:51,962 INFO L290 TraceCheckUtils]: 74: Hoare triple {6912#(<= ~counter~0 7)} ~cond := #in~cond; {6912#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:51,962 INFO L290 TraceCheckUtils]: 75: Hoare triple {6912#(<= ~counter~0 7)} assume !(0 == ~cond); {6912#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:51,962 INFO L290 TraceCheckUtils]: 76: Hoare triple {6912#(<= ~counter~0 7)} assume true; {6912#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:51,963 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {6912#(<= ~counter~0 7)} {6912#(<= ~counter~0 7)} #63#return; {6912#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:51,963 INFO L290 TraceCheckUtils]: 78: Hoare triple {6912#(<= ~counter~0 7)} assume !!(0 != ~r~0); {6912#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:51,963 INFO L290 TraceCheckUtils]: 79: Hoare triple {6912#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6912#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:51,963 INFO L290 TraceCheckUtils]: 80: Hoare triple {6912#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6940#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:51,964 INFO L290 TraceCheckUtils]: 81: Hoare triple {6940#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {6940#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:51,964 INFO L272 TraceCheckUtils]: 82: Hoare triple {6940#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6940#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:51,965 INFO L290 TraceCheckUtils]: 83: Hoare triple {6940#(<= ~counter~0 8)} ~cond := #in~cond; {6940#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:51,965 INFO L290 TraceCheckUtils]: 84: Hoare triple {6940#(<= ~counter~0 8)} assume !(0 == ~cond); {6940#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:51,965 INFO L290 TraceCheckUtils]: 85: Hoare triple {6940#(<= ~counter~0 8)} assume true; {6940#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:51,966 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {6940#(<= ~counter~0 8)} {6940#(<= ~counter~0 8)} #63#return; {6940#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:51,966 INFO L290 TraceCheckUtils]: 87: Hoare triple {6940#(<= ~counter~0 8)} assume !!(0 != ~r~0); {6940#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:51,966 INFO L290 TraceCheckUtils]: 88: Hoare triple {6940#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6940#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:51,966 INFO L290 TraceCheckUtils]: 89: Hoare triple {6940#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6968#(<= |main_#t~post6| 8)} is VALID [2022-04-08 06:07:51,967 INFO L290 TraceCheckUtils]: 90: Hoare triple {6968#(<= |main_#t~post6| 8)} assume !(#t~post6 < 20);havoc #t~post6; {6688#false} is VALID [2022-04-08 06:07:51,967 INFO L272 TraceCheckUtils]: 91: Hoare triple {6688#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6688#false} is VALID [2022-04-08 06:07:51,967 INFO L290 TraceCheckUtils]: 92: Hoare triple {6688#false} ~cond := #in~cond; {6688#false} is VALID [2022-04-08 06:07:51,967 INFO L290 TraceCheckUtils]: 93: Hoare triple {6688#false} assume 0 == ~cond; {6688#false} is VALID [2022-04-08 06:07:51,967 INFO L290 TraceCheckUtils]: 94: Hoare triple {6688#false} assume !false; {6688#false} is VALID [2022-04-08 06:07:51,967 INFO L134 CoverageAnalysis]: Checked inductivity of 288 backedges. 16 proven. 268 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:07:51,967 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:07:52,464 INFO L290 TraceCheckUtils]: 94: Hoare triple {6688#false} assume !false; {6688#false} is VALID [2022-04-08 06:07:52,464 INFO L290 TraceCheckUtils]: 93: Hoare triple {6688#false} assume 0 == ~cond; {6688#false} is VALID [2022-04-08 06:07:52,464 INFO L290 TraceCheckUtils]: 92: Hoare triple {6688#false} ~cond := #in~cond; {6688#false} is VALID [2022-04-08 06:07:52,464 INFO L272 TraceCheckUtils]: 91: Hoare triple {6688#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6688#false} is VALID [2022-04-08 06:07:52,465 INFO L290 TraceCheckUtils]: 90: Hoare triple {6996#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {6688#false} is VALID [2022-04-08 06:07:52,465 INFO L290 TraceCheckUtils]: 89: Hoare triple {7000#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6996#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:07:52,465 INFO L290 TraceCheckUtils]: 88: Hoare triple {7000#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7000#(< ~counter~0 20)} is VALID [2022-04-08 06:07:52,466 INFO L290 TraceCheckUtils]: 87: Hoare triple {7000#(< ~counter~0 20)} assume !!(0 != ~r~0); {7000#(< ~counter~0 20)} is VALID [2022-04-08 06:07:52,466 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {6687#true} {7000#(< ~counter~0 20)} #63#return; {7000#(< ~counter~0 20)} is VALID [2022-04-08 06:07:52,466 INFO L290 TraceCheckUtils]: 85: Hoare triple {6687#true} assume true; {6687#true} is VALID [2022-04-08 06:07:52,466 INFO L290 TraceCheckUtils]: 84: Hoare triple {6687#true} assume !(0 == ~cond); {6687#true} is VALID [2022-04-08 06:07:52,466 INFO L290 TraceCheckUtils]: 83: Hoare triple {6687#true} ~cond := #in~cond; {6687#true} is VALID [2022-04-08 06:07:52,466 INFO L272 TraceCheckUtils]: 82: Hoare triple {7000#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6687#true} is VALID [2022-04-08 06:07:52,467 INFO L290 TraceCheckUtils]: 81: Hoare triple {7000#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {7000#(< ~counter~0 20)} is VALID [2022-04-08 06:07:52,467 INFO L290 TraceCheckUtils]: 80: Hoare triple {7028#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7000#(< ~counter~0 20)} is VALID [2022-04-08 06:07:52,467 INFO L290 TraceCheckUtils]: 79: Hoare triple {7028#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7028#(< ~counter~0 19)} is VALID [2022-04-08 06:07:52,468 INFO L290 TraceCheckUtils]: 78: Hoare triple {7028#(< ~counter~0 19)} assume !!(0 != ~r~0); {7028#(< ~counter~0 19)} is VALID [2022-04-08 06:07:52,468 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {6687#true} {7028#(< ~counter~0 19)} #63#return; {7028#(< ~counter~0 19)} is VALID [2022-04-08 06:07:52,468 INFO L290 TraceCheckUtils]: 76: Hoare triple {6687#true} assume true; {6687#true} is VALID [2022-04-08 06:07:52,468 INFO L290 TraceCheckUtils]: 75: Hoare triple {6687#true} assume !(0 == ~cond); {6687#true} is VALID [2022-04-08 06:07:52,468 INFO L290 TraceCheckUtils]: 74: Hoare triple {6687#true} ~cond := #in~cond; {6687#true} is VALID [2022-04-08 06:07:52,468 INFO L272 TraceCheckUtils]: 73: Hoare triple {7028#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6687#true} is VALID [2022-04-08 06:07:52,469 INFO L290 TraceCheckUtils]: 72: Hoare triple {7028#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {7028#(< ~counter~0 19)} is VALID [2022-04-08 06:07:52,469 INFO L290 TraceCheckUtils]: 71: Hoare triple {7056#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7028#(< ~counter~0 19)} is VALID [2022-04-08 06:07:52,469 INFO L290 TraceCheckUtils]: 70: Hoare triple {7056#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7056#(< ~counter~0 18)} is VALID [2022-04-08 06:07:52,469 INFO L290 TraceCheckUtils]: 69: Hoare triple {7056#(< ~counter~0 18)} assume !!(0 != ~r~0); {7056#(< ~counter~0 18)} is VALID [2022-04-08 06:07:52,470 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {6687#true} {7056#(< ~counter~0 18)} #63#return; {7056#(< ~counter~0 18)} is VALID [2022-04-08 06:07:52,470 INFO L290 TraceCheckUtils]: 67: Hoare triple {6687#true} assume true; {6687#true} is VALID [2022-04-08 06:07:52,470 INFO L290 TraceCheckUtils]: 66: Hoare triple {6687#true} assume !(0 == ~cond); {6687#true} is VALID [2022-04-08 06:07:52,470 INFO L290 TraceCheckUtils]: 65: Hoare triple {6687#true} ~cond := #in~cond; {6687#true} is VALID [2022-04-08 06:07:52,470 INFO L272 TraceCheckUtils]: 64: Hoare triple {7056#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6687#true} is VALID [2022-04-08 06:07:52,470 INFO L290 TraceCheckUtils]: 63: Hoare triple {7056#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {7056#(< ~counter~0 18)} is VALID [2022-04-08 06:07:52,471 INFO L290 TraceCheckUtils]: 62: Hoare triple {7084#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7056#(< ~counter~0 18)} is VALID [2022-04-08 06:07:52,471 INFO L290 TraceCheckUtils]: 61: Hoare triple {7084#(< ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7084#(< ~counter~0 17)} is VALID [2022-04-08 06:07:52,471 INFO L290 TraceCheckUtils]: 60: Hoare triple {7084#(< ~counter~0 17)} assume !!(0 != ~r~0); {7084#(< ~counter~0 17)} is VALID [2022-04-08 06:07:52,472 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {6687#true} {7084#(< ~counter~0 17)} #63#return; {7084#(< ~counter~0 17)} is VALID [2022-04-08 06:07:52,472 INFO L290 TraceCheckUtils]: 58: Hoare triple {6687#true} assume true; {6687#true} is VALID [2022-04-08 06:07:52,472 INFO L290 TraceCheckUtils]: 57: Hoare triple {6687#true} assume !(0 == ~cond); {6687#true} is VALID [2022-04-08 06:07:52,472 INFO L290 TraceCheckUtils]: 56: Hoare triple {6687#true} ~cond := #in~cond; {6687#true} is VALID [2022-04-08 06:07:52,472 INFO L272 TraceCheckUtils]: 55: Hoare triple {7084#(< ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6687#true} is VALID [2022-04-08 06:07:52,472 INFO L290 TraceCheckUtils]: 54: Hoare triple {7084#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {7084#(< ~counter~0 17)} is VALID [2022-04-08 06:07:52,473 INFO L290 TraceCheckUtils]: 53: Hoare triple {7112#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7084#(< ~counter~0 17)} is VALID [2022-04-08 06:07:52,473 INFO L290 TraceCheckUtils]: 52: Hoare triple {7112#(< ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7112#(< ~counter~0 16)} is VALID [2022-04-08 06:07:52,473 INFO L290 TraceCheckUtils]: 51: Hoare triple {7112#(< ~counter~0 16)} assume !!(0 != ~r~0); {7112#(< ~counter~0 16)} is VALID [2022-04-08 06:07:52,474 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {6687#true} {7112#(< ~counter~0 16)} #63#return; {7112#(< ~counter~0 16)} is VALID [2022-04-08 06:07:52,474 INFO L290 TraceCheckUtils]: 49: Hoare triple {6687#true} assume true; {6687#true} is VALID [2022-04-08 06:07:52,474 INFO L290 TraceCheckUtils]: 48: Hoare triple {6687#true} assume !(0 == ~cond); {6687#true} is VALID [2022-04-08 06:07:52,474 INFO L290 TraceCheckUtils]: 47: Hoare triple {6687#true} ~cond := #in~cond; {6687#true} is VALID [2022-04-08 06:07:52,474 INFO L272 TraceCheckUtils]: 46: Hoare triple {7112#(< ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6687#true} is VALID [2022-04-08 06:07:52,474 INFO L290 TraceCheckUtils]: 45: Hoare triple {7112#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {7112#(< ~counter~0 16)} is VALID [2022-04-08 06:07:52,475 INFO L290 TraceCheckUtils]: 44: Hoare triple {7140#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7112#(< ~counter~0 16)} is VALID [2022-04-08 06:07:52,475 INFO L290 TraceCheckUtils]: 43: Hoare triple {7140#(< ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7140#(< ~counter~0 15)} is VALID [2022-04-08 06:07:52,475 INFO L290 TraceCheckUtils]: 42: Hoare triple {7140#(< ~counter~0 15)} assume !!(0 != ~r~0); {7140#(< ~counter~0 15)} is VALID [2022-04-08 06:07:52,476 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6687#true} {7140#(< ~counter~0 15)} #63#return; {7140#(< ~counter~0 15)} is VALID [2022-04-08 06:07:52,476 INFO L290 TraceCheckUtils]: 40: Hoare triple {6687#true} assume true; {6687#true} is VALID [2022-04-08 06:07:52,476 INFO L290 TraceCheckUtils]: 39: Hoare triple {6687#true} assume !(0 == ~cond); {6687#true} is VALID [2022-04-08 06:07:52,476 INFO L290 TraceCheckUtils]: 38: Hoare triple {6687#true} ~cond := #in~cond; {6687#true} is VALID [2022-04-08 06:07:52,476 INFO L272 TraceCheckUtils]: 37: Hoare triple {7140#(< ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6687#true} is VALID [2022-04-08 06:07:52,476 INFO L290 TraceCheckUtils]: 36: Hoare triple {7140#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {7140#(< ~counter~0 15)} is VALID [2022-04-08 06:07:52,477 INFO L290 TraceCheckUtils]: 35: Hoare triple {7168#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7140#(< ~counter~0 15)} is VALID [2022-04-08 06:07:52,477 INFO L290 TraceCheckUtils]: 34: Hoare triple {7168#(< ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7168#(< ~counter~0 14)} is VALID [2022-04-08 06:07:52,477 INFO L290 TraceCheckUtils]: 33: Hoare triple {7168#(< ~counter~0 14)} assume !!(0 != ~r~0); {7168#(< ~counter~0 14)} is VALID [2022-04-08 06:07:52,478 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {6687#true} {7168#(< ~counter~0 14)} #63#return; {7168#(< ~counter~0 14)} is VALID [2022-04-08 06:07:52,478 INFO L290 TraceCheckUtils]: 31: Hoare triple {6687#true} assume true; {6687#true} is VALID [2022-04-08 06:07:52,478 INFO L290 TraceCheckUtils]: 30: Hoare triple {6687#true} assume !(0 == ~cond); {6687#true} is VALID [2022-04-08 06:07:52,478 INFO L290 TraceCheckUtils]: 29: Hoare triple {6687#true} ~cond := #in~cond; {6687#true} is VALID [2022-04-08 06:07:52,478 INFO L272 TraceCheckUtils]: 28: Hoare triple {7168#(< ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6687#true} is VALID [2022-04-08 06:07:52,478 INFO L290 TraceCheckUtils]: 27: Hoare triple {7168#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {7168#(< ~counter~0 14)} is VALID [2022-04-08 06:07:52,478 INFO L290 TraceCheckUtils]: 26: Hoare triple {7196#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7168#(< ~counter~0 14)} is VALID [2022-04-08 06:07:52,479 INFO L290 TraceCheckUtils]: 25: Hoare triple {7196#(< ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7196#(< ~counter~0 13)} is VALID [2022-04-08 06:07:52,479 INFO L290 TraceCheckUtils]: 24: Hoare triple {7196#(< ~counter~0 13)} assume !!(0 != ~r~0); {7196#(< ~counter~0 13)} is VALID [2022-04-08 06:07:52,479 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6687#true} {7196#(< ~counter~0 13)} #63#return; {7196#(< ~counter~0 13)} is VALID [2022-04-08 06:07:52,480 INFO L290 TraceCheckUtils]: 22: Hoare triple {6687#true} assume true; {6687#true} is VALID [2022-04-08 06:07:52,480 INFO L290 TraceCheckUtils]: 21: Hoare triple {6687#true} assume !(0 == ~cond); {6687#true} is VALID [2022-04-08 06:07:52,480 INFO L290 TraceCheckUtils]: 20: Hoare triple {6687#true} ~cond := #in~cond; {6687#true} is VALID [2022-04-08 06:07:52,480 INFO L272 TraceCheckUtils]: 19: Hoare triple {7196#(< ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6687#true} is VALID [2022-04-08 06:07:52,480 INFO L290 TraceCheckUtils]: 18: Hoare triple {7196#(< ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {7196#(< ~counter~0 13)} is VALID [2022-04-08 06:07:52,480 INFO L290 TraceCheckUtils]: 17: Hoare triple {7224#(< ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7196#(< ~counter~0 13)} is VALID [2022-04-08 06:07:52,481 INFO L290 TraceCheckUtils]: 16: Hoare triple {7224#(< ~counter~0 12)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {7224#(< ~counter~0 12)} is VALID [2022-04-08 06:07:52,481 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6687#true} {7224#(< ~counter~0 12)} #61#return; {7224#(< ~counter~0 12)} is VALID [2022-04-08 06:07:52,481 INFO L290 TraceCheckUtils]: 14: Hoare triple {6687#true} assume true; {6687#true} is VALID [2022-04-08 06:07:52,481 INFO L290 TraceCheckUtils]: 13: Hoare triple {6687#true} assume !(0 == ~cond); {6687#true} is VALID [2022-04-08 06:07:52,481 INFO L290 TraceCheckUtils]: 12: Hoare triple {6687#true} ~cond := #in~cond; {6687#true} is VALID [2022-04-08 06:07:52,481 INFO L272 TraceCheckUtils]: 11: Hoare triple {7224#(< ~counter~0 12)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {6687#true} is VALID [2022-04-08 06:07:52,482 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6687#true} {7224#(< ~counter~0 12)} #59#return; {7224#(< ~counter~0 12)} is VALID [2022-04-08 06:07:52,482 INFO L290 TraceCheckUtils]: 9: Hoare triple {6687#true} assume true; {6687#true} is VALID [2022-04-08 06:07:52,482 INFO L290 TraceCheckUtils]: 8: Hoare triple {6687#true} assume !(0 == ~cond); {6687#true} is VALID [2022-04-08 06:07:52,482 INFO L290 TraceCheckUtils]: 7: Hoare triple {6687#true} ~cond := #in~cond; {6687#true} is VALID [2022-04-08 06:07:52,482 INFO L272 TraceCheckUtils]: 6: Hoare triple {7224#(< ~counter~0 12)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {6687#true} is VALID [2022-04-08 06:07:52,482 INFO L290 TraceCheckUtils]: 5: Hoare triple {7224#(< ~counter~0 12)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {7224#(< ~counter~0 12)} is VALID [2022-04-08 06:07:52,482 INFO L272 TraceCheckUtils]: 4: Hoare triple {7224#(< ~counter~0 12)} call #t~ret7 := main(); {7224#(< ~counter~0 12)} is VALID [2022-04-08 06:07:52,483 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7224#(< ~counter~0 12)} {6687#true} #67#return; {7224#(< ~counter~0 12)} is VALID [2022-04-08 06:07:52,483 INFO L290 TraceCheckUtils]: 2: Hoare triple {7224#(< ~counter~0 12)} assume true; {7224#(< ~counter~0 12)} is VALID [2022-04-08 06:07:52,483 INFO L290 TraceCheckUtils]: 1: Hoare triple {6687#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7224#(< ~counter~0 12)} is VALID [2022-04-08 06:07:52,484 INFO L272 TraceCheckUtils]: 0: Hoare triple {6687#true} call ULTIMATE.init(); {6687#true} is VALID [2022-04-08 06:07:52,484 INFO L134 CoverageAnalysis]: Checked inductivity of 288 backedges. 16 proven. 156 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-08 06:07:52,484 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:52,484 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [598289134] [2022-04-08 06:07:52,484 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:52,484 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1688827599] [2022-04-08 06:07:52,484 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1688827599] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:07:52,484 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:07:52,484 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-08 06:07:52,485 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:52,485 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2037794823] [2022-04-08 06:07:52,485 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2037794823] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:52,485 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:52,485 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-08 06:07:52,485 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [386831959] [2022-04-08 06:07:52,485 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:52,486 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (13), 11 states have call predecessors, (13), 9 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) Word has length 95 [2022-04-08 06:07:52,486 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:52,486 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (13), 11 states have call predecessors, (13), 9 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-04-08 06:07:52,551 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-08 06:07:52,551 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-08 06:07:52,551 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:52,552 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-08 06:07:52,552 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-08 06:07:52,552 INFO L87 Difference]: Start difference. First operand 92 states and 101 transitions. Second operand has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (13), 11 states have call predecessors, (13), 9 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-04-08 06:07:52,896 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:52,897 INFO L93 Difference]: Finished difference Result 106 states and 116 transitions. [2022-04-08 06:07:52,897 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-08 06:07:52,897 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (13), 11 states have call predecessors, (13), 9 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) Word has length 95 [2022-04-08 06:07:52,897 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:07:52,898 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (13), 11 states have call predecessors, (13), 9 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-04-08 06:07:52,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 115 transitions. [2022-04-08 06:07:52,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (13), 11 states have call predecessors, (13), 9 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-04-08 06:07:52,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 115 transitions. [2022-04-08 06:07:52,902 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 115 transitions. [2022-04-08 06:07:52,987 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-08 06:07:52,989 INFO L225 Difference]: With dead ends: 106 [2022-04-08 06:07:52,989 INFO L226 Difference]: Without dead ends: 101 [2022-04-08 06:07:52,990 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 197 GetRequests, 169 SyntacticMatches, 0 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 53 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=363, Invalid=507, Unknown=0, NotChecked=0, Total=870 [2022-04-08 06:07:52,990 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 31 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 146 SdHoareTripleChecker+Invalid, 67 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:07:52,991 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 146 Invalid, 67 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:07:52,991 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 101 states. [2022-04-08 06:07:53,079 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 101 to 101. [2022-04-08 06:07:53,079 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:07:53,079 INFO L82 GeneralOperation]: Start isEquivalent. First operand 101 states. Second operand has 101 states, 75 states have (on average 1.1333333333333333) internal successors, (85), 75 states have internal predecessors, (85), 14 states have call successors, (14), 13 states have call predecessors, (14), 11 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 06:07:53,080 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand has 101 states, 75 states have (on average 1.1333333333333333) internal successors, (85), 75 states have internal predecessors, (85), 14 states have call successors, (14), 13 states have call predecessors, (14), 11 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 06:07:53,080 INFO L87 Difference]: Start difference. First operand 101 states. Second operand has 101 states, 75 states have (on average 1.1333333333333333) internal successors, (85), 75 states have internal predecessors, (85), 14 states have call successors, (14), 13 states have call predecessors, (14), 11 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 06:07:53,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:53,082 INFO L93 Difference]: Finished difference Result 101 states and 111 transitions. [2022-04-08 06:07:53,082 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 111 transitions. [2022-04-08 06:07:53,082 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:53,082 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:53,083 INFO L74 IsIncluded]: Start isIncluded. First operand has 101 states, 75 states have (on average 1.1333333333333333) internal successors, (85), 75 states have internal predecessors, (85), 14 states have call successors, (14), 13 states have call predecessors, (14), 11 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 101 states. [2022-04-08 06:07:53,083 INFO L87 Difference]: Start difference. First operand has 101 states, 75 states have (on average 1.1333333333333333) internal successors, (85), 75 states have internal predecessors, (85), 14 states have call successors, (14), 13 states have call predecessors, (14), 11 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 101 states. [2022-04-08 06:07:53,085 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:53,085 INFO L93 Difference]: Finished difference Result 101 states and 111 transitions. [2022-04-08 06:07:53,085 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 111 transitions. [2022-04-08 06:07:53,085 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:53,085 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:53,085 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:07:53,085 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:07:53,086 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 101 states, 75 states have (on average 1.1333333333333333) internal successors, (85), 75 states have internal predecessors, (85), 14 states have call successors, (14), 13 states have call predecessors, (14), 11 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-08 06:07:53,087 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 111 transitions. [2022-04-08 06:07:53,088 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 111 transitions. Word has length 95 [2022-04-08 06:07:53,088 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:07:53,088 INFO L478 AbstractCegarLoop]: Abstraction has 101 states and 111 transitions. [2022-04-08 06:07:53,088 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (13), 11 states have call predecessors, (13), 9 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-04-08 06:07:53,088 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 101 states and 111 transitions. [2022-04-08 06:07:54,683 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-08 06:07:54,683 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 111 transitions. [2022-04-08 06:07:54,684 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2022-04-08 06:07:54,684 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:54,684 INFO L499 BasicCegarLoop]: trace histogram [10, 10, 9, 9, 9, 9, 9, 9, 9, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:07:54,701 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Ended with exit code 0 [2022-04-08 06:07:54,885 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-08 06:07:54,885 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:54,885 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:54,885 INFO L85 PathProgramCache]: Analyzing trace with hash 1717228060, now seen corresponding path program 17 times [2022-04-08 06:07:54,886 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:54,886 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1735967476] [2022-04-08 06:07:54,886 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:54,886 INFO L85 PathProgramCache]: Analyzing trace with hash 1717228060, now seen corresponding path program 18 times [2022-04-08 06:07:54,886 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:54,886 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [439327832] [2022-04-08 06:07:54,886 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:54,886 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:54,900 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:54,900 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2081286684] [2022-04-08 06:07:54,900 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:07:54,900 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:54,900 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:54,901 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-08 06:07:54,902 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-08 06:07:55,059 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 10 check-sat command(s) [2022-04-08 06:07:55,059 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:55,061 INFO L263 TraceCheckSpWp]: Trace formula consists of 273 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-08 06:07:55,101 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:55,103 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:55,649 INFO L272 TraceCheckUtils]: 0: Hoare triple {7910#true} call ULTIMATE.init(); {7910#true} is VALID [2022-04-08 06:07:55,650 INFO L290 TraceCheckUtils]: 1: Hoare triple {7910#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,650 INFO L290 TraceCheckUtils]: 2: Hoare triple {7918#(<= ~counter~0 0)} assume true; {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,651 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7918#(<= ~counter~0 0)} {7910#true} #67#return; {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,651 INFO L272 TraceCheckUtils]: 4: Hoare triple {7918#(<= ~counter~0 0)} call #t~ret7 := main(); {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,651 INFO L290 TraceCheckUtils]: 5: Hoare triple {7918#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,652 INFO L272 TraceCheckUtils]: 6: Hoare triple {7918#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,652 INFO L290 TraceCheckUtils]: 7: Hoare triple {7918#(<= ~counter~0 0)} ~cond := #in~cond; {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,652 INFO L290 TraceCheckUtils]: 8: Hoare triple {7918#(<= ~counter~0 0)} assume !(0 == ~cond); {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,652 INFO L290 TraceCheckUtils]: 9: Hoare triple {7918#(<= ~counter~0 0)} assume true; {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,653 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7918#(<= ~counter~0 0)} {7918#(<= ~counter~0 0)} #59#return; {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,653 INFO L272 TraceCheckUtils]: 11: Hoare triple {7918#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,654 INFO L290 TraceCheckUtils]: 12: Hoare triple {7918#(<= ~counter~0 0)} ~cond := #in~cond; {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,654 INFO L290 TraceCheckUtils]: 13: Hoare triple {7918#(<= ~counter~0 0)} assume !(0 == ~cond); {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,654 INFO L290 TraceCheckUtils]: 14: Hoare triple {7918#(<= ~counter~0 0)} assume true; {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,654 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7918#(<= ~counter~0 0)} {7918#(<= ~counter~0 0)} #61#return; {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,655 INFO L290 TraceCheckUtils]: 16: Hoare triple {7918#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {7918#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:55,655 INFO L290 TraceCheckUtils]: 17: Hoare triple {7918#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7967#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:55,656 INFO L290 TraceCheckUtils]: 18: Hoare triple {7967#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {7967#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:55,656 INFO L272 TraceCheckUtils]: 19: Hoare triple {7967#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7967#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:55,656 INFO L290 TraceCheckUtils]: 20: Hoare triple {7967#(<= ~counter~0 1)} ~cond := #in~cond; {7967#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:55,657 INFO L290 TraceCheckUtils]: 21: Hoare triple {7967#(<= ~counter~0 1)} assume !(0 == ~cond); {7967#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:55,657 INFO L290 TraceCheckUtils]: 22: Hoare triple {7967#(<= ~counter~0 1)} assume true; {7967#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:55,657 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7967#(<= ~counter~0 1)} {7967#(<= ~counter~0 1)} #63#return; {7967#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:55,658 INFO L290 TraceCheckUtils]: 24: Hoare triple {7967#(<= ~counter~0 1)} assume !!(0 != ~r~0); {7967#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:55,658 INFO L290 TraceCheckUtils]: 25: Hoare triple {7967#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7967#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:55,658 INFO L290 TraceCheckUtils]: 26: Hoare triple {7967#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7995#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:55,659 INFO L290 TraceCheckUtils]: 27: Hoare triple {7995#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {7995#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:55,659 INFO L272 TraceCheckUtils]: 28: Hoare triple {7995#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7995#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:55,659 INFO L290 TraceCheckUtils]: 29: Hoare triple {7995#(<= ~counter~0 2)} ~cond := #in~cond; {7995#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:55,660 INFO L290 TraceCheckUtils]: 30: Hoare triple {7995#(<= ~counter~0 2)} assume !(0 == ~cond); {7995#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:55,660 INFO L290 TraceCheckUtils]: 31: Hoare triple {7995#(<= ~counter~0 2)} assume true; {7995#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:55,660 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {7995#(<= ~counter~0 2)} {7995#(<= ~counter~0 2)} #63#return; {7995#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:55,661 INFO L290 TraceCheckUtils]: 33: Hoare triple {7995#(<= ~counter~0 2)} assume !!(0 != ~r~0); {7995#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:55,661 INFO L290 TraceCheckUtils]: 34: Hoare triple {7995#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7995#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:55,661 INFO L290 TraceCheckUtils]: 35: Hoare triple {7995#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8023#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:55,662 INFO L290 TraceCheckUtils]: 36: Hoare triple {8023#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {8023#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:55,662 INFO L272 TraceCheckUtils]: 37: Hoare triple {8023#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {8023#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:55,662 INFO L290 TraceCheckUtils]: 38: Hoare triple {8023#(<= ~counter~0 3)} ~cond := #in~cond; {8023#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:55,663 INFO L290 TraceCheckUtils]: 39: Hoare triple {8023#(<= ~counter~0 3)} assume !(0 == ~cond); {8023#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:55,663 INFO L290 TraceCheckUtils]: 40: Hoare triple {8023#(<= ~counter~0 3)} assume true; {8023#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:55,663 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8023#(<= ~counter~0 3)} {8023#(<= ~counter~0 3)} #63#return; {8023#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:55,664 INFO L290 TraceCheckUtils]: 42: Hoare triple {8023#(<= ~counter~0 3)} assume !!(0 != ~r~0); {8023#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:55,664 INFO L290 TraceCheckUtils]: 43: Hoare triple {8023#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8023#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:55,664 INFO L290 TraceCheckUtils]: 44: Hoare triple {8023#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8051#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:55,665 INFO L290 TraceCheckUtils]: 45: Hoare triple {8051#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {8051#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:55,665 INFO L272 TraceCheckUtils]: 46: Hoare triple {8051#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {8051#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:55,665 INFO L290 TraceCheckUtils]: 47: Hoare triple {8051#(<= ~counter~0 4)} ~cond := #in~cond; {8051#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:55,666 INFO L290 TraceCheckUtils]: 48: Hoare triple {8051#(<= ~counter~0 4)} assume !(0 == ~cond); {8051#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:55,666 INFO L290 TraceCheckUtils]: 49: Hoare triple {8051#(<= ~counter~0 4)} assume true; {8051#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:55,666 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8051#(<= ~counter~0 4)} {8051#(<= ~counter~0 4)} #63#return; {8051#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:55,667 INFO L290 TraceCheckUtils]: 51: Hoare triple {8051#(<= ~counter~0 4)} assume !!(0 != ~r~0); {8051#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:55,667 INFO L290 TraceCheckUtils]: 52: Hoare triple {8051#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8051#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:55,667 INFO L290 TraceCheckUtils]: 53: Hoare triple {8051#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8079#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:55,668 INFO L290 TraceCheckUtils]: 54: Hoare triple {8079#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {8079#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:55,668 INFO L272 TraceCheckUtils]: 55: Hoare triple {8079#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {8079#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:55,668 INFO L290 TraceCheckUtils]: 56: Hoare triple {8079#(<= ~counter~0 5)} ~cond := #in~cond; {8079#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:55,669 INFO L290 TraceCheckUtils]: 57: Hoare triple {8079#(<= ~counter~0 5)} assume !(0 == ~cond); {8079#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:55,669 INFO L290 TraceCheckUtils]: 58: Hoare triple {8079#(<= ~counter~0 5)} assume true; {8079#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:55,669 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {8079#(<= ~counter~0 5)} {8079#(<= ~counter~0 5)} #63#return; {8079#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:55,670 INFO L290 TraceCheckUtils]: 60: Hoare triple {8079#(<= ~counter~0 5)} assume !!(0 != ~r~0); {8079#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:55,670 INFO L290 TraceCheckUtils]: 61: Hoare triple {8079#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8079#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:55,670 INFO L290 TraceCheckUtils]: 62: Hoare triple {8079#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8107#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:55,671 INFO L290 TraceCheckUtils]: 63: Hoare triple {8107#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {8107#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:55,671 INFO L272 TraceCheckUtils]: 64: Hoare triple {8107#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {8107#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:55,671 INFO L290 TraceCheckUtils]: 65: Hoare triple {8107#(<= ~counter~0 6)} ~cond := #in~cond; {8107#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:55,672 INFO L290 TraceCheckUtils]: 66: Hoare triple {8107#(<= ~counter~0 6)} assume !(0 == ~cond); {8107#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:55,672 INFO L290 TraceCheckUtils]: 67: Hoare triple {8107#(<= ~counter~0 6)} assume true; {8107#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:55,672 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {8107#(<= ~counter~0 6)} {8107#(<= ~counter~0 6)} #63#return; {8107#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:55,673 INFO L290 TraceCheckUtils]: 69: Hoare triple {8107#(<= ~counter~0 6)} assume !!(0 != ~r~0); {8107#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:55,673 INFO L290 TraceCheckUtils]: 70: Hoare triple {8107#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8107#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:55,673 INFO L290 TraceCheckUtils]: 71: Hoare triple {8107#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8135#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:55,674 INFO L290 TraceCheckUtils]: 72: Hoare triple {8135#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {8135#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:55,674 INFO L272 TraceCheckUtils]: 73: Hoare triple {8135#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {8135#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:55,674 INFO L290 TraceCheckUtils]: 74: Hoare triple {8135#(<= ~counter~0 7)} ~cond := #in~cond; {8135#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:55,675 INFO L290 TraceCheckUtils]: 75: Hoare triple {8135#(<= ~counter~0 7)} assume !(0 == ~cond); {8135#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:55,675 INFO L290 TraceCheckUtils]: 76: Hoare triple {8135#(<= ~counter~0 7)} assume true; {8135#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:55,676 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {8135#(<= ~counter~0 7)} {8135#(<= ~counter~0 7)} #63#return; {8135#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:55,676 INFO L290 TraceCheckUtils]: 78: Hoare triple {8135#(<= ~counter~0 7)} assume !!(0 != ~r~0); {8135#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:55,676 INFO L290 TraceCheckUtils]: 79: Hoare triple {8135#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8135#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:55,676 INFO L290 TraceCheckUtils]: 80: Hoare triple {8135#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8163#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:55,677 INFO L290 TraceCheckUtils]: 81: Hoare triple {8163#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {8163#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:55,677 INFO L272 TraceCheckUtils]: 82: Hoare triple {8163#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {8163#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:55,677 INFO L290 TraceCheckUtils]: 83: Hoare triple {8163#(<= ~counter~0 8)} ~cond := #in~cond; {8163#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:55,678 INFO L290 TraceCheckUtils]: 84: Hoare triple {8163#(<= ~counter~0 8)} assume !(0 == ~cond); {8163#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:55,678 INFO L290 TraceCheckUtils]: 85: Hoare triple {8163#(<= ~counter~0 8)} assume true; {8163#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:55,679 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {8163#(<= ~counter~0 8)} {8163#(<= ~counter~0 8)} #63#return; {8163#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:55,679 INFO L290 TraceCheckUtils]: 87: Hoare triple {8163#(<= ~counter~0 8)} assume !!(0 != ~r~0); {8163#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:55,679 INFO L290 TraceCheckUtils]: 88: Hoare triple {8163#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8163#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:55,679 INFO L290 TraceCheckUtils]: 89: Hoare triple {8163#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8191#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:55,680 INFO L290 TraceCheckUtils]: 90: Hoare triple {8191#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {8191#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:55,680 INFO L272 TraceCheckUtils]: 91: Hoare triple {8191#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {8191#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:55,681 INFO L290 TraceCheckUtils]: 92: Hoare triple {8191#(<= ~counter~0 9)} ~cond := #in~cond; {8191#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:55,681 INFO L290 TraceCheckUtils]: 93: Hoare triple {8191#(<= ~counter~0 9)} assume !(0 == ~cond); {8191#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:55,681 INFO L290 TraceCheckUtils]: 94: Hoare triple {8191#(<= ~counter~0 9)} assume true; {8191#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:55,682 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {8191#(<= ~counter~0 9)} {8191#(<= ~counter~0 9)} #63#return; {8191#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:55,682 INFO L290 TraceCheckUtils]: 96: Hoare triple {8191#(<= ~counter~0 9)} assume !!(0 != ~r~0); {8191#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:55,682 INFO L290 TraceCheckUtils]: 97: Hoare triple {8191#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8191#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:55,682 INFO L290 TraceCheckUtils]: 98: Hoare triple {8191#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8219#(<= |main_#t~post6| 9)} is VALID [2022-04-08 06:07:55,683 INFO L290 TraceCheckUtils]: 99: Hoare triple {8219#(<= |main_#t~post6| 9)} assume !(#t~post6 < 20);havoc #t~post6; {7911#false} is VALID [2022-04-08 06:07:55,683 INFO L272 TraceCheckUtils]: 100: Hoare triple {7911#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7911#false} is VALID [2022-04-08 06:07:55,683 INFO L290 TraceCheckUtils]: 101: Hoare triple {7911#false} ~cond := #in~cond; {7911#false} is VALID [2022-04-08 06:07:55,683 INFO L290 TraceCheckUtils]: 102: Hoare triple {7911#false} assume 0 == ~cond; {7911#false} is VALID [2022-04-08 06:07:55,683 INFO L290 TraceCheckUtils]: 103: Hoare triple {7911#false} assume !false; {7911#false} is VALID [2022-04-08 06:07:55,683 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 18 proven. 342 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:07:55,683 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:07:56,242 INFO L290 TraceCheckUtils]: 103: Hoare triple {7911#false} assume !false; {7911#false} is VALID [2022-04-08 06:07:56,242 INFO L290 TraceCheckUtils]: 102: Hoare triple {7911#false} assume 0 == ~cond; {7911#false} is VALID [2022-04-08 06:07:56,243 INFO L290 TraceCheckUtils]: 101: Hoare triple {7911#false} ~cond := #in~cond; {7911#false} is VALID [2022-04-08 06:07:56,243 INFO L272 TraceCheckUtils]: 100: Hoare triple {7911#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7911#false} is VALID [2022-04-08 06:07:56,243 INFO L290 TraceCheckUtils]: 99: Hoare triple {8247#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {7911#false} is VALID [2022-04-08 06:07:56,243 INFO L290 TraceCheckUtils]: 98: Hoare triple {8251#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8247#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:07:56,243 INFO L290 TraceCheckUtils]: 97: Hoare triple {8251#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8251#(< ~counter~0 20)} is VALID [2022-04-08 06:07:56,244 INFO L290 TraceCheckUtils]: 96: Hoare triple {8251#(< ~counter~0 20)} assume !!(0 != ~r~0); {8251#(< ~counter~0 20)} is VALID [2022-04-08 06:07:56,244 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {7910#true} {8251#(< ~counter~0 20)} #63#return; {8251#(< ~counter~0 20)} is VALID [2022-04-08 06:07:56,244 INFO L290 TraceCheckUtils]: 94: Hoare triple {7910#true} assume true; {7910#true} is VALID [2022-04-08 06:07:56,244 INFO L290 TraceCheckUtils]: 93: Hoare triple {7910#true} assume !(0 == ~cond); {7910#true} is VALID [2022-04-08 06:07:56,244 INFO L290 TraceCheckUtils]: 92: Hoare triple {7910#true} ~cond := #in~cond; {7910#true} is VALID [2022-04-08 06:07:56,245 INFO L272 TraceCheckUtils]: 91: Hoare triple {8251#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7910#true} is VALID [2022-04-08 06:07:56,245 INFO L290 TraceCheckUtils]: 90: Hoare triple {8251#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {8251#(< ~counter~0 20)} is VALID [2022-04-08 06:07:56,245 INFO L290 TraceCheckUtils]: 89: Hoare triple {8279#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8251#(< ~counter~0 20)} is VALID [2022-04-08 06:07:56,246 INFO L290 TraceCheckUtils]: 88: Hoare triple {8279#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8279#(< ~counter~0 19)} is VALID [2022-04-08 06:07:56,246 INFO L290 TraceCheckUtils]: 87: Hoare triple {8279#(< ~counter~0 19)} assume !!(0 != ~r~0); {8279#(< ~counter~0 19)} is VALID [2022-04-08 06:07:56,246 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {7910#true} {8279#(< ~counter~0 19)} #63#return; {8279#(< ~counter~0 19)} is VALID [2022-04-08 06:07:56,246 INFO L290 TraceCheckUtils]: 85: Hoare triple {7910#true} assume true; {7910#true} is VALID [2022-04-08 06:07:56,246 INFO L290 TraceCheckUtils]: 84: Hoare triple {7910#true} assume !(0 == ~cond); {7910#true} is VALID [2022-04-08 06:07:56,247 INFO L290 TraceCheckUtils]: 83: Hoare triple {7910#true} ~cond := #in~cond; {7910#true} is VALID [2022-04-08 06:07:56,247 INFO L272 TraceCheckUtils]: 82: Hoare triple {8279#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7910#true} is VALID [2022-04-08 06:07:56,247 INFO L290 TraceCheckUtils]: 81: Hoare triple {8279#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {8279#(< ~counter~0 19)} is VALID [2022-04-08 06:07:56,247 INFO L290 TraceCheckUtils]: 80: Hoare triple {8307#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8279#(< ~counter~0 19)} is VALID [2022-04-08 06:07:56,248 INFO L290 TraceCheckUtils]: 79: Hoare triple {8307#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8307#(< ~counter~0 18)} is VALID [2022-04-08 06:07:56,248 INFO L290 TraceCheckUtils]: 78: Hoare triple {8307#(< ~counter~0 18)} assume !!(0 != ~r~0); {8307#(< ~counter~0 18)} is VALID [2022-04-08 06:07:56,248 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {7910#true} {8307#(< ~counter~0 18)} #63#return; {8307#(< ~counter~0 18)} is VALID [2022-04-08 06:07:56,248 INFO L290 TraceCheckUtils]: 76: Hoare triple {7910#true} assume true; {7910#true} is VALID [2022-04-08 06:07:56,248 INFO L290 TraceCheckUtils]: 75: Hoare triple {7910#true} assume !(0 == ~cond); {7910#true} is VALID [2022-04-08 06:07:56,249 INFO L290 TraceCheckUtils]: 74: Hoare triple {7910#true} ~cond := #in~cond; {7910#true} is VALID [2022-04-08 06:07:56,249 INFO L272 TraceCheckUtils]: 73: Hoare triple {8307#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7910#true} is VALID [2022-04-08 06:07:56,249 INFO L290 TraceCheckUtils]: 72: Hoare triple {8307#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {8307#(< ~counter~0 18)} is VALID [2022-04-08 06:07:56,249 INFO L290 TraceCheckUtils]: 71: Hoare triple {8335#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8307#(< ~counter~0 18)} is VALID [2022-04-08 06:07:56,250 INFO L290 TraceCheckUtils]: 70: Hoare triple {8335#(< ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8335#(< ~counter~0 17)} is VALID [2022-04-08 06:07:56,250 INFO L290 TraceCheckUtils]: 69: Hoare triple {8335#(< ~counter~0 17)} assume !!(0 != ~r~0); {8335#(< ~counter~0 17)} is VALID [2022-04-08 06:07:56,251 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {7910#true} {8335#(< ~counter~0 17)} #63#return; {8335#(< ~counter~0 17)} is VALID [2022-04-08 06:07:56,251 INFO L290 TraceCheckUtils]: 67: Hoare triple {7910#true} assume true; {7910#true} is VALID [2022-04-08 06:07:56,251 INFO L290 TraceCheckUtils]: 66: Hoare triple {7910#true} assume !(0 == ~cond); {7910#true} is VALID [2022-04-08 06:07:56,251 INFO L290 TraceCheckUtils]: 65: Hoare triple {7910#true} ~cond := #in~cond; {7910#true} is VALID [2022-04-08 06:07:56,251 INFO L272 TraceCheckUtils]: 64: Hoare triple {8335#(< ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7910#true} is VALID [2022-04-08 06:07:56,251 INFO L290 TraceCheckUtils]: 63: Hoare triple {8335#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {8335#(< ~counter~0 17)} is VALID [2022-04-08 06:07:56,256 INFO L290 TraceCheckUtils]: 62: Hoare triple {8363#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8335#(< ~counter~0 17)} is VALID [2022-04-08 06:07:56,256 INFO L290 TraceCheckUtils]: 61: Hoare triple {8363#(< ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8363#(< ~counter~0 16)} is VALID [2022-04-08 06:07:56,257 INFO L290 TraceCheckUtils]: 60: Hoare triple {8363#(< ~counter~0 16)} assume !!(0 != ~r~0); {8363#(< ~counter~0 16)} is VALID [2022-04-08 06:07:56,257 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {7910#true} {8363#(< ~counter~0 16)} #63#return; {8363#(< ~counter~0 16)} is VALID [2022-04-08 06:07:56,257 INFO L290 TraceCheckUtils]: 58: Hoare triple {7910#true} assume true; {7910#true} is VALID [2022-04-08 06:07:56,257 INFO L290 TraceCheckUtils]: 57: Hoare triple {7910#true} assume !(0 == ~cond); {7910#true} is VALID [2022-04-08 06:07:56,257 INFO L290 TraceCheckUtils]: 56: Hoare triple {7910#true} ~cond := #in~cond; {7910#true} is VALID [2022-04-08 06:07:56,258 INFO L272 TraceCheckUtils]: 55: Hoare triple {8363#(< ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7910#true} is VALID [2022-04-08 06:07:56,258 INFO L290 TraceCheckUtils]: 54: Hoare triple {8363#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {8363#(< ~counter~0 16)} is VALID [2022-04-08 06:07:56,258 INFO L290 TraceCheckUtils]: 53: Hoare triple {8391#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8363#(< ~counter~0 16)} is VALID [2022-04-08 06:07:56,258 INFO L290 TraceCheckUtils]: 52: Hoare triple {8391#(< ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8391#(< ~counter~0 15)} is VALID [2022-04-08 06:07:56,259 INFO L290 TraceCheckUtils]: 51: Hoare triple {8391#(< ~counter~0 15)} assume !!(0 != ~r~0); {8391#(< ~counter~0 15)} is VALID [2022-04-08 06:07:56,259 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {7910#true} {8391#(< ~counter~0 15)} #63#return; {8391#(< ~counter~0 15)} is VALID [2022-04-08 06:07:56,259 INFO L290 TraceCheckUtils]: 49: Hoare triple {7910#true} assume true; {7910#true} is VALID [2022-04-08 06:07:56,259 INFO L290 TraceCheckUtils]: 48: Hoare triple {7910#true} assume !(0 == ~cond); {7910#true} is VALID [2022-04-08 06:07:56,259 INFO L290 TraceCheckUtils]: 47: Hoare triple {7910#true} ~cond := #in~cond; {7910#true} is VALID [2022-04-08 06:07:56,259 INFO L272 TraceCheckUtils]: 46: Hoare triple {8391#(< ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7910#true} is VALID [2022-04-08 06:07:56,260 INFO L290 TraceCheckUtils]: 45: Hoare triple {8391#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {8391#(< ~counter~0 15)} is VALID [2022-04-08 06:07:56,260 INFO L290 TraceCheckUtils]: 44: Hoare triple {8419#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8391#(< ~counter~0 15)} is VALID [2022-04-08 06:07:56,260 INFO L290 TraceCheckUtils]: 43: Hoare triple {8419#(< ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8419#(< ~counter~0 14)} is VALID [2022-04-08 06:07:56,261 INFO L290 TraceCheckUtils]: 42: Hoare triple {8419#(< ~counter~0 14)} assume !!(0 != ~r~0); {8419#(< ~counter~0 14)} is VALID [2022-04-08 06:07:56,261 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7910#true} {8419#(< ~counter~0 14)} #63#return; {8419#(< ~counter~0 14)} is VALID [2022-04-08 06:07:56,261 INFO L290 TraceCheckUtils]: 40: Hoare triple {7910#true} assume true; {7910#true} is VALID [2022-04-08 06:07:56,261 INFO L290 TraceCheckUtils]: 39: Hoare triple {7910#true} assume !(0 == ~cond); {7910#true} is VALID [2022-04-08 06:07:56,261 INFO L290 TraceCheckUtils]: 38: Hoare triple {7910#true} ~cond := #in~cond; {7910#true} is VALID [2022-04-08 06:07:56,261 INFO L272 TraceCheckUtils]: 37: Hoare triple {8419#(< ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7910#true} is VALID [2022-04-08 06:07:56,262 INFO L290 TraceCheckUtils]: 36: Hoare triple {8419#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {8419#(< ~counter~0 14)} is VALID [2022-04-08 06:07:56,262 INFO L290 TraceCheckUtils]: 35: Hoare triple {8447#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8419#(< ~counter~0 14)} is VALID [2022-04-08 06:07:56,262 INFO L290 TraceCheckUtils]: 34: Hoare triple {8447#(< ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8447#(< ~counter~0 13)} is VALID [2022-04-08 06:07:56,263 INFO L290 TraceCheckUtils]: 33: Hoare triple {8447#(< ~counter~0 13)} assume !!(0 != ~r~0); {8447#(< ~counter~0 13)} is VALID [2022-04-08 06:07:56,263 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {7910#true} {8447#(< ~counter~0 13)} #63#return; {8447#(< ~counter~0 13)} is VALID [2022-04-08 06:07:56,263 INFO L290 TraceCheckUtils]: 31: Hoare triple {7910#true} assume true; {7910#true} is VALID [2022-04-08 06:07:56,263 INFO L290 TraceCheckUtils]: 30: Hoare triple {7910#true} assume !(0 == ~cond); {7910#true} is VALID [2022-04-08 06:07:56,263 INFO L290 TraceCheckUtils]: 29: Hoare triple {7910#true} ~cond := #in~cond; {7910#true} is VALID [2022-04-08 06:07:56,263 INFO L272 TraceCheckUtils]: 28: Hoare triple {8447#(< ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7910#true} is VALID [2022-04-08 06:07:56,264 INFO L290 TraceCheckUtils]: 27: Hoare triple {8447#(< ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {8447#(< ~counter~0 13)} is VALID [2022-04-08 06:07:56,280 INFO L290 TraceCheckUtils]: 26: Hoare triple {8475#(< ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8447#(< ~counter~0 13)} is VALID [2022-04-08 06:07:56,280 INFO L290 TraceCheckUtils]: 25: Hoare triple {8475#(< ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8475#(< ~counter~0 12)} is VALID [2022-04-08 06:07:56,281 INFO L290 TraceCheckUtils]: 24: Hoare triple {8475#(< ~counter~0 12)} assume !!(0 != ~r~0); {8475#(< ~counter~0 12)} is VALID [2022-04-08 06:07:56,282 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7910#true} {8475#(< ~counter~0 12)} #63#return; {8475#(< ~counter~0 12)} is VALID [2022-04-08 06:07:56,282 INFO L290 TraceCheckUtils]: 22: Hoare triple {7910#true} assume true; {7910#true} is VALID [2022-04-08 06:07:56,282 INFO L290 TraceCheckUtils]: 21: Hoare triple {7910#true} assume !(0 == ~cond); {7910#true} is VALID [2022-04-08 06:07:56,282 INFO L290 TraceCheckUtils]: 20: Hoare triple {7910#true} ~cond := #in~cond; {7910#true} is VALID [2022-04-08 06:07:56,282 INFO L272 TraceCheckUtils]: 19: Hoare triple {8475#(< ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7910#true} is VALID [2022-04-08 06:07:56,283 INFO L290 TraceCheckUtils]: 18: Hoare triple {8475#(< ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {8475#(< ~counter~0 12)} is VALID [2022-04-08 06:07:56,284 INFO L290 TraceCheckUtils]: 17: Hoare triple {8503#(< ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8475#(< ~counter~0 12)} is VALID [2022-04-08 06:07:56,284 INFO L290 TraceCheckUtils]: 16: Hoare triple {8503#(< ~counter~0 11)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {8503#(< ~counter~0 11)} is VALID [2022-04-08 06:07:56,285 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7910#true} {8503#(< ~counter~0 11)} #61#return; {8503#(< ~counter~0 11)} is VALID [2022-04-08 06:07:56,285 INFO L290 TraceCheckUtils]: 14: Hoare triple {7910#true} assume true; {7910#true} is VALID [2022-04-08 06:07:56,285 INFO L290 TraceCheckUtils]: 13: Hoare triple {7910#true} assume !(0 == ~cond); {7910#true} is VALID [2022-04-08 06:07:56,285 INFO L290 TraceCheckUtils]: 12: Hoare triple {7910#true} ~cond := #in~cond; {7910#true} is VALID [2022-04-08 06:07:56,285 INFO L272 TraceCheckUtils]: 11: Hoare triple {8503#(< ~counter~0 11)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {7910#true} is VALID [2022-04-08 06:07:56,286 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7910#true} {8503#(< ~counter~0 11)} #59#return; {8503#(< ~counter~0 11)} is VALID [2022-04-08 06:07:56,286 INFO L290 TraceCheckUtils]: 9: Hoare triple {7910#true} assume true; {7910#true} is VALID [2022-04-08 06:07:56,286 INFO L290 TraceCheckUtils]: 8: Hoare triple {7910#true} assume !(0 == ~cond); {7910#true} is VALID [2022-04-08 06:07:56,286 INFO L290 TraceCheckUtils]: 7: Hoare triple {7910#true} ~cond := #in~cond; {7910#true} is VALID [2022-04-08 06:07:56,287 INFO L272 TraceCheckUtils]: 6: Hoare triple {8503#(< ~counter~0 11)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {7910#true} is VALID [2022-04-08 06:07:56,287 INFO L290 TraceCheckUtils]: 5: Hoare triple {8503#(< ~counter~0 11)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {8503#(< ~counter~0 11)} is VALID [2022-04-08 06:07:56,288 INFO L272 TraceCheckUtils]: 4: Hoare triple {8503#(< ~counter~0 11)} call #t~ret7 := main(); {8503#(< ~counter~0 11)} is VALID [2022-04-08 06:07:56,288 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8503#(< ~counter~0 11)} {7910#true} #67#return; {8503#(< ~counter~0 11)} is VALID [2022-04-08 06:07:56,289 INFO L290 TraceCheckUtils]: 2: Hoare triple {8503#(< ~counter~0 11)} assume true; {8503#(< ~counter~0 11)} is VALID [2022-04-08 06:07:56,289 INFO L290 TraceCheckUtils]: 1: Hoare triple {7910#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8503#(< ~counter~0 11)} is VALID [2022-04-08 06:07:56,289 INFO L272 TraceCheckUtils]: 0: Hoare triple {7910#true} call ULTIMATE.init(); {7910#true} is VALID [2022-04-08 06:07:56,290 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 18 proven. 198 refuted. 0 times theorem prover too weak. 148 trivial. 0 not checked. [2022-04-08 06:07:56,290 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:56,290 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [439327832] [2022-04-08 06:07:56,290 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:56,290 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2081286684] [2022-04-08 06:07:56,290 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2081286684] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:07:56,290 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:07:56,291 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-08 06:07:56,291 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:56,306 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1735967476] [2022-04-08 06:07:56,306 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1735967476] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:56,306 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:56,306 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 06:07:56,306 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1351894141] [2022-04-08 06:07:56,306 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:56,307 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) Word has length 104 [2022-04-08 06:07:56,307 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:56,307 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-08 06:07:56,376 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:56,376 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 06:07:56,376 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:56,377 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 06:07:56,377 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:07:56,377 INFO L87 Difference]: Start difference. First operand 101 states and 111 transitions. Second operand has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-08 06:07:56,754 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:56,754 INFO L93 Difference]: Finished difference Result 115 states and 126 transitions. [2022-04-08 06:07:56,755 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-08 06:07:56,755 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) Word has length 104 [2022-04-08 06:07:56,755 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:07:56,755 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-08 06:07:56,765 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 125 transitions. [2022-04-08 06:07:56,766 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-08 06:07:56,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 125 transitions. [2022-04-08 06:07:56,768 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 125 transitions. [2022-04-08 06:07:56,863 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:56,865 INFO L225 Difference]: With dead ends: 115 [2022-04-08 06:07:56,865 INFO L226 Difference]: Without dead ends: 110 [2022-04-08 06:07:56,866 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 216 GetRequests, 185 SyntacticMatches, 0 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 64 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=443, Invalid=613, Unknown=0, NotChecked=0, Total=1056 [2022-04-08 06:07:56,866 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 26 mSDsluCounter, 119 mSDsCounter, 0 mSdLazyCounter, 62 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 154 SdHoareTripleChecker+Invalid, 69 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 62 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:07:56,866 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [26 Valid, 154 Invalid, 69 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 62 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:07:56,867 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 110 states. [2022-04-08 06:07:56,967 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 110 to 110. [2022-04-08 06:07:56,967 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:07:56,968 INFO L82 GeneralOperation]: Start isEquivalent. First operand 110 states. Second operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 06:07:56,968 INFO L74 IsIncluded]: Start isIncluded. First operand 110 states. Second operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 06:07:56,968 INFO L87 Difference]: Start difference. First operand 110 states. Second operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 06:07:56,970 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:56,970 INFO L93 Difference]: Finished difference Result 110 states and 121 transitions. [2022-04-08 06:07:56,970 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 121 transitions. [2022-04-08 06:07:56,970 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:56,971 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:56,971 INFO L74 IsIncluded]: Start isIncluded. First operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 110 states. [2022-04-08 06:07:56,971 INFO L87 Difference]: Start difference. First operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 110 states. [2022-04-08 06:07:56,973 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:56,973 INFO L93 Difference]: Finished difference Result 110 states and 121 transitions. [2022-04-08 06:07:56,973 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 121 transitions. [2022-04-08 06:07:56,973 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:56,974 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:56,974 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:07:56,974 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:07:56,974 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 06:07:56,976 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 110 states to 110 states and 121 transitions. [2022-04-08 06:07:56,976 INFO L78 Accepts]: Start accepts. Automaton has 110 states and 121 transitions. Word has length 104 [2022-04-08 06:07:56,976 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:07:56,976 INFO L478 AbstractCegarLoop]: Abstraction has 110 states and 121 transitions. [2022-04-08 06:07:56,976 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-08 06:07:56,977 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 110 states and 121 transitions. [2022-04-08 06:07:59,142 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 120 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:59,142 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 121 transitions. [2022-04-08 06:07:59,143 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-08 06:07:59,143 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:59,143 INFO L499 BasicCegarLoop]: trace histogram [11, 11, 10, 10, 10, 10, 10, 10, 10, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:07:59,150 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Ended with exit code 0 [2022-04-08 06:07:59,348 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-08 06:07:59,348 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:59,348 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:59,348 INFO L85 PathProgramCache]: Analyzing trace with hash -1468805930, now seen corresponding path program 19 times [2022-04-08 06:07:59,349 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:59,349 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1668560117] [2022-04-08 06:07:59,349 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:59,349 INFO L85 PathProgramCache]: Analyzing trace with hash -1468805930, now seen corresponding path program 20 times [2022-04-08 06:07:59,349 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:59,349 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [640318319] [2022-04-08 06:07:59,349 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:59,349 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:59,371 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:59,371 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [609538647] [2022-04-08 06:07:59,371 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:07:59,371 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:59,372 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:59,377 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-08 06:07:59,378 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-08 06:07:59,435 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:07:59,435 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:59,436 INFO L263 TraceCheckSpWp]: Trace formula consists of 293 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-08 06:07:59,457 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:59,458 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:08:00,112 INFO L272 TraceCheckUtils]: 0: Hoare triple {9245#true} call ULTIMATE.init(); {9245#true} is VALID [2022-04-08 06:08:00,113 INFO L290 TraceCheckUtils]: 1: Hoare triple {9245#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,113 INFO L290 TraceCheckUtils]: 2: Hoare triple {9253#(<= ~counter~0 0)} assume true; {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,113 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9253#(<= ~counter~0 0)} {9245#true} #67#return; {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,114 INFO L272 TraceCheckUtils]: 4: Hoare triple {9253#(<= ~counter~0 0)} call #t~ret7 := main(); {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,114 INFO L290 TraceCheckUtils]: 5: Hoare triple {9253#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,114 INFO L272 TraceCheckUtils]: 6: Hoare triple {9253#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,115 INFO L290 TraceCheckUtils]: 7: Hoare triple {9253#(<= ~counter~0 0)} ~cond := #in~cond; {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,115 INFO L290 TraceCheckUtils]: 8: Hoare triple {9253#(<= ~counter~0 0)} assume !(0 == ~cond); {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,115 INFO L290 TraceCheckUtils]: 9: Hoare triple {9253#(<= ~counter~0 0)} assume true; {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,116 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9253#(<= ~counter~0 0)} {9253#(<= ~counter~0 0)} #59#return; {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,116 INFO L272 TraceCheckUtils]: 11: Hoare triple {9253#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,116 INFO L290 TraceCheckUtils]: 12: Hoare triple {9253#(<= ~counter~0 0)} ~cond := #in~cond; {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,116 INFO L290 TraceCheckUtils]: 13: Hoare triple {9253#(<= ~counter~0 0)} assume !(0 == ~cond); {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,117 INFO L290 TraceCheckUtils]: 14: Hoare triple {9253#(<= ~counter~0 0)} assume true; {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,117 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {9253#(<= ~counter~0 0)} {9253#(<= ~counter~0 0)} #61#return; {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,117 INFO L290 TraceCheckUtils]: 16: Hoare triple {9253#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {9253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:00,118 INFO L290 TraceCheckUtils]: 17: Hoare triple {9253#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:00,119 INFO L290 TraceCheckUtils]: 18: Hoare triple {9302#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {9302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:00,120 INFO L272 TraceCheckUtils]: 19: Hoare triple {9302#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:00,120 INFO L290 TraceCheckUtils]: 20: Hoare triple {9302#(<= ~counter~0 1)} ~cond := #in~cond; {9302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:00,121 INFO L290 TraceCheckUtils]: 21: Hoare triple {9302#(<= ~counter~0 1)} assume !(0 == ~cond); {9302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:00,121 INFO L290 TraceCheckUtils]: 22: Hoare triple {9302#(<= ~counter~0 1)} assume true; {9302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:00,122 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {9302#(<= ~counter~0 1)} {9302#(<= ~counter~0 1)} #63#return; {9302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:00,122 INFO L290 TraceCheckUtils]: 24: Hoare triple {9302#(<= ~counter~0 1)} assume !!(0 != ~r~0); {9302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:00,123 INFO L290 TraceCheckUtils]: 25: Hoare triple {9302#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:00,123 INFO L290 TraceCheckUtils]: 26: Hoare triple {9302#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:00,124 INFO L290 TraceCheckUtils]: 27: Hoare triple {9330#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {9330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:00,125 INFO L272 TraceCheckUtils]: 28: Hoare triple {9330#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:00,125 INFO L290 TraceCheckUtils]: 29: Hoare triple {9330#(<= ~counter~0 2)} ~cond := #in~cond; {9330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:00,125 INFO L290 TraceCheckUtils]: 30: Hoare triple {9330#(<= ~counter~0 2)} assume !(0 == ~cond); {9330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:00,126 INFO L290 TraceCheckUtils]: 31: Hoare triple {9330#(<= ~counter~0 2)} assume true; {9330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:00,127 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {9330#(<= ~counter~0 2)} {9330#(<= ~counter~0 2)} #63#return; {9330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:00,127 INFO L290 TraceCheckUtils]: 33: Hoare triple {9330#(<= ~counter~0 2)} assume !!(0 != ~r~0); {9330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:00,127 INFO L290 TraceCheckUtils]: 34: Hoare triple {9330#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:00,128 INFO L290 TraceCheckUtils]: 35: Hoare triple {9330#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:00,128 INFO L290 TraceCheckUtils]: 36: Hoare triple {9358#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {9358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:00,129 INFO L272 TraceCheckUtils]: 37: Hoare triple {9358#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:00,130 INFO L290 TraceCheckUtils]: 38: Hoare triple {9358#(<= ~counter~0 3)} ~cond := #in~cond; {9358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:00,130 INFO L290 TraceCheckUtils]: 39: Hoare triple {9358#(<= ~counter~0 3)} assume !(0 == ~cond); {9358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:00,130 INFO L290 TraceCheckUtils]: 40: Hoare triple {9358#(<= ~counter~0 3)} assume true; {9358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:00,131 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {9358#(<= ~counter~0 3)} {9358#(<= ~counter~0 3)} #63#return; {9358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:00,132 INFO L290 TraceCheckUtils]: 42: Hoare triple {9358#(<= ~counter~0 3)} assume !!(0 != ~r~0); {9358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:00,132 INFO L290 TraceCheckUtils]: 43: Hoare triple {9358#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:00,133 INFO L290 TraceCheckUtils]: 44: Hoare triple {9358#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:00,133 INFO L290 TraceCheckUtils]: 45: Hoare triple {9386#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {9386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:00,134 INFO L272 TraceCheckUtils]: 46: Hoare triple {9386#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:00,134 INFO L290 TraceCheckUtils]: 47: Hoare triple {9386#(<= ~counter~0 4)} ~cond := #in~cond; {9386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:00,135 INFO L290 TraceCheckUtils]: 48: Hoare triple {9386#(<= ~counter~0 4)} assume !(0 == ~cond); {9386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:00,135 INFO L290 TraceCheckUtils]: 49: Hoare triple {9386#(<= ~counter~0 4)} assume true; {9386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:00,136 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {9386#(<= ~counter~0 4)} {9386#(<= ~counter~0 4)} #63#return; {9386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:00,136 INFO L290 TraceCheckUtils]: 51: Hoare triple {9386#(<= ~counter~0 4)} assume !!(0 != ~r~0); {9386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:00,137 INFO L290 TraceCheckUtils]: 52: Hoare triple {9386#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:00,137 INFO L290 TraceCheckUtils]: 53: Hoare triple {9386#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:00,138 INFO L290 TraceCheckUtils]: 54: Hoare triple {9414#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {9414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:00,138 INFO L272 TraceCheckUtils]: 55: Hoare triple {9414#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:00,139 INFO L290 TraceCheckUtils]: 56: Hoare triple {9414#(<= ~counter~0 5)} ~cond := #in~cond; {9414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:00,139 INFO L290 TraceCheckUtils]: 57: Hoare triple {9414#(<= ~counter~0 5)} assume !(0 == ~cond); {9414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:00,139 INFO L290 TraceCheckUtils]: 58: Hoare triple {9414#(<= ~counter~0 5)} assume true; {9414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:00,140 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {9414#(<= ~counter~0 5)} {9414#(<= ~counter~0 5)} #63#return; {9414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:00,140 INFO L290 TraceCheckUtils]: 60: Hoare triple {9414#(<= ~counter~0 5)} assume !!(0 != ~r~0); {9414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:00,140 INFO L290 TraceCheckUtils]: 61: Hoare triple {9414#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:00,141 INFO L290 TraceCheckUtils]: 62: Hoare triple {9414#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:00,141 INFO L290 TraceCheckUtils]: 63: Hoare triple {9442#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {9442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:00,141 INFO L272 TraceCheckUtils]: 64: Hoare triple {9442#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:00,142 INFO L290 TraceCheckUtils]: 65: Hoare triple {9442#(<= ~counter~0 6)} ~cond := #in~cond; {9442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:00,142 INFO L290 TraceCheckUtils]: 66: Hoare triple {9442#(<= ~counter~0 6)} assume !(0 == ~cond); {9442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:00,142 INFO L290 TraceCheckUtils]: 67: Hoare triple {9442#(<= ~counter~0 6)} assume true; {9442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:00,148 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {9442#(<= ~counter~0 6)} {9442#(<= ~counter~0 6)} #63#return; {9442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:00,148 INFO L290 TraceCheckUtils]: 69: Hoare triple {9442#(<= ~counter~0 6)} assume !!(0 != ~r~0); {9442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:00,149 INFO L290 TraceCheckUtils]: 70: Hoare triple {9442#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:00,149 INFO L290 TraceCheckUtils]: 71: Hoare triple {9442#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:00,150 INFO L290 TraceCheckUtils]: 72: Hoare triple {9470#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {9470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:00,151 INFO L272 TraceCheckUtils]: 73: Hoare triple {9470#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:00,151 INFO L290 TraceCheckUtils]: 74: Hoare triple {9470#(<= ~counter~0 7)} ~cond := #in~cond; {9470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:00,151 INFO L290 TraceCheckUtils]: 75: Hoare triple {9470#(<= ~counter~0 7)} assume !(0 == ~cond); {9470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:00,152 INFO L290 TraceCheckUtils]: 76: Hoare triple {9470#(<= ~counter~0 7)} assume true; {9470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:00,153 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {9470#(<= ~counter~0 7)} {9470#(<= ~counter~0 7)} #63#return; {9470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:00,153 INFO L290 TraceCheckUtils]: 78: Hoare triple {9470#(<= ~counter~0 7)} assume !!(0 != ~r~0); {9470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:00,153 INFO L290 TraceCheckUtils]: 79: Hoare triple {9470#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:00,154 INFO L290 TraceCheckUtils]: 80: Hoare triple {9470#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:00,155 INFO L290 TraceCheckUtils]: 81: Hoare triple {9498#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {9498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:00,155 INFO L272 TraceCheckUtils]: 82: Hoare triple {9498#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:00,155 INFO L290 TraceCheckUtils]: 83: Hoare triple {9498#(<= ~counter~0 8)} ~cond := #in~cond; {9498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:00,156 INFO L290 TraceCheckUtils]: 84: Hoare triple {9498#(<= ~counter~0 8)} assume !(0 == ~cond); {9498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:00,156 INFO L290 TraceCheckUtils]: 85: Hoare triple {9498#(<= ~counter~0 8)} assume true; {9498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:00,156 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {9498#(<= ~counter~0 8)} {9498#(<= ~counter~0 8)} #63#return; {9498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:00,157 INFO L290 TraceCheckUtils]: 87: Hoare triple {9498#(<= ~counter~0 8)} assume !!(0 != ~r~0); {9498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:00,157 INFO L290 TraceCheckUtils]: 88: Hoare triple {9498#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:00,157 INFO L290 TraceCheckUtils]: 89: Hoare triple {9498#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,158 INFO L290 TraceCheckUtils]: 90: Hoare triple {9526#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,158 INFO L272 TraceCheckUtils]: 91: Hoare triple {9526#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,158 INFO L290 TraceCheckUtils]: 92: Hoare triple {9526#(<= ~counter~0 9)} ~cond := #in~cond; {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,159 INFO L290 TraceCheckUtils]: 93: Hoare triple {9526#(<= ~counter~0 9)} assume !(0 == ~cond); {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,159 INFO L290 TraceCheckUtils]: 94: Hoare triple {9526#(<= ~counter~0 9)} assume true; {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,160 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {9526#(<= ~counter~0 9)} {9526#(<= ~counter~0 9)} #63#return; {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,160 INFO L290 TraceCheckUtils]: 96: Hoare triple {9526#(<= ~counter~0 9)} assume !!(0 != ~r~0); {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,160 INFO L290 TraceCheckUtils]: 97: Hoare triple {9526#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,161 INFO L290 TraceCheckUtils]: 98: Hoare triple {9526#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:00,161 INFO L290 TraceCheckUtils]: 99: Hoare triple {9554#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {9554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:00,161 INFO L272 TraceCheckUtils]: 100: Hoare triple {9554#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:00,162 INFO L290 TraceCheckUtils]: 101: Hoare triple {9554#(<= ~counter~0 10)} ~cond := #in~cond; {9554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:00,162 INFO L290 TraceCheckUtils]: 102: Hoare triple {9554#(<= ~counter~0 10)} assume !(0 == ~cond); {9554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:00,162 INFO L290 TraceCheckUtils]: 103: Hoare triple {9554#(<= ~counter~0 10)} assume true; {9554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:00,163 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {9554#(<= ~counter~0 10)} {9554#(<= ~counter~0 10)} #63#return; {9554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:00,163 INFO L290 TraceCheckUtils]: 105: Hoare triple {9554#(<= ~counter~0 10)} assume !!(0 != ~r~0); {9554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:00,163 INFO L290 TraceCheckUtils]: 106: Hoare triple {9554#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:00,164 INFO L290 TraceCheckUtils]: 107: Hoare triple {9554#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9582#(<= |main_#t~post6| 10)} is VALID [2022-04-08 06:08:00,164 INFO L290 TraceCheckUtils]: 108: Hoare triple {9582#(<= |main_#t~post6| 10)} assume !(#t~post6 < 20);havoc #t~post6; {9246#false} is VALID [2022-04-08 06:08:00,164 INFO L272 TraceCheckUtils]: 109: Hoare triple {9246#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9246#false} is VALID [2022-04-08 06:08:00,164 INFO L290 TraceCheckUtils]: 110: Hoare triple {9246#false} ~cond := #in~cond; {9246#false} is VALID [2022-04-08 06:08:00,164 INFO L290 TraceCheckUtils]: 111: Hoare triple {9246#false} assume 0 == ~cond; {9246#false} is VALID [2022-04-08 06:08:00,164 INFO L290 TraceCheckUtils]: 112: Hoare triple {9246#false} assume !false; {9246#false} is VALID [2022-04-08 06:08:00,165 INFO L134 CoverageAnalysis]: Checked inductivity of 449 backedges. 20 proven. 425 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:08:00,165 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:08:00,760 INFO L290 TraceCheckUtils]: 112: Hoare triple {9246#false} assume !false; {9246#false} is VALID [2022-04-08 06:08:00,760 INFO L290 TraceCheckUtils]: 111: Hoare triple {9246#false} assume 0 == ~cond; {9246#false} is VALID [2022-04-08 06:08:00,760 INFO L290 TraceCheckUtils]: 110: Hoare triple {9246#false} ~cond := #in~cond; {9246#false} is VALID [2022-04-08 06:08:00,761 INFO L272 TraceCheckUtils]: 109: Hoare triple {9246#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9246#false} is VALID [2022-04-08 06:08:00,761 INFO L290 TraceCheckUtils]: 108: Hoare triple {9610#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {9246#false} is VALID [2022-04-08 06:08:00,761 INFO L290 TraceCheckUtils]: 107: Hoare triple {9614#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9610#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:08:00,761 INFO L290 TraceCheckUtils]: 106: Hoare triple {9614#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9614#(< ~counter~0 20)} is VALID [2022-04-08 06:08:00,762 INFO L290 TraceCheckUtils]: 105: Hoare triple {9614#(< ~counter~0 20)} assume !!(0 != ~r~0); {9614#(< ~counter~0 20)} is VALID [2022-04-08 06:08:00,762 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {9245#true} {9614#(< ~counter~0 20)} #63#return; {9614#(< ~counter~0 20)} is VALID [2022-04-08 06:08:00,762 INFO L290 TraceCheckUtils]: 103: Hoare triple {9245#true} assume true; {9245#true} is VALID [2022-04-08 06:08:00,762 INFO L290 TraceCheckUtils]: 102: Hoare triple {9245#true} assume !(0 == ~cond); {9245#true} is VALID [2022-04-08 06:08:00,762 INFO L290 TraceCheckUtils]: 101: Hoare triple {9245#true} ~cond := #in~cond; {9245#true} is VALID [2022-04-08 06:08:00,762 INFO L272 TraceCheckUtils]: 100: Hoare triple {9614#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9245#true} is VALID [2022-04-08 06:08:00,763 INFO L290 TraceCheckUtils]: 99: Hoare triple {9614#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {9614#(< ~counter~0 20)} is VALID [2022-04-08 06:08:00,763 INFO L290 TraceCheckUtils]: 98: Hoare triple {9642#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9614#(< ~counter~0 20)} is VALID [2022-04-08 06:08:00,764 INFO L290 TraceCheckUtils]: 97: Hoare triple {9642#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9642#(< ~counter~0 19)} is VALID [2022-04-08 06:08:00,764 INFO L290 TraceCheckUtils]: 96: Hoare triple {9642#(< ~counter~0 19)} assume !!(0 != ~r~0); {9642#(< ~counter~0 19)} is VALID [2022-04-08 06:08:00,764 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {9245#true} {9642#(< ~counter~0 19)} #63#return; {9642#(< ~counter~0 19)} is VALID [2022-04-08 06:08:00,764 INFO L290 TraceCheckUtils]: 94: Hoare triple {9245#true} assume true; {9245#true} is VALID [2022-04-08 06:08:00,764 INFO L290 TraceCheckUtils]: 93: Hoare triple {9245#true} assume !(0 == ~cond); {9245#true} is VALID [2022-04-08 06:08:00,765 INFO L290 TraceCheckUtils]: 92: Hoare triple {9245#true} ~cond := #in~cond; {9245#true} is VALID [2022-04-08 06:08:00,765 INFO L272 TraceCheckUtils]: 91: Hoare triple {9642#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9245#true} is VALID [2022-04-08 06:08:00,765 INFO L290 TraceCheckUtils]: 90: Hoare triple {9642#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {9642#(< ~counter~0 19)} is VALID [2022-04-08 06:08:00,765 INFO L290 TraceCheckUtils]: 89: Hoare triple {9670#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9642#(< ~counter~0 19)} is VALID [2022-04-08 06:08:00,766 INFO L290 TraceCheckUtils]: 88: Hoare triple {9670#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9670#(< ~counter~0 18)} is VALID [2022-04-08 06:08:00,766 INFO L290 TraceCheckUtils]: 87: Hoare triple {9670#(< ~counter~0 18)} assume !!(0 != ~r~0); {9670#(< ~counter~0 18)} is VALID [2022-04-08 06:08:00,766 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {9245#true} {9670#(< ~counter~0 18)} #63#return; {9670#(< ~counter~0 18)} is VALID [2022-04-08 06:08:00,766 INFO L290 TraceCheckUtils]: 85: Hoare triple {9245#true} assume true; {9245#true} is VALID [2022-04-08 06:08:00,766 INFO L290 TraceCheckUtils]: 84: Hoare triple {9245#true} assume !(0 == ~cond); {9245#true} is VALID [2022-04-08 06:08:00,767 INFO L290 TraceCheckUtils]: 83: Hoare triple {9245#true} ~cond := #in~cond; {9245#true} is VALID [2022-04-08 06:08:00,767 INFO L272 TraceCheckUtils]: 82: Hoare triple {9670#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9245#true} is VALID [2022-04-08 06:08:00,767 INFO L290 TraceCheckUtils]: 81: Hoare triple {9670#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {9670#(< ~counter~0 18)} is VALID [2022-04-08 06:08:00,767 INFO L290 TraceCheckUtils]: 80: Hoare triple {9698#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9670#(< ~counter~0 18)} is VALID [2022-04-08 06:08:00,768 INFO L290 TraceCheckUtils]: 79: Hoare triple {9698#(< ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9698#(< ~counter~0 17)} is VALID [2022-04-08 06:08:00,768 INFO L290 TraceCheckUtils]: 78: Hoare triple {9698#(< ~counter~0 17)} assume !!(0 != ~r~0); {9698#(< ~counter~0 17)} is VALID [2022-04-08 06:08:00,768 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {9245#true} {9698#(< ~counter~0 17)} #63#return; {9698#(< ~counter~0 17)} is VALID [2022-04-08 06:08:00,768 INFO L290 TraceCheckUtils]: 76: Hoare triple {9245#true} assume true; {9245#true} is VALID [2022-04-08 06:08:00,768 INFO L290 TraceCheckUtils]: 75: Hoare triple {9245#true} assume !(0 == ~cond); {9245#true} is VALID [2022-04-08 06:08:00,769 INFO L290 TraceCheckUtils]: 74: Hoare triple {9245#true} ~cond := #in~cond; {9245#true} is VALID [2022-04-08 06:08:00,769 INFO L272 TraceCheckUtils]: 73: Hoare triple {9698#(< ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9245#true} is VALID [2022-04-08 06:08:00,769 INFO L290 TraceCheckUtils]: 72: Hoare triple {9698#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {9698#(< ~counter~0 17)} is VALID [2022-04-08 06:08:00,769 INFO L290 TraceCheckUtils]: 71: Hoare triple {9726#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9698#(< ~counter~0 17)} is VALID [2022-04-08 06:08:00,770 INFO L290 TraceCheckUtils]: 70: Hoare triple {9726#(< ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9726#(< ~counter~0 16)} is VALID [2022-04-08 06:08:00,770 INFO L290 TraceCheckUtils]: 69: Hoare triple {9726#(< ~counter~0 16)} assume !!(0 != ~r~0); {9726#(< ~counter~0 16)} is VALID [2022-04-08 06:08:00,770 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {9245#true} {9726#(< ~counter~0 16)} #63#return; {9726#(< ~counter~0 16)} is VALID [2022-04-08 06:08:00,770 INFO L290 TraceCheckUtils]: 67: Hoare triple {9245#true} assume true; {9245#true} is VALID [2022-04-08 06:08:00,771 INFO L290 TraceCheckUtils]: 66: Hoare triple {9245#true} assume !(0 == ~cond); {9245#true} is VALID [2022-04-08 06:08:00,771 INFO L290 TraceCheckUtils]: 65: Hoare triple {9245#true} ~cond := #in~cond; {9245#true} is VALID [2022-04-08 06:08:00,771 INFO L272 TraceCheckUtils]: 64: Hoare triple {9726#(< ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9245#true} is VALID [2022-04-08 06:08:00,771 INFO L290 TraceCheckUtils]: 63: Hoare triple {9726#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {9726#(< ~counter~0 16)} is VALID [2022-04-08 06:08:00,771 INFO L290 TraceCheckUtils]: 62: Hoare triple {9754#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9726#(< ~counter~0 16)} is VALID [2022-04-08 06:08:00,772 INFO L290 TraceCheckUtils]: 61: Hoare triple {9754#(< ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9754#(< ~counter~0 15)} is VALID [2022-04-08 06:08:00,772 INFO L290 TraceCheckUtils]: 60: Hoare triple {9754#(< ~counter~0 15)} assume !!(0 != ~r~0); {9754#(< ~counter~0 15)} is VALID [2022-04-08 06:08:00,772 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {9245#true} {9754#(< ~counter~0 15)} #63#return; {9754#(< ~counter~0 15)} is VALID [2022-04-08 06:08:00,772 INFO L290 TraceCheckUtils]: 58: Hoare triple {9245#true} assume true; {9245#true} is VALID [2022-04-08 06:08:00,773 INFO L290 TraceCheckUtils]: 57: Hoare triple {9245#true} assume !(0 == ~cond); {9245#true} is VALID [2022-04-08 06:08:00,773 INFO L290 TraceCheckUtils]: 56: Hoare triple {9245#true} ~cond := #in~cond; {9245#true} is VALID [2022-04-08 06:08:00,773 INFO L272 TraceCheckUtils]: 55: Hoare triple {9754#(< ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9245#true} is VALID [2022-04-08 06:08:00,773 INFO L290 TraceCheckUtils]: 54: Hoare triple {9754#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {9754#(< ~counter~0 15)} is VALID [2022-04-08 06:08:00,773 INFO L290 TraceCheckUtils]: 53: Hoare triple {9782#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9754#(< ~counter~0 15)} is VALID [2022-04-08 06:08:00,774 INFO L290 TraceCheckUtils]: 52: Hoare triple {9782#(< ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9782#(< ~counter~0 14)} is VALID [2022-04-08 06:08:00,774 INFO L290 TraceCheckUtils]: 51: Hoare triple {9782#(< ~counter~0 14)} assume !!(0 != ~r~0); {9782#(< ~counter~0 14)} is VALID [2022-04-08 06:08:00,774 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {9245#true} {9782#(< ~counter~0 14)} #63#return; {9782#(< ~counter~0 14)} is VALID [2022-04-08 06:08:00,774 INFO L290 TraceCheckUtils]: 49: Hoare triple {9245#true} assume true; {9245#true} is VALID [2022-04-08 06:08:00,788 INFO L290 TraceCheckUtils]: 48: Hoare triple {9245#true} assume !(0 == ~cond); {9245#true} is VALID [2022-04-08 06:08:00,789 INFO L290 TraceCheckUtils]: 47: Hoare triple {9245#true} ~cond := #in~cond; {9245#true} is VALID [2022-04-08 06:08:00,789 INFO L272 TraceCheckUtils]: 46: Hoare triple {9782#(< ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9245#true} is VALID [2022-04-08 06:08:00,791 INFO L290 TraceCheckUtils]: 45: Hoare triple {9782#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {9782#(< ~counter~0 14)} is VALID [2022-04-08 06:08:00,792 INFO L290 TraceCheckUtils]: 44: Hoare triple {9810#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9782#(< ~counter~0 14)} is VALID [2022-04-08 06:08:00,793 INFO L290 TraceCheckUtils]: 43: Hoare triple {9810#(< ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9810#(< ~counter~0 13)} is VALID [2022-04-08 06:08:00,793 INFO L290 TraceCheckUtils]: 42: Hoare triple {9810#(< ~counter~0 13)} assume !!(0 != ~r~0); {9810#(< ~counter~0 13)} is VALID [2022-04-08 06:08:00,794 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {9245#true} {9810#(< ~counter~0 13)} #63#return; {9810#(< ~counter~0 13)} is VALID [2022-04-08 06:08:00,794 INFO L290 TraceCheckUtils]: 40: Hoare triple {9245#true} assume true; {9245#true} is VALID [2022-04-08 06:08:00,794 INFO L290 TraceCheckUtils]: 39: Hoare triple {9245#true} assume !(0 == ~cond); {9245#true} is VALID [2022-04-08 06:08:00,794 INFO L290 TraceCheckUtils]: 38: Hoare triple {9245#true} ~cond := #in~cond; {9245#true} is VALID [2022-04-08 06:08:00,794 INFO L272 TraceCheckUtils]: 37: Hoare triple {9810#(< ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9245#true} is VALID [2022-04-08 06:08:00,794 INFO L290 TraceCheckUtils]: 36: Hoare triple {9810#(< ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {9810#(< ~counter~0 13)} is VALID [2022-04-08 06:08:00,795 INFO L290 TraceCheckUtils]: 35: Hoare triple {9838#(< ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9810#(< ~counter~0 13)} is VALID [2022-04-08 06:08:00,795 INFO L290 TraceCheckUtils]: 34: Hoare triple {9838#(< ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9838#(< ~counter~0 12)} is VALID [2022-04-08 06:08:00,796 INFO L290 TraceCheckUtils]: 33: Hoare triple {9838#(< ~counter~0 12)} assume !!(0 != ~r~0); {9838#(< ~counter~0 12)} is VALID [2022-04-08 06:08:00,796 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {9245#true} {9838#(< ~counter~0 12)} #63#return; {9838#(< ~counter~0 12)} is VALID [2022-04-08 06:08:00,797 INFO L290 TraceCheckUtils]: 31: Hoare triple {9245#true} assume true; {9245#true} is VALID [2022-04-08 06:08:00,797 INFO L290 TraceCheckUtils]: 30: Hoare triple {9245#true} assume !(0 == ~cond); {9245#true} is VALID [2022-04-08 06:08:00,797 INFO L290 TraceCheckUtils]: 29: Hoare triple {9245#true} ~cond := #in~cond; {9245#true} is VALID [2022-04-08 06:08:00,797 INFO L272 TraceCheckUtils]: 28: Hoare triple {9838#(< ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9245#true} is VALID [2022-04-08 06:08:00,797 INFO L290 TraceCheckUtils]: 27: Hoare triple {9838#(< ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {9838#(< ~counter~0 12)} is VALID [2022-04-08 06:08:00,798 INFO L290 TraceCheckUtils]: 26: Hoare triple {9554#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9838#(< ~counter~0 12)} is VALID [2022-04-08 06:08:00,798 INFO L290 TraceCheckUtils]: 25: Hoare triple {9554#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:00,799 INFO L290 TraceCheckUtils]: 24: Hoare triple {9554#(<= ~counter~0 10)} assume !!(0 != ~r~0); {9554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:00,799 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {9245#true} {9554#(<= ~counter~0 10)} #63#return; {9554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:00,799 INFO L290 TraceCheckUtils]: 22: Hoare triple {9245#true} assume true; {9245#true} is VALID [2022-04-08 06:08:00,799 INFO L290 TraceCheckUtils]: 21: Hoare triple {9245#true} assume !(0 == ~cond); {9245#true} is VALID [2022-04-08 06:08:00,799 INFO L290 TraceCheckUtils]: 20: Hoare triple {9245#true} ~cond := #in~cond; {9245#true} is VALID [2022-04-08 06:08:00,799 INFO L272 TraceCheckUtils]: 19: Hoare triple {9554#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {9245#true} is VALID [2022-04-08 06:08:00,800 INFO L290 TraceCheckUtils]: 18: Hoare triple {9554#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {9554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:00,800 INFO L290 TraceCheckUtils]: 17: Hoare triple {9526#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:00,801 INFO L290 TraceCheckUtils]: 16: Hoare triple {9526#(<= ~counter~0 9)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,801 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {9245#true} {9526#(<= ~counter~0 9)} #61#return; {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,801 INFO L290 TraceCheckUtils]: 14: Hoare triple {9245#true} assume true; {9245#true} is VALID [2022-04-08 06:08:00,801 INFO L290 TraceCheckUtils]: 13: Hoare triple {9245#true} assume !(0 == ~cond); {9245#true} is VALID [2022-04-08 06:08:00,801 INFO L290 TraceCheckUtils]: 12: Hoare triple {9245#true} ~cond := #in~cond; {9245#true} is VALID [2022-04-08 06:08:00,801 INFO L272 TraceCheckUtils]: 11: Hoare triple {9526#(<= ~counter~0 9)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {9245#true} is VALID [2022-04-08 06:08:00,802 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9245#true} {9526#(<= ~counter~0 9)} #59#return; {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,802 INFO L290 TraceCheckUtils]: 9: Hoare triple {9245#true} assume true; {9245#true} is VALID [2022-04-08 06:08:00,802 INFO L290 TraceCheckUtils]: 8: Hoare triple {9245#true} assume !(0 == ~cond); {9245#true} is VALID [2022-04-08 06:08:00,802 INFO L290 TraceCheckUtils]: 7: Hoare triple {9245#true} ~cond := #in~cond; {9245#true} is VALID [2022-04-08 06:08:00,802 INFO L272 TraceCheckUtils]: 6: Hoare triple {9526#(<= ~counter~0 9)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {9245#true} is VALID [2022-04-08 06:08:00,803 INFO L290 TraceCheckUtils]: 5: Hoare triple {9526#(<= ~counter~0 9)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,803 INFO L272 TraceCheckUtils]: 4: Hoare triple {9526#(<= ~counter~0 9)} call #t~ret7 := main(); {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,804 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9526#(<= ~counter~0 9)} {9245#true} #67#return; {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,804 INFO L290 TraceCheckUtils]: 2: Hoare triple {9526#(<= ~counter~0 9)} assume true; {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,804 INFO L290 TraceCheckUtils]: 1: Hoare triple {9245#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {9526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:00,804 INFO L272 TraceCheckUtils]: 0: Hoare triple {9245#true} call ULTIMATE.init(); {9245#true} is VALID [2022-04-08 06:08:00,805 INFO L134 CoverageAnalysis]: Checked inductivity of 449 backedges. 20 proven. 245 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-08 06:08:00,805 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:08:00,805 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [640318319] [2022-04-08 06:08:00,805 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:08:00,805 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [609538647] [2022-04-08 06:08:00,805 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [609538647] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:08:00,805 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:08:00,805 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 24 [2022-04-08 06:08:00,805 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:08:00,806 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1668560117] [2022-04-08 06:08:00,806 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1668560117] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:08:00,806 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:08:00,806 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 06:08:00,806 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [195604308] [2022-04-08 06:08:00,806 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:08:00,806 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 5.857142857142857) internal successors, (82), 13 states have internal predecessors, (82), 13 states have call successors, (15), 13 states have call predecessors, (15), 11 states have return successors, (13), 11 states have call predecessors, (13), 12 states have call successors, (13) Word has length 113 [2022-04-08 06:08:00,807 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:08:00,807 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 5.857142857142857) internal successors, (82), 13 states have internal predecessors, (82), 13 states have call successors, (15), 13 states have call predecessors, (15), 11 states have return successors, (13), 11 states have call predecessors, (13), 12 states have call successors, (13) [2022-04-08 06:08:00,882 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:00,882 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 06:08:00,882 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:00,882 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 06:08:00,882 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:08:00,883 INFO L87 Difference]: Start difference. First operand 110 states and 121 transitions. Second operand has 14 states, 14 states have (on average 5.857142857142857) internal successors, (82), 13 states have internal predecessors, (82), 13 states have call successors, (15), 13 states have call predecessors, (15), 11 states have return successors, (13), 11 states have call predecessors, (13), 12 states have call successors, (13) [2022-04-08 06:08:01,344 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:01,345 INFO L93 Difference]: Finished difference Result 124 states and 136 transitions. [2022-04-08 06:08:01,345 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-08 06:08:01,345 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 5.857142857142857) internal successors, (82), 13 states have internal predecessors, (82), 13 states have call successors, (15), 13 states have call predecessors, (15), 11 states have return successors, (13), 11 states have call predecessors, (13), 12 states have call successors, (13) Word has length 113 [2022-04-08 06:08:01,345 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:08:01,345 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 5.857142857142857) internal successors, (82), 13 states have internal predecessors, (82), 13 states have call successors, (15), 13 states have call predecessors, (15), 11 states have return successors, (13), 11 states have call predecessors, (13), 12 states have call successors, (13) [2022-04-08 06:08:01,348 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 135 transitions. [2022-04-08 06:08:01,348 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 5.857142857142857) internal successors, (82), 13 states have internal predecessors, (82), 13 states have call successors, (15), 13 states have call predecessors, (15), 11 states have return successors, (13), 11 states have call predecessors, (13), 12 states have call successors, (13) [2022-04-08 06:08:01,351 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 135 transitions. [2022-04-08 06:08:01,351 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 135 transitions. [2022-04-08 06:08:01,458 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-08 06:08:01,460 INFO L225 Difference]: With dead ends: 124 [2022-04-08 06:08:01,460 INFO L226 Difference]: Without dead ends: 119 [2022-04-08 06:08:01,460 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 235 GetRequests, 202 SyntacticMatches, 1 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 83 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=466, Invalid=656, Unknown=0, NotChecked=0, Total=1122 [2022-04-08 06:08:01,461 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 35 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 65 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 168 SdHoareTripleChecker+Invalid, 86 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 65 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:08:01,461 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 168 Invalid, 86 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 65 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:08:01,461 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2022-04-08 06:08:01,577 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 119. [2022-04-08 06:08:01,577 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:08:01,577 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand has 119 states, 89 states have (on average 1.1348314606741574) internal successors, (101), 89 states have internal predecessors, (101), 16 states have call successors, (16), 15 states have call predecessors, (16), 13 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 06:08:01,578 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand has 119 states, 89 states have (on average 1.1348314606741574) internal successors, (101), 89 states have internal predecessors, (101), 16 states have call successors, (16), 15 states have call predecessors, (16), 13 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 06:08:01,578 INFO L87 Difference]: Start difference. First operand 119 states. Second operand has 119 states, 89 states have (on average 1.1348314606741574) internal successors, (101), 89 states have internal predecessors, (101), 16 states have call successors, (16), 15 states have call predecessors, (16), 13 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 06:08:01,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:01,579 INFO L93 Difference]: Finished difference Result 119 states and 131 transitions. [2022-04-08 06:08:01,579 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 131 transitions. [2022-04-08 06:08:01,580 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:01,581 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:01,581 INFO L74 IsIncluded]: Start isIncluded. First operand has 119 states, 89 states have (on average 1.1348314606741574) internal successors, (101), 89 states have internal predecessors, (101), 16 states have call successors, (16), 15 states have call predecessors, (16), 13 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 119 states. [2022-04-08 06:08:01,581 INFO L87 Difference]: Start difference. First operand has 119 states, 89 states have (on average 1.1348314606741574) internal successors, (101), 89 states have internal predecessors, (101), 16 states have call successors, (16), 15 states have call predecessors, (16), 13 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 119 states. [2022-04-08 06:08:01,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:01,583 INFO L93 Difference]: Finished difference Result 119 states and 131 transitions. [2022-04-08 06:08:01,583 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 131 transitions. [2022-04-08 06:08:01,584 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:01,584 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:01,584 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:08:01,584 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:08:01,584 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 119 states, 89 states have (on average 1.1348314606741574) internal successors, (101), 89 states have internal predecessors, (101), 16 states have call successors, (16), 15 states have call predecessors, (16), 13 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 06:08:01,586 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 119 states to 119 states and 131 transitions. [2022-04-08 06:08:01,586 INFO L78 Accepts]: Start accepts. Automaton has 119 states and 131 transitions. Word has length 113 [2022-04-08 06:08:01,587 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:08:01,587 INFO L478 AbstractCegarLoop]: Abstraction has 119 states and 131 transitions. [2022-04-08 06:08:01,587 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 5.857142857142857) internal successors, (82), 13 states have internal predecessors, (82), 13 states have call successors, (15), 13 states have call predecessors, (15), 11 states have return successors, (13), 11 states have call predecessors, (13), 12 states have call successors, (13) [2022-04-08 06:08:01,587 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 119 states and 131 transitions. [2022-04-08 06:08:03,772 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 131 edges. 130 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:03,772 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 131 transitions. [2022-04-08 06:08:03,772 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 123 [2022-04-08 06:08:03,772 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:08:03,773 INFO L499 BasicCegarLoop]: trace histogram [12, 12, 11, 11, 11, 11, 11, 11, 11, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:08:03,788 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Ended with exit code 0 [2022-04-08 06:08:03,973 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:08:03,973 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:08:03,973 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:08:03,973 INFO L85 PathProgramCache]: Analyzing trace with hash 1999651676, now seen corresponding path program 21 times [2022-04-08 06:08:03,974 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:03,974 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1996719921] [2022-04-08 06:08:03,974 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:08:03,974 INFO L85 PathProgramCache]: Analyzing trace with hash 1999651676, now seen corresponding path program 22 times [2022-04-08 06:08:03,974 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:08:03,974 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1961826587] [2022-04-08 06:08:03,974 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:08:03,974 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:08:03,989 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:08:03,989 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1375391874] [2022-04-08 06:08:03,989 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:08:03,989 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:08:03,989 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:08:03,990 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-08 06:08:03,991 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-08 06:08:04,063 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:08:04,063 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:08:04,064 INFO L263 TraceCheckSpWp]: Trace formula consists of 313 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-08 06:08:04,089 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:08:04,090 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:08:04,698 INFO L272 TraceCheckUtils]: 0: Hoare triple {10690#true} call ULTIMATE.init(); {10690#true} is VALID [2022-04-08 06:08:04,699 INFO L290 TraceCheckUtils]: 1: Hoare triple {10690#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,699 INFO L290 TraceCheckUtils]: 2: Hoare triple {10698#(<= ~counter~0 0)} assume true; {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,700 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10698#(<= ~counter~0 0)} {10690#true} #67#return; {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,700 INFO L272 TraceCheckUtils]: 4: Hoare triple {10698#(<= ~counter~0 0)} call #t~ret7 := main(); {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,700 INFO L290 TraceCheckUtils]: 5: Hoare triple {10698#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,701 INFO L272 TraceCheckUtils]: 6: Hoare triple {10698#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,701 INFO L290 TraceCheckUtils]: 7: Hoare triple {10698#(<= ~counter~0 0)} ~cond := #in~cond; {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,701 INFO L290 TraceCheckUtils]: 8: Hoare triple {10698#(<= ~counter~0 0)} assume !(0 == ~cond); {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,701 INFO L290 TraceCheckUtils]: 9: Hoare triple {10698#(<= ~counter~0 0)} assume true; {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,702 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10698#(<= ~counter~0 0)} {10698#(<= ~counter~0 0)} #59#return; {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,702 INFO L272 TraceCheckUtils]: 11: Hoare triple {10698#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,702 INFO L290 TraceCheckUtils]: 12: Hoare triple {10698#(<= ~counter~0 0)} ~cond := #in~cond; {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,703 INFO L290 TraceCheckUtils]: 13: Hoare triple {10698#(<= ~counter~0 0)} assume !(0 == ~cond); {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,703 INFO L290 TraceCheckUtils]: 14: Hoare triple {10698#(<= ~counter~0 0)} assume true; {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,703 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10698#(<= ~counter~0 0)} {10698#(<= ~counter~0 0)} #61#return; {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,704 INFO L290 TraceCheckUtils]: 16: Hoare triple {10698#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {10698#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:04,704 INFO L290 TraceCheckUtils]: 17: Hoare triple {10698#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10747#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:04,704 INFO L290 TraceCheckUtils]: 18: Hoare triple {10747#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {10747#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:04,705 INFO L272 TraceCheckUtils]: 19: Hoare triple {10747#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10747#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:04,705 INFO L290 TraceCheckUtils]: 20: Hoare triple {10747#(<= ~counter~0 1)} ~cond := #in~cond; {10747#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:04,706 INFO L290 TraceCheckUtils]: 21: Hoare triple {10747#(<= ~counter~0 1)} assume !(0 == ~cond); {10747#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:04,706 INFO L290 TraceCheckUtils]: 22: Hoare triple {10747#(<= ~counter~0 1)} assume true; {10747#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:04,706 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10747#(<= ~counter~0 1)} {10747#(<= ~counter~0 1)} #63#return; {10747#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:04,707 INFO L290 TraceCheckUtils]: 24: Hoare triple {10747#(<= ~counter~0 1)} assume !!(0 != ~r~0); {10747#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:04,707 INFO L290 TraceCheckUtils]: 25: Hoare triple {10747#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {10747#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:04,707 INFO L290 TraceCheckUtils]: 26: Hoare triple {10747#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10775#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:04,708 INFO L290 TraceCheckUtils]: 27: Hoare triple {10775#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {10775#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:04,708 INFO L272 TraceCheckUtils]: 28: Hoare triple {10775#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10775#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:04,708 INFO L290 TraceCheckUtils]: 29: Hoare triple {10775#(<= ~counter~0 2)} ~cond := #in~cond; {10775#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:04,709 INFO L290 TraceCheckUtils]: 30: Hoare triple {10775#(<= ~counter~0 2)} assume !(0 == ~cond); {10775#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:04,709 INFO L290 TraceCheckUtils]: 31: Hoare triple {10775#(<= ~counter~0 2)} assume true; {10775#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:04,709 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {10775#(<= ~counter~0 2)} {10775#(<= ~counter~0 2)} #63#return; {10775#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:04,710 INFO L290 TraceCheckUtils]: 33: Hoare triple {10775#(<= ~counter~0 2)} assume !!(0 != ~r~0); {10775#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:04,710 INFO L290 TraceCheckUtils]: 34: Hoare triple {10775#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {10775#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:04,710 INFO L290 TraceCheckUtils]: 35: Hoare triple {10775#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10803#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:04,711 INFO L290 TraceCheckUtils]: 36: Hoare triple {10803#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {10803#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:04,711 INFO L272 TraceCheckUtils]: 37: Hoare triple {10803#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10803#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:04,711 INFO L290 TraceCheckUtils]: 38: Hoare triple {10803#(<= ~counter~0 3)} ~cond := #in~cond; {10803#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:04,712 INFO L290 TraceCheckUtils]: 39: Hoare triple {10803#(<= ~counter~0 3)} assume !(0 == ~cond); {10803#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:04,712 INFO L290 TraceCheckUtils]: 40: Hoare triple {10803#(<= ~counter~0 3)} assume true; {10803#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:04,712 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {10803#(<= ~counter~0 3)} {10803#(<= ~counter~0 3)} #63#return; {10803#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:04,713 INFO L290 TraceCheckUtils]: 42: Hoare triple {10803#(<= ~counter~0 3)} assume !!(0 != ~r~0); {10803#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:04,713 INFO L290 TraceCheckUtils]: 43: Hoare triple {10803#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {10803#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:04,713 INFO L290 TraceCheckUtils]: 44: Hoare triple {10803#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10831#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:04,714 INFO L290 TraceCheckUtils]: 45: Hoare triple {10831#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {10831#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:04,714 INFO L272 TraceCheckUtils]: 46: Hoare triple {10831#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10831#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:04,714 INFO L290 TraceCheckUtils]: 47: Hoare triple {10831#(<= ~counter~0 4)} ~cond := #in~cond; {10831#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:04,715 INFO L290 TraceCheckUtils]: 48: Hoare triple {10831#(<= ~counter~0 4)} assume !(0 == ~cond); {10831#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:04,715 INFO L290 TraceCheckUtils]: 49: Hoare triple {10831#(<= ~counter~0 4)} assume true; {10831#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:04,716 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {10831#(<= ~counter~0 4)} {10831#(<= ~counter~0 4)} #63#return; {10831#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:04,716 INFO L290 TraceCheckUtils]: 51: Hoare triple {10831#(<= ~counter~0 4)} assume !!(0 != ~r~0); {10831#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:04,716 INFO L290 TraceCheckUtils]: 52: Hoare triple {10831#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {10831#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:04,717 INFO L290 TraceCheckUtils]: 53: Hoare triple {10831#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10859#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:04,717 INFO L290 TraceCheckUtils]: 54: Hoare triple {10859#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {10859#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:04,717 INFO L272 TraceCheckUtils]: 55: Hoare triple {10859#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10859#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:04,718 INFO L290 TraceCheckUtils]: 56: Hoare triple {10859#(<= ~counter~0 5)} ~cond := #in~cond; {10859#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:04,718 INFO L290 TraceCheckUtils]: 57: Hoare triple {10859#(<= ~counter~0 5)} assume !(0 == ~cond); {10859#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:04,718 INFO L290 TraceCheckUtils]: 58: Hoare triple {10859#(<= ~counter~0 5)} assume true; {10859#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:04,719 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10859#(<= ~counter~0 5)} {10859#(<= ~counter~0 5)} #63#return; {10859#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:04,719 INFO L290 TraceCheckUtils]: 60: Hoare triple {10859#(<= ~counter~0 5)} assume !!(0 != ~r~0); {10859#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:04,719 INFO L290 TraceCheckUtils]: 61: Hoare triple {10859#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {10859#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:04,720 INFO L290 TraceCheckUtils]: 62: Hoare triple {10859#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10887#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:04,720 INFO L290 TraceCheckUtils]: 63: Hoare triple {10887#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {10887#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:04,720 INFO L272 TraceCheckUtils]: 64: Hoare triple {10887#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10887#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:04,721 INFO L290 TraceCheckUtils]: 65: Hoare triple {10887#(<= ~counter~0 6)} ~cond := #in~cond; {10887#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:04,721 INFO L290 TraceCheckUtils]: 66: Hoare triple {10887#(<= ~counter~0 6)} assume !(0 == ~cond); {10887#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:04,721 INFO L290 TraceCheckUtils]: 67: Hoare triple {10887#(<= ~counter~0 6)} assume true; {10887#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:04,722 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {10887#(<= ~counter~0 6)} {10887#(<= ~counter~0 6)} #63#return; {10887#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:04,722 INFO L290 TraceCheckUtils]: 69: Hoare triple {10887#(<= ~counter~0 6)} assume !!(0 != ~r~0); {10887#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:04,722 INFO L290 TraceCheckUtils]: 70: Hoare triple {10887#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {10887#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:04,723 INFO L290 TraceCheckUtils]: 71: Hoare triple {10887#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10915#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:04,723 INFO L290 TraceCheckUtils]: 72: Hoare triple {10915#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {10915#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:04,724 INFO L272 TraceCheckUtils]: 73: Hoare triple {10915#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10915#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:04,724 INFO L290 TraceCheckUtils]: 74: Hoare triple {10915#(<= ~counter~0 7)} ~cond := #in~cond; {10915#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:04,724 INFO L290 TraceCheckUtils]: 75: Hoare triple {10915#(<= ~counter~0 7)} assume !(0 == ~cond); {10915#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:04,724 INFO L290 TraceCheckUtils]: 76: Hoare triple {10915#(<= ~counter~0 7)} assume true; {10915#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:04,725 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {10915#(<= ~counter~0 7)} {10915#(<= ~counter~0 7)} #63#return; {10915#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:04,725 INFO L290 TraceCheckUtils]: 78: Hoare triple {10915#(<= ~counter~0 7)} assume !!(0 != ~r~0); {10915#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:04,725 INFO L290 TraceCheckUtils]: 79: Hoare triple {10915#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {10915#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:04,726 INFO L290 TraceCheckUtils]: 80: Hoare triple {10915#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:04,726 INFO L290 TraceCheckUtils]: 81: Hoare triple {10943#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:04,727 INFO L272 TraceCheckUtils]: 82: Hoare triple {10943#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:04,727 INFO L290 TraceCheckUtils]: 83: Hoare triple {10943#(<= ~counter~0 8)} ~cond := #in~cond; {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:04,727 INFO L290 TraceCheckUtils]: 84: Hoare triple {10943#(<= ~counter~0 8)} assume !(0 == ~cond); {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:04,727 INFO L290 TraceCheckUtils]: 85: Hoare triple {10943#(<= ~counter~0 8)} assume true; {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:04,728 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {10943#(<= ~counter~0 8)} {10943#(<= ~counter~0 8)} #63#return; {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:04,728 INFO L290 TraceCheckUtils]: 87: Hoare triple {10943#(<= ~counter~0 8)} assume !!(0 != ~r~0); {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:04,728 INFO L290 TraceCheckUtils]: 88: Hoare triple {10943#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:04,729 INFO L290 TraceCheckUtils]: 89: Hoare triple {10943#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10971#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:04,729 INFO L290 TraceCheckUtils]: 90: Hoare triple {10971#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {10971#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:04,730 INFO L272 TraceCheckUtils]: 91: Hoare triple {10971#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10971#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:04,730 INFO L290 TraceCheckUtils]: 92: Hoare triple {10971#(<= ~counter~0 9)} ~cond := #in~cond; {10971#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:04,730 INFO L290 TraceCheckUtils]: 93: Hoare triple {10971#(<= ~counter~0 9)} assume !(0 == ~cond); {10971#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:04,731 INFO L290 TraceCheckUtils]: 94: Hoare triple {10971#(<= ~counter~0 9)} assume true; {10971#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:04,731 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {10971#(<= ~counter~0 9)} {10971#(<= ~counter~0 9)} #63#return; {10971#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:04,731 INFO L290 TraceCheckUtils]: 96: Hoare triple {10971#(<= ~counter~0 9)} assume !!(0 != ~r~0); {10971#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:04,732 INFO L290 TraceCheckUtils]: 97: Hoare triple {10971#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {10971#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:04,732 INFO L290 TraceCheckUtils]: 98: Hoare triple {10971#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10999#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:04,732 INFO L290 TraceCheckUtils]: 99: Hoare triple {10999#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {10999#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:04,733 INFO L272 TraceCheckUtils]: 100: Hoare triple {10999#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10999#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:04,733 INFO L290 TraceCheckUtils]: 101: Hoare triple {10999#(<= ~counter~0 10)} ~cond := #in~cond; {10999#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:04,733 INFO L290 TraceCheckUtils]: 102: Hoare triple {10999#(<= ~counter~0 10)} assume !(0 == ~cond); {10999#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:04,734 INFO L290 TraceCheckUtils]: 103: Hoare triple {10999#(<= ~counter~0 10)} assume true; {10999#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:04,734 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {10999#(<= ~counter~0 10)} {10999#(<= ~counter~0 10)} #63#return; {10999#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:04,734 INFO L290 TraceCheckUtils]: 105: Hoare triple {10999#(<= ~counter~0 10)} assume !!(0 != ~r~0); {10999#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:04,735 INFO L290 TraceCheckUtils]: 106: Hoare triple {10999#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {10999#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:04,735 INFO L290 TraceCheckUtils]: 107: Hoare triple {10999#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11027#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:04,735 INFO L290 TraceCheckUtils]: 108: Hoare triple {11027#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {11027#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:04,736 INFO L272 TraceCheckUtils]: 109: Hoare triple {11027#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {11027#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:04,736 INFO L290 TraceCheckUtils]: 110: Hoare triple {11027#(<= ~counter~0 11)} ~cond := #in~cond; {11027#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:04,737 INFO L290 TraceCheckUtils]: 111: Hoare triple {11027#(<= ~counter~0 11)} assume !(0 == ~cond); {11027#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:04,737 INFO L290 TraceCheckUtils]: 112: Hoare triple {11027#(<= ~counter~0 11)} assume true; {11027#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:04,737 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {11027#(<= ~counter~0 11)} {11027#(<= ~counter~0 11)} #63#return; {11027#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:04,738 INFO L290 TraceCheckUtils]: 114: Hoare triple {11027#(<= ~counter~0 11)} assume !!(0 != ~r~0); {11027#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:04,738 INFO L290 TraceCheckUtils]: 115: Hoare triple {11027#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {11027#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:04,738 INFO L290 TraceCheckUtils]: 116: Hoare triple {11027#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11055#(<= |main_#t~post6| 11)} is VALID [2022-04-08 06:08:04,738 INFO L290 TraceCheckUtils]: 117: Hoare triple {11055#(<= |main_#t~post6| 11)} assume !(#t~post6 < 20);havoc #t~post6; {10691#false} is VALID [2022-04-08 06:08:04,739 INFO L272 TraceCheckUtils]: 118: Hoare triple {10691#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10691#false} is VALID [2022-04-08 06:08:04,739 INFO L290 TraceCheckUtils]: 119: Hoare triple {10691#false} ~cond := #in~cond; {10691#false} is VALID [2022-04-08 06:08:04,739 INFO L290 TraceCheckUtils]: 120: Hoare triple {10691#false} assume 0 == ~cond; {10691#false} is VALID [2022-04-08 06:08:04,739 INFO L290 TraceCheckUtils]: 121: Hoare triple {10691#false} assume !false; {10691#false} is VALID [2022-04-08 06:08:04,739 INFO L134 CoverageAnalysis]: Checked inductivity of 543 backedges. 22 proven. 517 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:08:04,739 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:08:05,394 INFO L290 TraceCheckUtils]: 121: Hoare triple {10691#false} assume !false; {10691#false} is VALID [2022-04-08 06:08:05,395 INFO L290 TraceCheckUtils]: 120: Hoare triple {10691#false} assume 0 == ~cond; {10691#false} is VALID [2022-04-08 06:08:05,395 INFO L290 TraceCheckUtils]: 119: Hoare triple {10691#false} ~cond := #in~cond; {10691#false} is VALID [2022-04-08 06:08:05,395 INFO L272 TraceCheckUtils]: 118: Hoare triple {10691#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10691#false} is VALID [2022-04-08 06:08:05,395 INFO L290 TraceCheckUtils]: 117: Hoare triple {11083#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {10691#false} is VALID [2022-04-08 06:08:05,395 INFO L290 TraceCheckUtils]: 116: Hoare triple {11087#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11083#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:08:05,396 INFO L290 TraceCheckUtils]: 115: Hoare triple {11087#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {11087#(< ~counter~0 20)} is VALID [2022-04-08 06:08:05,396 INFO L290 TraceCheckUtils]: 114: Hoare triple {11087#(< ~counter~0 20)} assume !!(0 != ~r~0); {11087#(< ~counter~0 20)} is VALID [2022-04-08 06:08:05,396 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {10690#true} {11087#(< ~counter~0 20)} #63#return; {11087#(< ~counter~0 20)} is VALID [2022-04-08 06:08:05,397 INFO L290 TraceCheckUtils]: 112: Hoare triple {10690#true} assume true; {10690#true} is VALID [2022-04-08 06:08:05,397 INFO L290 TraceCheckUtils]: 111: Hoare triple {10690#true} assume !(0 == ~cond); {10690#true} is VALID [2022-04-08 06:08:05,397 INFO L290 TraceCheckUtils]: 110: Hoare triple {10690#true} ~cond := #in~cond; {10690#true} is VALID [2022-04-08 06:08:05,397 INFO L272 TraceCheckUtils]: 109: Hoare triple {11087#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10690#true} is VALID [2022-04-08 06:08:05,397 INFO L290 TraceCheckUtils]: 108: Hoare triple {11087#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {11087#(< ~counter~0 20)} is VALID [2022-04-08 06:08:05,398 INFO L290 TraceCheckUtils]: 107: Hoare triple {11115#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11087#(< ~counter~0 20)} is VALID [2022-04-08 06:08:05,398 INFO L290 TraceCheckUtils]: 106: Hoare triple {11115#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {11115#(< ~counter~0 19)} is VALID [2022-04-08 06:08:05,398 INFO L290 TraceCheckUtils]: 105: Hoare triple {11115#(< ~counter~0 19)} assume !!(0 != ~r~0); {11115#(< ~counter~0 19)} is VALID [2022-04-08 06:08:05,399 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {10690#true} {11115#(< ~counter~0 19)} #63#return; {11115#(< ~counter~0 19)} is VALID [2022-04-08 06:08:05,399 INFO L290 TraceCheckUtils]: 103: Hoare triple {10690#true} assume true; {10690#true} is VALID [2022-04-08 06:08:05,399 INFO L290 TraceCheckUtils]: 102: Hoare triple {10690#true} assume !(0 == ~cond); {10690#true} is VALID [2022-04-08 06:08:05,399 INFO L290 TraceCheckUtils]: 101: Hoare triple {10690#true} ~cond := #in~cond; {10690#true} is VALID [2022-04-08 06:08:05,399 INFO L272 TraceCheckUtils]: 100: Hoare triple {11115#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10690#true} is VALID [2022-04-08 06:08:05,400 INFO L290 TraceCheckUtils]: 99: Hoare triple {11115#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {11115#(< ~counter~0 19)} is VALID [2022-04-08 06:08:05,400 INFO L290 TraceCheckUtils]: 98: Hoare triple {11143#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11115#(< ~counter~0 19)} is VALID [2022-04-08 06:08:05,401 INFO L290 TraceCheckUtils]: 97: Hoare triple {11143#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {11143#(< ~counter~0 18)} is VALID [2022-04-08 06:08:05,401 INFO L290 TraceCheckUtils]: 96: Hoare triple {11143#(< ~counter~0 18)} assume !!(0 != ~r~0); {11143#(< ~counter~0 18)} is VALID [2022-04-08 06:08:05,401 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {10690#true} {11143#(< ~counter~0 18)} #63#return; {11143#(< ~counter~0 18)} is VALID [2022-04-08 06:08:05,401 INFO L290 TraceCheckUtils]: 94: Hoare triple {10690#true} assume true; {10690#true} is VALID [2022-04-08 06:08:05,401 INFO L290 TraceCheckUtils]: 93: Hoare triple {10690#true} assume !(0 == ~cond); {10690#true} is VALID [2022-04-08 06:08:05,402 INFO L290 TraceCheckUtils]: 92: Hoare triple {10690#true} ~cond := #in~cond; {10690#true} is VALID [2022-04-08 06:08:05,402 INFO L272 TraceCheckUtils]: 91: Hoare triple {11143#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10690#true} is VALID [2022-04-08 06:08:05,402 INFO L290 TraceCheckUtils]: 90: Hoare triple {11143#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {11143#(< ~counter~0 18)} is VALID [2022-04-08 06:08:05,402 INFO L290 TraceCheckUtils]: 89: Hoare triple {11171#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11143#(< ~counter~0 18)} is VALID [2022-04-08 06:08:05,403 INFO L290 TraceCheckUtils]: 88: Hoare triple {11171#(< ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {11171#(< ~counter~0 17)} is VALID [2022-04-08 06:08:05,403 INFO L290 TraceCheckUtils]: 87: Hoare triple {11171#(< ~counter~0 17)} assume !!(0 != ~r~0); {11171#(< ~counter~0 17)} is VALID [2022-04-08 06:08:05,403 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {10690#true} {11171#(< ~counter~0 17)} #63#return; {11171#(< ~counter~0 17)} is VALID [2022-04-08 06:08:05,403 INFO L290 TraceCheckUtils]: 85: Hoare triple {10690#true} assume true; {10690#true} is VALID [2022-04-08 06:08:05,403 INFO L290 TraceCheckUtils]: 84: Hoare triple {10690#true} assume !(0 == ~cond); {10690#true} is VALID [2022-04-08 06:08:05,404 INFO L290 TraceCheckUtils]: 83: Hoare triple {10690#true} ~cond := #in~cond; {10690#true} is VALID [2022-04-08 06:08:05,404 INFO L272 TraceCheckUtils]: 82: Hoare triple {11171#(< ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10690#true} is VALID [2022-04-08 06:08:05,404 INFO L290 TraceCheckUtils]: 81: Hoare triple {11171#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {11171#(< ~counter~0 17)} is VALID [2022-04-08 06:08:05,404 INFO L290 TraceCheckUtils]: 80: Hoare triple {11199#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11171#(< ~counter~0 17)} is VALID [2022-04-08 06:08:05,405 INFO L290 TraceCheckUtils]: 79: Hoare triple {11199#(< ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {11199#(< ~counter~0 16)} is VALID [2022-04-08 06:08:05,405 INFO L290 TraceCheckUtils]: 78: Hoare triple {11199#(< ~counter~0 16)} assume !!(0 != ~r~0); {11199#(< ~counter~0 16)} is VALID [2022-04-08 06:08:05,405 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {10690#true} {11199#(< ~counter~0 16)} #63#return; {11199#(< ~counter~0 16)} is VALID [2022-04-08 06:08:05,405 INFO L290 TraceCheckUtils]: 76: Hoare triple {10690#true} assume true; {10690#true} is VALID [2022-04-08 06:08:05,405 INFO L290 TraceCheckUtils]: 75: Hoare triple {10690#true} assume !(0 == ~cond); {10690#true} is VALID [2022-04-08 06:08:05,406 INFO L290 TraceCheckUtils]: 74: Hoare triple {10690#true} ~cond := #in~cond; {10690#true} is VALID [2022-04-08 06:08:05,406 INFO L272 TraceCheckUtils]: 73: Hoare triple {11199#(< ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10690#true} is VALID [2022-04-08 06:08:05,408 INFO L290 TraceCheckUtils]: 72: Hoare triple {11199#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {11199#(< ~counter~0 16)} is VALID [2022-04-08 06:08:05,408 INFO L290 TraceCheckUtils]: 71: Hoare triple {11227#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11199#(< ~counter~0 16)} is VALID [2022-04-08 06:08:05,409 INFO L290 TraceCheckUtils]: 70: Hoare triple {11227#(< ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {11227#(< ~counter~0 15)} is VALID [2022-04-08 06:08:05,409 INFO L290 TraceCheckUtils]: 69: Hoare triple {11227#(< ~counter~0 15)} assume !!(0 != ~r~0); {11227#(< ~counter~0 15)} is VALID [2022-04-08 06:08:05,416 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {10690#true} {11227#(< ~counter~0 15)} #63#return; {11227#(< ~counter~0 15)} is VALID [2022-04-08 06:08:05,416 INFO L290 TraceCheckUtils]: 67: Hoare triple {10690#true} assume true; {10690#true} is VALID [2022-04-08 06:08:05,416 INFO L290 TraceCheckUtils]: 66: Hoare triple {10690#true} assume !(0 == ~cond); {10690#true} is VALID [2022-04-08 06:08:05,416 INFO L290 TraceCheckUtils]: 65: Hoare triple {10690#true} ~cond := #in~cond; {10690#true} is VALID [2022-04-08 06:08:05,416 INFO L272 TraceCheckUtils]: 64: Hoare triple {11227#(< ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10690#true} is VALID [2022-04-08 06:08:05,416 INFO L290 TraceCheckUtils]: 63: Hoare triple {11227#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {11227#(< ~counter~0 15)} is VALID [2022-04-08 06:08:05,420 INFO L290 TraceCheckUtils]: 62: Hoare triple {11255#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11227#(< ~counter~0 15)} is VALID [2022-04-08 06:08:05,420 INFO L290 TraceCheckUtils]: 61: Hoare triple {11255#(< ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {11255#(< ~counter~0 14)} is VALID [2022-04-08 06:08:05,421 INFO L290 TraceCheckUtils]: 60: Hoare triple {11255#(< ~counter~0 14)} assume !!(0 != ~r~0); {11255#(< ~counter~0 14)} is VALID [2022-04-08 06:08:05,422 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10690#true} {11255#(< ~counter~0 14)} #63#return; {11255#(< ~counter~0 14)} is VALID [2022-04-08 06:08:05,422 INFO L290 TraceCheckUtils]: 58: Hoare triple {10690#true} assume true; {10690#true} is VALID [2022-04-08 06:08:05,422 INFO L290 TraceCheckUtils]: 57: Hoare triple {10690#true} assume !(0 == ~cond); {10690#true} is VALID [2022-04-08 06:08:05,422 INFO L290 TraceCheckUtils]: 56: Hoare triple {10690#true} ~cond := #in~cond; {10690#true} is VALID [2022-04-08 06:08:05,422 INFO L272 TraceCheckUtils]: 55: Hoare triple {11255#(< ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10690#true} is VALID [2022-04-08 06:08:05,423 INFO L290 TraceCheckUtils]: 54: Hoare triple {11255#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {11255#(< ~counter~0 14)} is VALID [2022-04-08 06:08:05,423 INFO L290 TraceCheckUtils]: 53: Hoare triple {11283#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11255#(< ~counter~0 14)} is VALID [2022-04-08 06:08:05,423 INFO L290 TraceCheckUtils]: 52: Hoare triple {11283#(< ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {11283#(< ~counter~0 13)} is VALID [2022-04-08 06:08:05,424 INFO L290 TraceCheckUtils]: 51: Hoare triple {11283#(< ~counter~0 13)} assume !!(0 != ~r~0); {11283#(< ~counter~0 13)} is VALID [2022-04-08 06:08:05,424 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {10690#true} {11283#(< ~counter~0 13)} #63#return; {11283#(< ~counter~0 13)} is VALID [2022-04-08 06:08:05,425 INFO L290 TraceCheckUtils]: 49: Hoare triple {10690#true} assume true; {10690#true} is VALID [2022-04-08 06:08:05,425 INFO L290 TraceCheckUtils]: 48: Hoare triple {10690#true} assume !(0 == ~cond); {10690#true} is VALID [2022-04-08 06:08:05,425 INFO L290 TraceCheckUtils]: 47: Hoare triple {10690#true} ~cond := #in~cond; {10690#true} is VALID [2022-04-08 06:08:05,425 INFO L272 TraceCheckUtils]: 46: Hoare triple {11283#(< ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10690#true} is VALID [2022-04-08 06:08:05,425 INFO L290 TraceCheckUtils]: 45: Hoare triple {11283#(< ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {11283#(< ~counter~0 13)} is VALID [2022-04-08 06:08:05,426 INFO L290 TraceCheckUtils]: 44: Hoare triple {11027#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11283#(< ~counter~0 13)} is VALID [2022-04-08 06:08:05,426 INFO L290 TraceCheckUtils]: 43: Hoare triple {11027#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {11027#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:05,426 INFO L290 TraceCheckUtils]: 42: Hoare triple {11027#(<= ~counter~0 11)} assume !!(0 != ~r~0); {11027#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:05,427 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {10690#true} {11027#(<= ~counter~0 11)} #63#return; {11027#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:05,427 INFO L290 TraceCheckUtils]: 40: Hoare triple {10690#true} assume true; {10690#true} is VALID [2022-04-08 06:08:05,427 INFO L290 TraceCheckUtils]: 39: Hoare triple {10690#true} assume !(0 == ~cond); {10690#true} is VALID [2022-04-08 06:08:05,427 INFO L290 TraceCheckUtils]: 38: Hoare triple {10690#true} ~cond := #in~cond; {10690#true} is VALID [2022-04-08 06:08:05,427 INFO L272 TraceCheckUtils]: 37: Hoare triple {11027#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10690#true} is VALID [2022-04-08 06:08:05,428 INFO L290 TraceCheckUtils]: 36: Hoare triple {11027#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {11027#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:05,428 INFO L290 TraceCheckUtils]: 35: Hoare triple {10999#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11027#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:05,429 INFO L290 TraceCheckUtils]: 34: Hoare triple {10999#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {10999#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:05,429 INFO L290 TraceCheckUtils]: 33: Hoare triple {10999#(<= ~counter~0 10)} assume !!(0 != ~r~0); {10999#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:05,430 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {10690#true} {10999#(<= ~counter~0 10)} #63#return; {10999#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:05,430 INFO L290 TraceCheckUtils]: 31: Hoare triple {10690#true} assume true; {10690#true} is VALID [2022-04-08 06:08:05,430 INFO L290 TraceCheckUtils]: 30: Hoare triple {10690#true} assume !(0 == ~cond); {10690#true} is VALID [2022-04-08 06:08:05,430 INFO L290 TraceCheckUtils]: 29: Hoare triple {10690#true} ~cond := #in~cond; {10690#true} is VALID [2022-04-08 06:08:05,430 INFO L272 TraceCheckUtils]: 28: Hoare triple {10999#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10690#true} is VALID [2022-04-08 06:08:05,430 INFO L290 TraceCheckUtils]: 27: Hoare triple {10999#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {10999#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:05,431 INFO L290 TraceCheckUtils]: 26: Hoare triple {10971#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10999#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:05,431 INFO L290 TraceCheckUtils]: 25: Hoare triple {10971#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {10971#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:05,432 INFO L290 TraceCheckUtils]: 24: Hoare triple {10971#(<= ~counter~0 9)} assume !!(0 != ~r~0); {10971#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:05,432 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10690#true} {10971#(<= ~counter~0 9)} #63#return; {10971#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:05,432 INFO L290 TraceCheckUtils]: 22: Hoare triple {10690#true} assume true; {10690#true} is VALID [2022-04-08 06:08:05,432 INFO L290 TraceCheckUtils]: 21: Hoare triple {10690#true} assume !(0 == ~cond); {10690#true} is VALID [2022-04-08 06:08:05,432 INFO L290 TraceCheckUtils]: 20: Hoare triple {10690#true} ~cond := #in~cond; {10690#true} is VALID [2022-04-08 06:08:05,433 INFO L272 TraceCheckUtils]: 19: Hoare triple {10971#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {10690#true} is VALID [2022-04-08 06:08:05,433 INFO L290 TraceCheckUtils]: 18: Hoare triple {10971#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {10971#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:05,433 INFO L290 TraceCheckUtils]: 17: Hoare triple {10943#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10971#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:05,434 INFO L290 TraceCheckUtils]: 16: Hoare triple {10943#(<= ~counter~0 8)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:05,434 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10690#true} {10943#(<= ~counter~0 8)} #61#return; {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:05,434 INFO L290 TraceCheckUtils]: 14: Hoare triple {10690#true} assume true; {10690#true} is VALID [2022-04-08 06:08:05,434 INFO L290 TraceCheckUtils]: 13: Hoare triple {10690#true} assume !(0 == ~cond); {10690#true} is VALID [2022-04-08 06:08:05,435 INFO L290 TraceCheckUtils]: 12: Hoare triple {10690#true} ~cond := #in~cond; {10690#true} is VALID [2022-04-08 06:08:05,435 INFO L272 TraceCheckUtils]: 11: Hoare triple {10943#(<= ~counter~0 8)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {10690#true} is VALID [2022-04-08 06:08:05,435 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10690#true} {10943#(<= ~counter~0 8)} #59#return; {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:05,435 INFO L290 TraceCheckUtils]: 9: Hoare triple {10690#true} assume true; {10690#true} is VALID [2022-04-08 06:08:05,435 INFO L290 TraceCheckUtils]: 8: Hoare triple {10690#true} assume !(0 == ~cond); {10690#true} is VALID [2022-04-08 06:08:05,435 INFO L290 TraceCheckUtils]: 7: Hoare triple {10690#true} ~cond := #in~cond; {10690#true} is VALID [2022-04-08 06:08:05,436 INFO L272 TraceCheckUtils]: 6: Hoare triple {10943#(<= ~counter~0 8)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {10690#true} is VALID [2022-04-08 06:08:05,436 INFO L290 TraceCheckUtils]: 5: Hoare triple {10943#(<= ~counter~0 8)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:05,436 INFO L272 TraceCheckUtils]: 4: Hoare triple {10943#(<= ~counter~0 8)} call #t~ret7 := main(); {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:05,437 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10943#(<= ~counter~0 8)} {10690#true} #67#return; {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:05,437 INFO L290 TraceCheckUtils]: 2: Hoare triple {10943#(<= ~counter~0 8)} assume true; {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:05,438 INFO L290 TraceCheckUtils]: 1: Hoare triple {10690#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {10943#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:05,438 INFO L272 TraceCheckUtils]: 0: Hoare triple {10690#true} call ULTIMATE.init(); {10690#true} is VALID [2022-04-08 06:08:05,438 INFO L134 CoverageAnalysis]: Checked inductivity of 543 backedges. 22 proven. 297 refuted. 0 times theorem prover too weak. 224 trivial. 0 not checked. [2022-04-08 06:08:05,438 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:08:05,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1961826587] [2022-04-08 06:08:05,439 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:08:05,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1375391874] [2022-04-08 06:08:05,439 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1375391874] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:08:05,439 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:08:05,439 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 24 [2022-04-08 06:08:05,439 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:08:05,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1996719921] [2022-04-08 06:08:05,439 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1996719921] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:08:05,439 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:08:05,439 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-08 06:08:05,440 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [686454415] [2022-04-08 06:08:05,440 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:08:05,440 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 5.933333333333334) internal successors, (89), 14 states have internal predecessors, (89), 14 states have call successors, (16), 14 states have call predecessors, (16), 12 states have return successors, (14), 12 states have call predecessors, (14), 13 states have call successors, (14) Word has length 122 [2022-04-08 06:08:05,440 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:08:05,441 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 5.933333333333334) internal successors, (89), 14 states have internal predecessors, (89), 14 states have call successors, (16), 14 states have call predecessors, (16), 12 states have return successors, (14), 12 states have call predecessors, (14), 13 states have call successors, (14) [2022-04-08 06:08:05,532 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:05,532 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-08 06:08:05,532 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:05,533 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-08 06:08:05,533 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:08:05,533 INFO L87 Difference]: Start difference. First operand 119 states and 131 transitions. Second operand has 15 states, 15 states have (on average 5.933333333333334) internal successors, (89), 14 states have internal predecessors, (89), 14 states have call successors, (16), 14 states have call predecessors, (16), 12 states have return successors, (14), 12 states have call predecessors, (14), 13 states have call successors, (14) [2022-04-08 06:08:06,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:06,015 INFO L93 Difference]: Finished difference Result 133 states and 146 transitions. [2022-04-08 06:08:06,015 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-08 06:08:06,015 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 5.933333333333334) internal successors, (89), 14 states have internal predecessors, (89), 14 states have call successors, (16), 14 states have call predecessors, (16), 12 states have return successors, (14), 12 states have call predecessors, (14), 13 states have call successors, (14) Word has length 122 [2022-04-08 06:08:06,015 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:08:06,016 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 5.933333333333334) internal successors, (89), 14 states have internal predecessors, (89), 14 states have call successors, (16), 14 states have call predecessors, (16), 12 states have return successors, (14), 12 states have call predecessors, (14), 13 states have call successors, (14) [2022-04-08 06:08:06,018 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 145 transitions. [2022-04-08 06:08:06,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 5.933333333333334) internal successors, (89), 14 states have internal predecessors, (89), 14 states have call successors, (16), 14 states have call predecessors, (16), 12 states have return successors, (14), 12 states have call predecessors, (14), 13 states have call successors, (14) [2022-04-08 06:08:06,021 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 145 transitions. [2022-04-08 06:08:06,021 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 145 transitions. [2022-04-08 06:08:06,151 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 145 edges. 145 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:06,153 INFO L225 Difference]: With dead ends: 133 [2022-04-08 06:08:06,153 INFO L226 Difference]: Without dead ends: 128 [2022-04-08 06:08:06,154 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 254 GetRequests, 220 SyntacticMatches, 1 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 93 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=489, Invalid=701, Unknown=0, NotChecked=0, Total=1190 [2022-04-08 06:08:06,154 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 26 mSDsluCounter, 139 mSDsCounter, 0 mSdLazyCounter, 75 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 176 SdHoareTripleChecker+Invalid, 82 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 75 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:08:06,155 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [26 Valid, 176 Invalid, 82 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 75 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:08:06,155 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 128 states. [2022-04-08 06:08:06,323 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 128 to 128. [2022-04-08 06:08:06,323 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:08:06,324 INFO L82 GeneralOperation]: Start isEquivalent. First operand 128 states. Second operand has 128 states, 96 states have (on average 1.1354166666666667) internal successors, (109), 96 states have internal predecessors, (109), 17 states have call successors, (17), 16 states have call predecessors, (17), 14 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 06:08:06,324 INFO L74 IsIncluded]: Start isIncluded. First operand 128 states. Second operand has 128 states, 96 states have (on average 1.1354166666666667) internal successors, (109), 96 states have internal predecessors, (109), 17 states have call successors, (17), 16 states have call predecessors, (17), 14 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 06:08:06,324 INFO L87 Difference]: Start difference. First operand 128 states. Second operand has 128 states, 96 states have (on average 1.1354166666666667) internal successors, (109), 96 states have internal predecessors, (109), 17 states have call successors, (17), 16 states have call predecessors, (17), 14 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 06:08:06,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:06,327 INFO L93 Difference]: Finished difference Result 128 states and 141 transitions. [2022-04-08 06:08:06,327 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 141 transitions. [2022-04-08 06:08:06,327 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:06,327 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:06,327 INFO L74 IsIncluded]: Start isIncluded. First operand has 128 states, 96 states have (on average 1.1354166666666667) internal successors, (109), 96 states have internal predecessors, (109), 17 states have call successors, (17), 16 states have call predecessors, (17), 14 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 128 states. [2022-04-08 06:08:06,328 INFO L87 Difference]: Start difference. First operand has 128 states, 96 states have (on average 1.1354166666666667) internal successors, (109), 96 states have internal predecessors, (109), 17 states have call successors, (17), 16 states have call predecessors, (17), 14 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 128 states. [2022-04-08 06:08:06,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:06,330 INFO L93 Difference]: Finished difference Result 128 states and 141 transitions. [2022-04-08 06:08:06,330 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 141 transitions. [2022-04-08 06:08:06,330 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:06,330 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:06,331 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:08:06,331 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:08:06,331 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 128 states, 96 states have (on average 1.1354166666666667) internal successors, (109), 96 states have internal predecessors, (109), 17 states have call successors, (17), 16 states have call predecessors, (17), 14 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-08 06:08:06,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 128 states to 128 states and 141 transitions. [2022-04-08 06:08:06,333 INFO L78 Accepts]: Start accepts. Automaton has 128 states and 141 transitions. Word has length 122 [2022-04-08 06:08:06,333 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:08:06,333 INFO L478 AbstractCegarLoop]: Abstraction has 128 states and 141 transitions. [2022-04-08 06:08:06,334 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 5.933333333333334) internal successors, (89), 14 states have internal predecessors, (89), 14 states have call successors, (16), 14 states have call predecessors, (16), 12 states have return successors, (14), 12 states have call predecessors, (14), 13 states have call successors, (14) [2022-04-08 06:08:06,334 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 128 states and 141 transitions. [2022-04-08 06:08:07,871 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 141 edges. 141 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:07,871 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 141 transitions. [2022-04-08 06:08:07,872 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 132 [2022-04-08 06:08:07,872 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:08:07,872 INFO L499 BasicCegarLoop]: trace histogram [13, 13, 12, 12, 12, 12, 12, 12, 12, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:08:07,888 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-08 06:08:08,075 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable14 [2022-04-08 06:08:08,075 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:08:08,076 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:08:08,076 INFO L85 PathProgramCache]: Analyzing trace with hash 881443734, now seen corresponding path program 23 times [2022-04-08 06:08:08,076 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:08,076 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1914653619] [2022-04-08 06:08:08,076 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:08:08,076 INFO L85 PathProgramCache]: Analyzing trace with hash 881443734, now seen corresponding path program 24 times [2022-04-08 06:08:08,076 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:08:08,077 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [987858252] [2022-04-08 06:08:08,077 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:08:08,077 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:08:08,095 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:08:08,095 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [859233710] [2022-04-08 06:08:08,095 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:08:08,095 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:08:08,095 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:08:08,096 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-08 06:08:08,127 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-08 06:08:09,757 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 13 check-sat command(s) [2022-04-08 06:08:09,757 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:08:09,761 INFO L263 TraceCheckSpWp]: Trace formula consists of 333 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-08 06:08:09,797 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:08:09,799 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:08:10,447 INFO L272 TraceCheckUtils]: 0: Hoare triple {12245#true} call ULTIMATE.init(); {12245#true} is VALID [2022-04-08 06:08:10,448 INFO L290 TraceCheckUtils]: 1: Hoare triple {12245#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,448 INFO L290 TraceCheckUtils]: 2: Hoare triple {12253#(<= ~counter~0 0)} assume true; {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,448 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12253#(<= ~counter~0 0)} {12245#true} #67#return; {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,449 INFO L272 TraceCheckUtils]: 4: Hoare triple {12253#(<= ~counter~0 0)} call #t~ret7 := main(); {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,449 INFO L290 TraceCheckUtils]: 5: Hoare triple {12253#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,449 INFO L272 TraceCheckUtils]: 6: Hoare triple {12253#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,450 INFO L290 TraceCheckUtils]: 7: Hoare triple {12253#(<= ~counter~0 0)} ~cond := #in~cond; {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,450 INFO L290 TraceCheckUtils]: 8: Hoare triple {12253#(<= ~counter~0 0)} assume !(0 == ~cond); {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,450 INFO L290 TraceCheckUtils]: 9: Hoare triple {12253#(<= ~counter~0 0)} assume true; {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,451 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12253#(<= ~counter~0 0)} {12253#(<= ~counter~0 0)} #59#return; {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,451 INFO L272 TraceCheckUtils]: 11: Hoare triple {12253#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,451 INFO L290 TraceCheckUtils]: 12: Hoare triple {12253#(<= ~counter~0 0)} ~cond := #in~cond; {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,452 INFO L290 TraceCheckUtils]: 13: Hoare triple {12253#(<= ~counter~0 0)} assume !(0 == ~cond); {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,452 INFO L290 TraceCheckUtils]: 14: Hoare triple {12253#(<= ~counter~0 0)} assume true; {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,452 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12253#(<= ~counter~0 0)} {12253#(<= ~counter~0 0)} #61#return; {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,453 INFO L290 TraceCheckUtils]: 16: Hoare triple {12253#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {12253#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:10,454 INFO L290 TraceCheckUtils]: 17: Hoare triple {12253#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:10,454 INFO L290 TraceCheckUtils]: 18: Hoare triple {12302#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {12302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:10,454 INFO L272 TraceCheckUtils]: 19: Hoare triple {12302#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:10,455 INFO L290 TraceCheckUtils]: 20: Hoare triple {12302#(<= ~counter~0 1)} ~cond := #in~cond; {12302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:10,455 INFO L290 TraceCheckUtils]: 21: Hoare triple {12302#(<= ~counter~0 1)} assume !(0 == ~cond); {12302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:10,455 INFO L290 TraceCheckUtils]: 22: Hoare triple {12302#(<= ~counter~0 1)} assume true; {12302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:10,456 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {12302#(<= ~counter~0 1)} {12302#(<= ~counter~0 1)} #63#return; {12302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:10,456 INFO L290 TraceCheckUtils]: 24: Hoare triple {12302#(<= ~counter~0 1)} assume !!(0 != ~r~0); {12302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:10,456 INFO L290 TraceCheckUtils]: 25: Hoare triple {12302#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12302#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:10,457 INFO L290 TraceCheckUtils]: 26: Hoare triple {12302#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:10,457 INFO L290 TraceCheckUtils]: 27: Hoare triple {12330#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {12330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:10,457 INFO L272 TraceCheckUtils]: 28: Hoare triple {12330#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:10,458 INFO L290 TraceCheckUtils]: 29: Hoare triple {12330#(<= ~counter~0 2)} ~cond := #in~cond; {12330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:10,458 INFO L290 TraceCheckUtils]: 30: Hoare triple {12330#(<= ~counter~0 2)} assume !(0 == ~cond); {12330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:10,458 INFO L290 TraceCheckUtils]: 31: Hoare triple {12330#(<= ~counter~0 2)} assume true; {12330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:10,459 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {12330#(<= ~counter~0 2)} {12330#(<= ~counter~0 2)} #63#return; {12330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:10,459 INFO L290 TraceCheckUtils]: 33: Hoare triple {12330#(<= ~counter~0 2)} assume !!(0 != ~r~0); {12330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:10,459 INFO L290 TraceCheckUtils]: 34: Hoare triple {12330#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12330#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:10,460 INFO L290 TraceCheckUtils]: 35: Hoare triple {12330#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:10,460 INFO L290 TraceCheckUtils]: 36: Hoare triple {12358#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {12358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:10,460 INFO L272 TraceCheckUtils]: 37: Hoare triple {12358#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:10,461 INFO L290 TraceCheckUtils]: 38: Hoare triple {12358#(<= ~counter~0 3)} ~cond := #in~cond; {12358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:10,461 INFO L290 TraceCheckUtils]: 39: Hoare triple {12358#(<= ~counter~0 3)} assume !(0 == ~cond); {12358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:10,461 INFO L290 TraceCheckUtils]: 40: Hoare triple {12358#(<= ~counter~0 3)} assume true; {12358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:10,462 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12358#(<= ~counter~0 3)} {12358#(<= ~counter~0 3)} #63#return; {12358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:10,462 INFO L290 TraceCheckUtils]: 42: Hoare triple {12358#(<= ~counter~0 3)} assume !!(0 != ~r~0); {12358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:10,462 INFO L290 TraceCheckUtils]: 43: Hoare triple {12358#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12358#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:10,463 INFO L290 TraceCheckUtils]: 44: Hoare triple {12358#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:10,463 INFO L290 TraceCheckUtils]: 45: Hoare triple {12386#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {12386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:10,463 INFO L272 TraceCheckUtils]: 46: Hoare triple {12386#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:10,464 INFO L290 TraceCheckUtils]: 47: Hoare triple {12386#(<= ~counter~0 4)} ~cond := #in~cond; {12386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:10,464 INFO L290 TraceCheckUtils]: 48: Hoare triple {12386#(<= ~counter~0 4)} assume !(0 == ~cond); {12386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:10,464 INFO L290 TraceCheckUtils]: 49: Hoare triple {12386#(<= ~counter~0 4)} assume true; {12386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:10,465 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {12386#(<= ~counter~0 4)} {12386#(<= ~counter~0 4)} #63#return; {12386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:10,465 INFO L290 TraceCheckUtils]: 51: Hoare triple {12386#(<= ~counter~0 4)} assume !!(0 != ~r~0); {12386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:10,465 INFO L290 TraceCheckUtils]: 52: Hoare triple {12386#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12386#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:10,466 INFO L290 TraceCheckUtils]: 53: Hoare triple {12386#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:10,466 INFO L290 TraceCheckUtils]: 54: Hoare triple {12414#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {12414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:10,466 INFO L272 TraceCheckUtils]: 55: Hoare triple {12414#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:10,467 INFO L290 TraceCheckUtils]: 56: Hoare triple {12414#(<= ~counter~0 5)} ~cond := #in~cond; {12414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:10,467 INFO L290 TraceCheckUtils]: 57: Hoare triple {12414#(<= ~counter~0 5)} assume !(0 == ~cond); {12414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:10,467 INFO L290 TraceCheckUtils]: 58: Hoare triple {12414#(<= ~counter~0 5)} assume true; {12414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:10,468 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {12414#(<= ~counter~0 5)} {12414#(<= ~counter~0 5)} #63#return; {12414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:10,468 INFO L290 TraceCheckUtils]: 60: Hoare triple {12414#(<= ~counter~0 5)} assume !!(0 != ~r~0); {12414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:10,468 INFO L290 TraceCheckUtils]: 61: Hoare triple {12414#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12414#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:10,469 INFO L290 TraceCheckUtils]: 62: Hoare triple {12414#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:10,469 INFO L290 TraceCheckUtils]: 63: Hoare triple {12442#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {12442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:10,469 INFO L272 TraceCheckUtils]: 64: Hoare triple {12442#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:10,470 INFO L290 TraceCheckUtils]: 65: Hoare triple {12442#(<= ~counter~0 6)} ~cond := #in~cond; {12442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:10,470 INFO L290 TraceCheckUtils]: 66: Hoare triple {12442#(<= ~counter~0 6)} assume !(0 == ~cond); {12442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:10,470 INFO L290 TraceCheckUtils]: 67: Hoare triple {12442#(<= ~counter~0 6)} assume true; {12442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:10,471 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {12442#(<= ~counter~0 6)} {12442#(<= ~counter~0 6)} #63#return; {12442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:10,471 INFO L290 TraceCheckUtils]: 69: Hoare triple {12442#(<= ~counter~0 6)} assume !!(0 != ~r~0); {12442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:10,471 INFO L290 TraceCheckUtils]: 70: Hoare triple {12442#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12442#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:10,472 INFO L290 TraceCheckUtils]: 71: Hoare triple {12442#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:10,472 INFO L290 TraceCheckUtils]: 72: Hoare triple {12470#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:10,473 INFO L272 TraceCheckUtils]: 73: Hoare triple {12470#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:10,473 INFO L290 TraceCheckUtils]: 74: Hoare triple {12470#(<= ~counter~0 7)} ~cond := #in~cond; {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:10,473 INFO L290 TraceCheckUtils]: 75: Hoare triple {12470#(<= ~counter~0 7)} assume !(0 == ~cond); {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:10,473 INFO L290 TraceCheckUtils]: 76: Hoare triple {12470#(<= ~counter~0 7)} assume true; {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:10,474 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {12470#(<= ~counter~0 7)} {12470#(<= ~counter~0 7)} #63#return; {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:10,474 INFO L290 TraceCheckUtils]: 78: Hoare triple {12470#(<= ~counter~0 7)} assume !!(0 != ~r~0); {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:10,474 INFO L290 TraceCheckUtils]: 79: Hoare triple {12470#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:10,475 INFO L290 TraceCheckUtils]: 80: Hoare triple {12470#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:10,475 INFO L290 TraceCheckUtils]: 81: Hoare triple {12498#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {12498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:10,476 INFO L272 TraceCheckUtils]: 82: Hoare triple {12498#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:10,476 INFO L290 TraceCheckUtils]: 83: Hoare triple {12498#(<= ~counter~0 8)} ~cond := #in~cond; {12498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:10,476 INFO L290 TraceCheckUtils]: 84: Hoare triple {12498#(<= ~counter~0 8)} assume !(0 == ~cond); {12498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:10,476 INFO L290 TraceCheckUtils]: 85: Hoare triple {12498#(<= ~counter~0 8)} assume true; {12498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:10,477 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {12498#(<= ~counter~0 8)} {12498#(<= ~counter~0 8)} #63#return; {12498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:10,477 INFO L290 TraceCheckUtils]: 87: Hoare triple {12498#(<= ~counter~0 8)} assume !!(0 != ~r~0); {12498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:10,477 INFO L290 TraceCheckUtils]: 88: Hoare triple {12498#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:10,478 INFO L290 TraceCheckUtils]: 89: Hoare triple {12498#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:10,478 INFO L290 TraceCheckUtils]: 90: Hoare triple {12526#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {12526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:10,479 INFO L272 TraceCheckUtils]: 91: Hoare triple {12526#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:10,479 INFO L290 TraceCheckUtils]: 92: Hoare triple {12526#(<= ~counter~0 9)} ~cond := #in~cond; {12526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:10,479 INFO L290 TraceCheckUtils]: 93: Hoare triple {12526#(<= ~counter~0 9)} assume !(0 == ~cond); {12526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:10,479 INFO L290 TraceCheckUtils]: 94: Hoare triple {12526#(<= ~counter~0 9)} assume true; {12526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:10,480 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {12526#(<= ~counter~0 9)} {12526#(<= ~counter~0 9)} #63#return; {12526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:10,482 INFO L290 TraceCheckUtils]: 96: Hoare triple {12526#(<= ~counter~0 9)} assume !!(0 != ~r~0); {12526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:10,482 INFO L290 TraceCheckUtils]: 97: Hoare triple {12526#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:10,483 INFO L290 TraceCheckUtils]: 98: Hoare triple {12526#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:10,483 INFO L290 TraceCheckUtils]: 99: Hoare triple {12554#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {12554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:10,484 INFO L272 TraceCheckUtils]: 100: Hoare triple {12554#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:10,484 INFO L290 TraceCheckUtils]: 101: Hoare triple {12554#(<= ~counter~0 10)} ~cond := #in~cond; {12554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:10,484 INFO L290 TraceCheckUtils]: 102: Hoare triple {12554#(<= ~counter~0 10)} assume !(0 == ~cond); {12554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:10,485 INFO L290 TraceCheckUtils]: 103: Hoare triple {12554#(<= ~counter~0 10)} assume true; {12554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:10,485 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {12554#(<= ~counter~0 10)} {12554#(<= ~counter~0 10)} #63#return; {12554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:10,485 INFO L290 TraceCheckUtils]: 105: Hoare triple {12554#(<= ~counter~0 10)} assume !!(0 != ~r~0); {12554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:10,486 INFO L290 TraceCheckUtils]: 106: Hoare triple {12554#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:10,486 INFO L290 TraceCheckUtils]: 107: Hoare triple {12554#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12582#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:10,486 INFO L290 TraceCheckUtils]: 108: Hoare triple {12582#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {12582#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:10,487 INFO L272 TraceCheckUtils]: 109: Hoare triple {12582#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12582#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:10,487 INFO L290 TraceCheckUtils]: 110: Hoare triple {12582#(<= ~counter~0 11)} ~cond := #in~cond; {12582#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:10,487 INFO L290 TraceCheckUtils]: 111: Hoare triple {12582#(<= ~counter~0 11)} assume !(0 == ~cond); {12582#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:10,488 INFO L290 TraceCheckUtils]: 112: Hoare triple {12582#(<= ~counter~0 11)} assume true; {12582#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:10,488 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {12582#(<= ~counter~0 11)} {12582#(<= ~counter~0 11)} #63#return; {12582#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:10,488 INFO L290 TraceCheckUtils]: 114: Hoare triple {12582#(<= ~counter~0 11)} assume !!(0 != ~r~0); {12582#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:10,489 INFO L290 TraceCheckUtils]: 115: Hoare triple {12582#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12582#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:10,489 INFO L290 TraceCheckUtils]: 116: Hoare triple {12582#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12610#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:10,489 INFO L290 TraceCheckUtils]: 117: Hoare triple {12610#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {12610#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:10,490 INFO L272 TraceCheckUtils]: 118: Hoare triple {12610#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12610#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:10,490 INFO L290 TraceCheckUtils]: 119: Hoare triple {12610#(<= ~counter~0 12)} ~cond := #in~cond; {12610#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:10,490 INFO L290 TraceCheckUtils]: 120: Hoare triple {12610#(<= ~counter~0 12)} assume !(0 == ~cond); {12610#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:10,491 INFO L290 TraceCheckUtils]: 121: Hoare triple {12610#(<= ~counter~0 12)} assume true; {12610#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:10,491 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {12610#(<= ~counter~0 12)} {12610#(<= ~counter~0 12)} #63#return; {12610#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:10,491 INFO L290 TraceCheckUtils]: 123: Hoare triple {12610#(<= ~counter~0 12)} assume !!(0 != ~r~0); {12610#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:10,492 INFO L290 TraceCheckUtils]: 124: Hoare triple {12610#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12610#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:10,492 INFO L290 TraceCheckUtils]: 125: Hoare triple {12610#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12638#(<= |main_#t~post6| 12)} is VALID [2022-04-08 06:08:10,492 INFO L290 TraceCheckUtils]: 126: Hoare triple {12638#(<= |main_#t~post6| 12)} assume !(#t~post6 < 20);havoc #t~post6; {12246#false} is VALID [2022-04-08 06:08:10,492 INFO L272 TraceCheckUtils]: 127: Hoare triple {12246#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12246#false} is VALID [2022-04-08 06:08:10,492 INFO L290 TraceCheckUtils]: 128: Hoare triple {12246#false} ~cond := #in~cond; {12246#false} is VALID [2022-04-08 06:08:10,492 INFO L290 TraceCheckUtils]: 129: Hoare triple {12246#false} assume 0 == ~cond; {12246#false} is VALID [2022-04-08 06:08:10,492 INFO L290 TraceCheckUtils]: 130: Hoare triple {12246#false} assume !false; {12246#false} is VALID [2022-04-08 06:08:10,493 INFO L134 CoverageAnalysis]: Checked inductivity of 646 backedges. 24 proven. 618 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:08:10,493 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:08:11,135 INFO L290 TraceCheckUtils]: 130: Hoare triple {12246#false} assume !false; {12246#false} is VALID [2022-04-08 06:08:11,135 INFO L290 TraceCheckUtils]: 129: Hoare triple {12246#false} assume 0 == ~cond; {12246#false} is VALID [2022-04-08 06:08:11,135 INFO L290 TraceCheckUtils]: 128: Hoare triple {12246#false} ~cond := #in~cond; {12246#false} is VALID [2022-04-08 06:08:11,135 INFO L272 TraceCheckUtils]: 127: Hoare triple {12246#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12246#false} is VALID [2022-04-08 06:08:11,135 INFO L290 TraceCheckUtils]: 126: Hoare triple {12666#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {12246#false} is VALID [2022-04-08 06:08:11,136 INFO L290 TraceCheckUtils]: 125: Hoare triple {12670#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12666#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:08:11,136 INFO L290 TraceCheckUtils]: 124: Hoare triple {12670#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12670#(< ~counter~0 20)} is VALID [2022-04-08 06:08:11,136 INFO L290 TraceCheckUtils]: 123: Hoare triple {12670#(< ~counter~0 20)} assume !!(0 != ~r~0); {12670#(< ~counter~0 20)} is VALID [2022-04-08 06:08:11,137 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {12245#true} {12670#(< ~counter~0 20)} #63#return; {12670#(< ~counter~0 20)} is VALID [2022-04-08 06:08:11,137 INFO L290 TraceCheckUtils]: 121: Hoare triple {12245#true} assume true; {12245#true} is VALID [2022-04-08 06:08:11,137 INFO L290 TraceCheckUtils]: 120: Hoare triple {12245#true} assume !(0 == ~cond); {12245#true} is VALID [2022-04-08 06:08:11,137 INFO L290 TraceCheckUtils]: 119: Hoare triple {12245#true} ~cond := #in~cond; {12245#true} is VALID [2022-04-08 06:08:11,137 INFO L272 TraceCheckUtils]: 118: Hoare triple {12670#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12245#true} is VALID [2022-04-08 06:08:11,137 INFO L290 TraceCheckUtils]: 117: Hoare triple {12670#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {12670#(< ~counter~0 20)} is VALID [2022-04-08 06:08:11,138 INFO L290 TraceCheckUtils]: 116: Hoare triple {12698#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12670#(< ~counter~0 20)} is VALID [2022-04-08 06:08:11,138 INFO L290 TraceCheckUtils]: 115: Hoare triple {12698#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12698#(< ~counter~0 19)} is VALID [2022-04-08 06:08:11,138 INFO L290 TraceCheckUtils]: 114: Hoare triple {12698#(< ~counter~0 19)} assume !!(0 != ~r~0); {12698#(< ~counter~0 19)} is VALID [2022-04-08 06:08:11,139 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {12245#true} {12698#(< ~counter~0 19)} #63#return; {12698#(< ~counter~0 19)} is VALID [2022-04-08 06:08:11,139 INFO L290 TraceCheckUtils]: 112: Hoare triple {12245#true} assume true; {12245#true} is VALID [2022-04-08 06:08:11,139 INFO L290 TraceCheckUtils]: 111: Hoare triple {12245#true} assume !(0 == ~cond); {12245#true} is VALID [2022-04-08 06:08:11,139 INFO L290 TraceCheckUtils]: 110: Hoare triple {12245#true} ~cond := #in~cond; {12245#true} is VALID [2022-04-08 06:08:11,139 INFO L272 TraceCheckUtils]: 109: Hoare triple {12698#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12245#true} is VALID [2022-04-08 06:08:11,139 INFO L290 TraceCheckUtils]: 108: Hoare triple {12698#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {12698#(< ~counter~0 19)} is VALID [2022-04-08 06:08:11,140 INFO L290 TraceCheckUtils]: 107: Hoare triple {12726#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12698#(< ~counter~0 19)} is VALID [2022-04-08 06:08:11,140 INFO L290 TraceCheckUtils]: 106: Hoare triple {12726#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12726#(< ~counter~0 18)} is VALID [2022-04-08 06:08:11,140 INFO L290 TraceCheckUtils]: 105: Hoare triple {12726#(< ~counter~0 18)} assume !!(0 != ~r~0); {12726#(< ~counter~0 18)} is VALID [2022-04-08 06:08:11,141 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {12245#true} {12726#(< ~counter~0 18)} #63#return; {12726#(< ~counter~0 18)} is VALID [2022-04-08 06:08:11,141 INFO L290 TraceCheckUtils]: 103: Hoare triple {12245#true} assume true; {12245#true} is VALID [2022-04-08 06:08:11,141 INFO L290 TraceCheckUtils]: 102: Hoare triple {12245#true} assume !(0 == ~cond); {12245#true} is VALID [2022-04-08 06:08:11,141 INFO L290 TraceCheckUtils]: 101: Hoare triple {12245#true} ~cond := #in~cond; {12245#true} is VALID [2022-04-08 06:08:11,141 INFO L272 TraceCheckUtils]: 100: Hoare triple {12726#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12245#true} is VALID [2022-04-08 06:08:11,141 INFO L290 TraceCheckUtils]: 99: Hoare triple {12726#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {12726#(< ~counter~0 18)} is VALID [2022-04-08 06:08:11,142 INFO L290 TraceCheckUtils]: 98: Hoare triple {12754#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12726#(< ~counter~0 18)} is VALID [2022-04-08 06:08:11,142 INFO L290 TraceCheckUtils]: 97: Hoare triple {12754#(< ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12754#(< ~counter~0 17)} is VALID [2022-04-08 06:08:11,142 INFO L290 TraceCheckUtils]: 96: Hoare triple {12754#(< ~counter~0 17)} assume !!(0 != ~r~0); {12754#(< ~counter~0 17)} is VALID [2022-04-08 06:08:11,143 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {12245#true} {12754#(< ~counter~0 17)} #63#return; {12754#(< ~counter~0 17)} is VALID [2022-04-08 06:08:11,143 INFO L290 TraceCheckUtils]: 94: Hoare triple {12245#true} assume true; {12245#true} is VALID [2022-04-08 06:08:11,143 INFO L290 TraceCheckUtils]: 93: Hoare triple {12245#true} assume !(0 == ~cond); {12245#true} is VALID [2022-04-08 06:08:11,143 INFO L290 TraceCheckUtils]: 92: Hoare triple {12245#true} ~cond := #in~cond; {12245#true} is VALID [2022-04-08 06:08:11,143 INFO L272 TraceCheckUtils]: 91: Hoare triple {12754#(< ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12245#true} is VALID [2022-04-08 06:08:11,143 INFO L290 TraceCheckUtils]: 90: Hoare triple {12754#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {12754#(< ~counter~0 17)} is VALID [2022-04-08 06:08:11,143 INFO L290 TraceCheckUtils]: 89: Hoare triple {12782#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12754#(< ~counter~0 17)} is VALID [2022-04-08 06:08:11,144 INFO L290 TraceCheckUtils]: 88: Hoare triple {12782#(< ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12782#(< ~counter~0 16)} is VALID [2022-04-08 06:08:11,144 INFO L290 TraceCheckUtils]: 87: Hoare triple {12782#(< ~counter~0 16)} assume !!(0 != ~r~0); {12782#(< ~counter~0 16)} is VALID [2022-04-08 06:08:11,144 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {12245#true} {12782#(< ~counter~0 16)} #63#return; {12782#(< ~counter~0 16)} is VALID [2022-04-08 06:08:11,145 INFO L290 TraceCheckUtils]: 85: Hoare triple {12245#true} assume true; {12245#true} is VALID [2022-04-08 06:08:11,145 INFO L290 TraceCheckUtils]: 84: Hoare triple {12245#true} assume !(0 == ~cond); {12245#true} is VALID [2022-04-08 06:08:11,145 INFO L290 TraceCheckUtils]: 83: Hoare triple {12245#true} ~cond := #in~cond; {12245#true} is VALID [2022-04-08 06:08:11,145 INFO L272 TraceCheckUtils]: 82: Hoare triple {12782#(< ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12245#true} is VALID [2022-04-08 06:08:11,145 INFO L290 TraceCheckUtils]: 81: Hoare triple {12782#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {12782#(< ~counter~0 16)} is VALID [2022-04-08 06:08:11,145 INFO L290 TraceCheckUtils]: 80: Hoare triple {12810#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12782#(< ~counter~0 16)} is VALID [2022-04-08 06:08:11,146 INFO L290 TraceCheckUtils]: 79: Hoare triple {12810#(< ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12810#(< ~counter~0 15)} is VALID [2022-04-08 06:08:11,146 INFO L290 TraceCheckUtils]: 78: Hoare triple {12810#(< ~counter~0 15)} assume !!(0 != ~r~0); {12810#(< ~counter~0 15)} is VALID [2022-04-08 06:08:11,146 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {12245#true} {12810#(< ~counter~0 15)} #63#return; {12810#(< ~counter~0 15)} is VALID [2022-04-08 06:08:11,146 INFO L290 TraceCheckUtils]: 76: Hoare triple {12245#true} assume true; {12245#true} is VALID [2022-04-08 06:08:11,146 INFO L290 TraceCheckUtils]: 75: Hoare triple {12245#true} assume !(0 == ~cond); {12245#true} is VALID [2022-04-08 06:08:11,147 INFO L290 TraceCheckUtils]: 74: Hoare triple {12245#true} ~cond := #in~cond; {12245#true} is VALID [2022-04-08 06:08:11,147 INFO L272 TraceCheckUtils]: 73: Hoare triple {12810#(< ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12245#true} is VALID [2022-04-08 06:08:11,147 INFO L290 TraceCheckUtils]: 72: Hoare triple {12810#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {12810#(< ~counter~0 15)} is VALID [2022-04-08 06:08:11,148 INFO L290 TraceCheckUtils]: 71: Hoare triple {12838#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12810#(< ~counter~0 15)} is VALID [2022-04-08 06:08:11,148 INFO L290 TraceCheckUtils]: 70: Hoare triple {12838#(< ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12838#(< ~counter~0 14)} is VALID [2022-04-08 06:08:11,148 INFO L290 TraceCheckUtils]: 69: Hoare triple {12838#(< ~counter~0 14)} assume !!(0 != ~r~0); {12838#(< ~counter~0 14)} is VALID [2022-04-08 06:08:11,149 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {12245#true} {12838#(< ~counter~0 14)} #63#return; {12838#(< ~counter~0 14)} is VALID [2022-04-08 06:08:11,149 INFO L290 TraceCheckUtils]: 67: Hoare triple {12245#true} assume true; {12245#true} is VALID [2022-04-08 06:08:11,149 INFO L290 TraceCheckUtils]: 66: Hoare triple {12245#true} assume !(0 == ~cond); {12245#true} is VALID [2022-04-08 06:08:11,149 INFO L290 TraceCheckUtils]: 65: Hoare triple {12245#true} ~cond := #in~cond; {12245#true} is VALID [2022-04-08 06:08:11,149 INFO L272 TraceCheckUtils]: 64: Hoare triple {12838#(< ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12245#true} is VALID [2022-04-08 06:08:11,150 INFO L290 TraceCheckUtils]: 63: Hoare triple {12838#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {12838#(< ~counter~0 14)} is VALID [2022-04-08 06:08:11,150 INFO L290 TraceCheckUtils]: 62: Hoare triple {12610#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12838#(< ~counter~0 14)} is VALID [2022-04-08 06:08:11,150 INFO L290 TraceCheckUtils]: 61: Hoare triple {12610#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12610#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:11,151 INFO L290 TraceCheckUtils]: 60: Hoare triple {12610#(<= ~counter~0 12)} assume !!(0 != ~r~0); {12610#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:11,151 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {12245#true} {12610#(<= ~counter~0 12)} #63#return; {12610#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:11,151 INFO L290 TraceCheckUtils]: 58: Hoare triple {12245#true} assume true; {12245#true} is VALID [2022-04-08 06:08:11,151 INFO L290 TraceCheckUtils]: 57: Hoare triple {12245#true} assume !(0 == ~cond); {12245#true} is VALID [2022-04-08 06:08:11,151 INFO L290 TraceCheckUtils]: 56: Hoare triple {12245#true} ~cond := #in~cond; {12245#true} is VALID [2022-04-08 06:08:11,151 INFO L272 TraceCheckUtils]: 55: Hoare triple {12610#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12245#true} is VALID [2022-04-08 06:08:11,152 INFO L290 TraceCheckUtils]: 54: Hoare triple {12610#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {12610#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:11,152 INFO L290 TraceCheckUtils]: 53: Hoare triple {12582#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12610#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:11,152 INFO L290 TraceCheckUtils]: 52: Hoare triple {12582#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12582#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:11,153 INFO L290 TraceCheckUtils]: 51: Hoare triple {12582#(<= ~counter~0 11)} assume !!(0 != ~r~0); {12582#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:11,153 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {12245#true} {12582#(<= ~counter~0 11)} #63#return; {12582#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:11,153 INFO L290 TraceCheckUtils]: 49: Hoare triple {12245#true} assume true; {12245#true} is VALID [2022-04-08 06:08:11,153 INFO L290 TraceCheckUtils]: 48: Hoare triple {12245#true} assume !(0 == ~cond); {12245#true} is VALID [2022-04-08 06:08:11,153 INFO L290 TraceCheckUtils]: 47: Hoare triple {12245#true} ~cond := #in~cond; {12245#true} is VALID [2022-04-08 06:08:11,153 INFO L272 TraceCheckUtils]: 46: Hoare triple {12582#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12245#true} is VALID [2022-04-08 06:08:11,154 INFO L290 TraceCheckUtils]: 45: Hoare triple {12582#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {12582#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:11,154 INFO L290 TraceCheckUtils]: 44: Hoare triple {12554#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12582#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:11,154 INFO L290 TraceCheckUtils]: 43: Hoare triple {12554#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:11,155 INFO L290 TraceCheckUtils]: 42: Hoare triple {12554#(<= ~counter~0 10)} assume !!(0 != ~r~0); {12554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:11,155 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12245#true} {12554#(<= ~counter~0 10)} #63#return; {12554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:11,155 INFO L290 TraceCheckUtils]: 40: Hoare triple {12245#true} assume true; {12245#true} is VALID [2022-04-08 06:08:11,155 INFO L290 TraceCheckUtils]: 39: Hoare triple {12245#true} assume !(0 == ~cond); {12245#true} is VALID [2022-04-08 06:08:11,155 INFO L290 TraceCheckUtils]: 38: Hoare triple {12245#true} ~cond := #in~cond; {12245#true} is VALID [2022-04-08 06:08:11,155 INFO L272 TraceCheckUtils]: 37: Hoare triple {12554#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12245#true} is VALID [2022-04-08 06:08:11,156 INFO L290 TraceCheckUtils]: 36: Hoare triple {12554#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {12554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:11,156 INFO L290 TraceCheckUtils]: 35: Hoare triple {12526#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12554#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:11,156 INFO L290 TraceCheckUtils]: 34: Hoare triple {12526#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:11,157 INFO L290 TraceCheckUtils]: 33: Hoare triple {12526#(<= ~counter~0 9)} assume !!(0 != ~r~0); {12526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:11,157 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {12245#true} {12526#(<= ~counter~0 9)} #63#return; {12526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:11,157 INFO L290 TraceCheckUtils]: 31: Hoare triple {12245#true} assume true; {12245#true} is VALID [2022-04-08 06:08:11,157 INFO L290 TraceCheckUtils]: 30: Hoare triple {12245#true} assume !(0 == ~cond); {12245#true} is VALID [2022-04-08 06:08:11,157 INFO L290 TraceCheckUtils]: 29: Hoare triple {12245#true} ~cond := #in~cond; {12245#true} is VALID [2022-04-08 06:08:11,157 INFO L272 TraceCheckUtils]: 28: Hoare triple {12526#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12245#true} is VALID [2022-04-08 06:08:11,157 INFO L290 TraceCheckUtils]: 27: Hoare triple {12526#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {12526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:11,158 INFO L290 TraceCheckUtils]: 26: Hoare triple {12498#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12526#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:11,158 INFO L290 TraceCheckUtils]: 25: Hoare triple {12498#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {12498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:11,158 INFO L290 TraceCheckUtils]: 24: Hoare triple {12498#(<= ~counter~0 8)} assume !!(0 != ~r~0); {12498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:11,159 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {12245#true} {12498#(<= ~counter~0 8)} #63#return; {12498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:11,159 INFO L290 TraceCheckUtils]: 22: Hoare triple {12245#true} assume true; {12245#true} is VALID [2022-04-08 06:08:11,159 INFO L290 TraceCheckUtils]: 21: Hoare triple {12245#true} assume !(0 == ~cond); {12245#true} is VALID [2022-04-08 06:08:11,159 INFO L290 TraceCheckUtils]: 20: Hoare triple {12245#true} ~cond := #in~cond; {12245#true} is VALID [2022-04-08 06:08:11,159 INFO L272 TraceCheckUtils]: 19: Hoare triple {12498#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {12245#true} is VALID [2022-04-08 06:08:11,159 INFO L290 TraceCheckUtils]: 18: Hoare triple {12498#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {12498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:11,160 INFO L290 TraceCheckUtils]: 17: Hoare triple {12470#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12498#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:11,160 INFO L290 TraceCheckUtils]: 16: Hoare triple {12470#(<= ~counter~0 7)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:11,160 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12245#true} {12470#(<= ~counter~0 7)} #61#return; {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:11,161 INFO L290 TraceCheckUtils]: 14: Hoare triple {12245#true} assume true; {12245#true} is VALID [2022-04-08 06:08:11,161 INFO L290 TraceCheckUtils]: 13: Hoare triple {12245#true} assume !(0 == ~cond); {12245#true} is VALID [2022-04-08 06:08:11,161 INFO L290 TraceCheckUtils]: 12: Hoare triple {12245#true} ~cond := #in~cond; {12245#true} is VALID [2022-04-08 06:08:11,161 INFO L272 TraceCheckUtils]: 11: Hoare triple {12470#(<= ~counter~0 7)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {12245#true} is VALID [2022-04-08 06:08:11,161 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12245#true} {12470#(<= ~counter~0 7)} #59#return; {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:11,161 INFO L290 TraceCheckUtils]: 9: Hoare triple {12245#true} assume true; {12245#true} is VALID [2022-04-08 06:08:11,161 INFO L290 TraceCheckUtils]: 8: Hoare triple {12245#true} assume !(0 == ~cond); {12245#true} is VALID [2022-04-08 06:08:11,161 INFO L290 TraceCheckUtils]: 7: Hoare triple {12245#true} ~cond := #in~cond; {12245#true} is VALID [2022-04-08 06:08:11,161 INFO L272 TraceCheckUtils]: 6: Hoare triple {12470#(<= ~counter~0 7)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {12245#true} is VALID [2022-04-08 06:08:11,162 INFO L290 TraceCheckUtils]: 5: Hoare triple {12470#(<= ~counter~0 7)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:11,162 INFO L272 TraceCheckUtils]: 4: Hoare triple {12470#(<= ~counter~0 7)} call #t~ret7 := main(); {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:11,162 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12470#(<= ~counter~0 7)} {12245#true} #67#return; {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:11,162 INFO L290 TraceCheckUtils]: 2: Hoare triple {12470#(<= ~counter~0 7)} assume true; {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:11,163 INFO L290 TraceCheckUtils]: 1: Hoare triple {12245#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {12470#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:11,163 INFO L272 TraceCheckUtils]: 0: Hoare triple {12245#true} call ULTIMATE.init(); {12245#true} is VALID [2022-04-08 06:08:11,163 INFO L134 CoverageAnalysis]: Checked inductivity of 646 backedges. 24 proven. 354 refuted. 0 times theorem prover too weak. 268 trivial. 0 not checked. [2022-04-08 06:08:11,163 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:08:11,164 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [987858252] [2022-04-08 06:08:11,164 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:08:11,164 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [859233710] [2022-04-08 06:08:11,164 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [859233710] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:08:11,164 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:08:11,164 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 24 [2022-04-08 06:08:11,164 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:08:11,164 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1914653619] [2022-04-08 06:08:11,164 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1914653619] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:08:11,164 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:08:11,164 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-08 06:08:11,164 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1518387663] [2022-04-08 06:08:11,164 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:08:11,165 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 6.0) internal successors, (96), 15 states have internal predecessors, (96), 15 states have call successors, (17), 15 states have call predecessors, (17), 13 states have return successors, (15), 13 states have call predecessors, (15), 14 states have call successors, (15) Word has length 131 [2022-04-08 06:08:11,165 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:08:11,165 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 6.0) internal successors, (96), 15 states have internal predecessors, (96), 15 states have call successors, (17), 15 states have call predecessors, (17), 13 states have return successors, (15), 13 states have call predecessors, (15), 14 states have call successors, (15) [2022-04-08 06:08:11,249 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 128 edges. 128 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:11,249 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-08 06:08:11,249 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:11,250 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-08 06:08:11,250 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:08:11,250 INFO L87 Difference]: Start difference. First operand 128 states and 141 transitions. Second operand has 16 states, 16 states have (on average 6.0) internal successors, (96), 15 states have internal predecessors, (96), 15 states have call successors, (17), 15 states have call predecessors, (17), 13 states have return successors, (15), 13 states have call predecessors, (15), 14 states have call successors, (15) [2022-04-08 06:08:11,776 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:11,776 INFO L93 Difference]: Finished difference Result 142 states and 156 transitions. [2022-04-08 06:08:11,776 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-04-08 06:08:11,777 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 6.0) internal successors, (96), 15 states have internal predecessors, (96), 15 states have call successors, (17), 15 states have call predecessors, (17), 13 states have return successors, (15), 13 states have call predecessors, (15), 14 states have call successors, (15) Word has length 131 [2022-04-08 06:08:11,777 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:08:11,777 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 6.0) internal successors, (96), 15 states have internal predecessors, (96), 15 states have call successors, (17), 15 states have call predecessors, (17), 13 states have return successors, (15), 13 states have call predecessors, (15), 14 states have call successors, (15) [2022-04-08 06:08:11,780 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 155 transitions. [2022-04-08 06:08:11,780 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 6.0) internal successors, (96), 15 states have internal predecessors, (96), 15 states have call successors, (17), 15 states have call predecessors, (17), 13 states have return successors, (15), 13 states have call predecessors, (15), 14 states have call successors, (15) [2022-04-08 06:08:11,783 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 155 transitions. [2022-04-08 06:08:11,783 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 155 transitions. [2022-04-08 06:08:11,915 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-08 06:08:11,917 INFO L225 Difference]: With dead ends: 142 [2022-04-08 06:08:11,917 INFO L226 Difference]: Without dead ends: 137 [2022-04-08 06:08:11,917 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 273 GetRequests, 238 SyntacticMatches, 1 SemanticMatches, 34 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 104 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=512, Invalid=748, Unknown=0, NotChecked=0, Total=1260 [2022-04-08 06:08:11,918 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 50 mSDsluCounter, 128 mSDsCounter, 0 mSdLazyCounter, 72 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 166 SdHoareTripleChecker+Invalid, 100 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 72 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:08:11,918 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 166 Invalid, 100 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 72 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:08:11,919 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 137 states. [2022-04-08 06:08:12,056 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 137 to 137. [2022-04-08 06:08:12,056 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:08:12,057 INFO L82 GeneralOperation]: Start isEquivalent. First operand 137 states. Second operand has 137 states, 103 states have (on average 1.1359223300970873) internal successors, (117), 103 states have internal predecessors, (117), 18 states have call successors, (18), 17 states have call predecessors, (18), 15 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 06:08:12,057 INFO L74 IsIncluded]: Start isIncluded. First operand 137 states. Second operand has 137 states, 103 states have (on average 1.1359223300970873) internal successors, (117), 103 states have internal predecessors, (117), 18 states have call successors, (18), 17 states have call predecessors, (18), 15 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 06:08:12,057 INFO L87 Difference]: Start difference. First operand 137 states. Second operand has 137 states, 103 states have (on average 1.1359223300970873) internal successors, (117), 103 states have internal predecessors, (117), 18 states have call successors, (18), 17 states have call predecessors, (18), 15 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 06:08:12,060 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:12,060 INFO L93 Difference]: Finished difference Result 137 states and 151 transitions. [2022-04-08 06:08:12,060 INFO L276 IsEmpty]: Start isEmpty. Operand 137 states and 151 transitions. [2022-04-08 06:08:12,060 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:12,060 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:12,060 INFO L74 IsIncluded]: Start isIncluded. First operand has 137 states, 103 states have (on average 1.1359223300970873) internal successors, (117), 103 states have internal predecessors, (117), 18 states have call successors, (18), 17 states have call predecessors, (18), 15 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 137 states. [2022-04-08 06:08:12,061 INFO L87 Difference]: Start difference. First operand has 137 states, 103 states have (on average 1.1359223300970873) internal successors, (117), 103 states have internal predecessors, (117), 18 states have call successors, (18), 17 states have call predecessors, (18), 15 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 137 states. [2022-04-08 06:08:12,063 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:12,063 INFO L93 Difference]: Finished difference Result 137 states and 151 transitions. [2022-04-08 06:08:12,063 INFO L276 IsEmpty]: Start isEmpty. Operand 137 states and 151 transitions. [2022-04-08 06:08:12,063 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:12,064 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:12,064 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:08:12,064 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:08:12,064 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 137 states, 103 states have (on average 1.1359223300970873) internal successors, (117), 103 states have internal predecessors, (117), 18 states have call successors, (18), 17 states have call predecessors, (18), 15 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 06:08:12,066 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 137 states to 137 states and 151 transitions. [2022-04-08 06:08:12,066 INFO L78 Accepts]: Start accepts. Automaton has 137 states and 151 transitions. Word has length 131 [2022-04-08 06:08:12,067 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:08:12,067 INFO L478 AbstractCegarLoop]: Abstraction has 137 states and 151 transitions. [2022-04-08 06:08:12,067 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 6.0) internal successors, (96), 15 states have internal predecessors, (96), 15 states have call successors, (17), 15 states have call predecessors, (17), 13 states have return successors, (15), 13 states have call predecessors, (15), 14 states have call successors, (15) [2022-04-08 06:08:12,067 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 137 states and 151 transitions. [2022-04-08 06:08:14,259 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 151 edges. 150 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:14,259 INFO L276 IsEmpty]: Start isEmpty. Operand 137 states and 151 transitions. [2022-04-08 06:08:14,260 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 141 [2022-04-08 06:08:14,260 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:08:14,260 INFO L499 BasicCegarLoop]: trace histogram [14, 14, 13, 13, 13, 13, 13, 13, 13, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:08:14,265 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-08 06:08:14,460 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-08 06:08:14,461 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:08:14,461 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:08:14,461 INFO L85 PathProgramCache]: Analyzing trace with hash 2089018524, now seen corresponding path program 25 times [2022-04-08 06:08:14,461 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:14,461 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1463173083] [2022-04-08 06:08:14,461 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:08:14,461 INFO L85 PathProgramCache]: Analyzing trace with hash 2089018524, now seen corresponding path program 26 times [2022-04-08 06:08:14,461 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:08:14,462 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1166776261] [2022-04-08 06:08:14,462 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:08:14,462 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:08:14,476 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:08:14,476 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1386987253] [2022-04-08 06:08:14,476 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:08:14,477 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:08:14,477 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:08:14,478 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-08 06:08:14,479 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-08 06:08:14,555 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:08:14,555 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:08:14,556 INFO L263 TraceCheckSpWp]: Trace formula consists of 353 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-08 06:08:14,580 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:08:14,582 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:08:15,264 INFO L272 TraceCheckUtils]: 0: Hoare triple {13910#true} call ULTIMATE.init(); {13910#true} is VALID [2022-04-08 06:08:15,265 INFO L290 TraceCheckUtils]: 1: Hoare triple {13910#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,265 INFO L290 TraceCheckUtils]: 2: Hoare triple {13918#(<= ~counter~0 0)} assume true; {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,266 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13918#(<= ~counter~0 0)} {13910#true} #67#return; {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,266 INFO L272 TraceCheckUtils]: 4: Hoare triple {13918#(<= ~counter~0 0)} call #t~ret7 := main(); {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,266 INFO L290 TraceCheckUtils]: 5: Hoare triple {13918#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,267 INFO L272 TraceCheckUtils]: 6: Hoare triple {13918#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,267 INFO L290 TraceCheckUtils]: 7: Hoare triple {13918#(<= ~counter~0 0)} ~cond := #in~cond; {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,267 INFO L290 TraceCheckUtils]: 8: Hoare triple {13918#(<= ~counter~0 0)} assume !(0 == ~cond); {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,267 INFO L290 TraceCheckUtils]: 9: Hoare triple {13918#(<= ~counter~0 0)} assume true; {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,268 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13918#(<= ~counter~0 0)} {13918#(<= ~counter~0 0)} #59#return; {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,268 INFO L272 TraceCheckUtils]: 11: Hoare triple {13918#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,268 INFO L290 TraceCheckUtils]: 12: Hoare triple {13918#(<= ~counter~0 0)} ~cond := #in~cond; {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,269 INFO L290 TraceCheckUtils]: 13: Hoare triple {13918#(<= ~counter~0 0)} assume !(0 == ~cond); {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,269 INFO L290 TraceCheckUtils]: 14: Hoare triple {13918#(<= ~counter~0 0)} assume true; {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,269 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13918#(<= ~counter~0 0)} {13918#(<= ~counter~0 0)} #61#return; {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,270 INFO L290 TraceCheckUtils]: 16: Hoare triple {13918#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {13918#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:15,270 INFO L290 TraceCheckUtils]: 17: Hoare triple {13918#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13967#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:15,270 INFO L290 TraceCheckUtils]: 18: Hoare triple {13967#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {13967#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:15,271 INFO L272 TraceCheckUtils]: 19: Hoare triple {13967#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13967#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:15,271 INFO L290 TraceCheckUtils]: 20: Hoare triple {13967#(<= ~counter~0 1)} ~cond := #in~cond; {13967#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:15,271 INFO L290 TraceCheckUtils]: 21: Hoare triple {13967#(<= ~counter~0 1)} assume !(0 == ~cond); {13967#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:15,272 INFO L290 TraceCheckUtils]: 22: Hoare triple {13967#(<= ~counter~0 1)} assume true; {13967#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:15,272 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {13967#(<= ~counter~0 1)} {13967#(<= ~counter~0 1)} #63#return; {13967#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:15,272 INFO L290 TraceCheckUtils]: 24: Hoare triple {13967#(<= ~counter~0 1)} assume !!(0 != ~r~0); {13967#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:15,273 INFO L290 TraceCheckUtils]: 25: Hoare triple {13967#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {13967#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:15,273 INFO L290 TraceCheckUtils]: 26: Hoare triple {13967#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13995#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:15,273 INFO L290 TraceCheckUtils]: 27: Hoare triple {13995#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {13995#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:15,274 INFO L272 TraceCheckUtils]: 28: Hoare triple {13995#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13995#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:15,274 INFO L290 TraceCheckUtils]: 29: Hoare triple {13995#(<= ~counter~0 2)} ~cond := #in~cond; {13995#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:15,274 INFO L290 TraceCheckUtils]: 30: Hoare triple {13995#(<= ~counter~0 2)} assume !(0 == ~cond); {13995#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:15,275 INFO L290 TraceCheckUtils]: 31: Hoare triple {13995#(<= ~counter~0 2)} assume true; {13995#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:15,275 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {13995#(<= ~counter~0 2)} {13995#(<= ~counter~0 2)} #63#return; {13995#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:15,275 INFO L290 TraceCheckUtils]: 33: Hoare triple {13995#(<= ~counter~0 2)} assume !!(0 != ~r~0); {13995#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:15,276 INFO L290 TraceCheckUtils]: 34: Hoare triple {13995#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {13995#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:15,276 INFO L290 TraceCheckUtils]: 35: Hoare triple {13995#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14023#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:15,276 INFO L290 TraceCheckUtils]: 36: Hoare triple {14023#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {14023#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:15,277 INFO L272 TraceCheckUtils]: 37: Hoare triple {14023#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {14023#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:15,277 INFO L290 TraceCheckUtils]: 38: Hoare triple {14023#(<= ~counter~0 3)} ~cond := #in~cond; {14023#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:15,277 INFO L290 TraceCheckUtils]: 39: Hoare triple {14023#(<= ~counter~0 3)} assume !(0 == ~cond); {14023#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:15,278 INFO L290 TraceCheckUtils]: 40: Hoare triple {14023#(<= ~counter~0 3)} assume true; {14023#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:15,278 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14023#(<= ~counter~0 3)} {14023#(<= ~counter~0 3)} #63#return; {14023#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:15,278 INFO L290 TraceCheckUtils]: 42: Hoare triple {14023#(<= ~counter~0 3)} assume !!(0 != ~r~0); {14023#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:15,279 INFO L290 TraceCheckUtils]: 43: Hoare triple {14023#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14023#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:15,279 INFO L290 TraceCheckUtils]: 44: Hoare triple {14023#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14051#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:15,279 INFO L290 TraceCheckUtils]: 45: Hoare triple {14051#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {14051#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:15,280 INFO L272 TraceCheckUtils]: 46: Hoare triple {14051#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {14051#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:15,280 INFO L290 TraceCheckUtils]: 47: Hoare triple {14051#(<= ~counter~0 4)} ~cond := #in~cond; {14051#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:15,280 INFO L290 TraceCheckUtils]: 48: Hoare triple {14051#(<= ~counter~0 4)} assume !(0 == ~cond); {14051#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:15,281 INFO L290 TraceCheckUtils]: 49: Hoare triple {14051#(<= ~counter~0 4)} assume true; {14051#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:15,281 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {14051#(<= ~counter~0 4)} {14051#(<= ~counter~0 4)} #63#return; {14051#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:15,281 INFO L290 TraceCheckUtils]: 51: Hoare triple {14051#(<= ~counter~0 4)} assume !!(0 != ~r~0); {14051#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:15,282 INFO L290 TraceCheckUtils]: 52: Hoare triple {14051#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14051#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:15,282 INFO L290 TraceCheckUtils]: 53: Hoare triple {14051#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14079#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:15,282 INFO L290 TraceCheckUtils]: 54: Hoare triple {14079#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {14079#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:15,283 INFO L272 TraceCheckUtils]: 55: Hoare triple {14079#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {14079#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:15,283 INFO L290 TraceCheckUtils]: 56: Hoare triple {14079#(<= ~counter~0 5)} ~cond := #in~cond; {14079#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:15,283 INFO L290 TraceCheckUtils]: 57: Hoare triple {14079#(<= ~counter~0 5)} assume !(0 == ~cond); {14079#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:15,284 INFO L290 TraceCheckUtils]: 58: Hoare triple {14079#(<= ~counter~0 5)} assume true; {14079#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:15,284 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {14079#(<= ~counter~0 5)} {14079#(<= ~counter~0 5)} #63#return; {14079#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:15,287 INFO L290 TraceCheckUtils]: 60: Hoare triple {14079#(<= ~counter~0 5)} assume !!(0 != ~r~0); {14079#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:15,287 INFO L290 TraceCheckUtils]: 61: Hoare triple {14079#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14079#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:15,288 INFO L290 TraceCheckUtils]: 62: Hoare triple {14079#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:15,288 INFO L290 TraceCheckUtils]: 63: Hoare triple {14107#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:15,289 INFO L272 TraceCheckUtils]: 64: Hoare triple {14107#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:15,289 INFO L290 TraceCheckUtils]: 65: Hoare triple {14107#(<= ~counter~0 6)} ~cond := #in~cond; {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:15,290 INFO L290 TraceCheckUtils]: 66: Hoare triple {14107#(<= ~counter~0 6)} assume !(0 == ~cond); {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:15,290 INFO L290 TraceCheckUtils]: 67: Hoare triple {14107#(<= ~counter~0 6)} assume true; {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:15,291 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {14107#(<= ~counter~0 6)} {14107#(<= ~counter~0 6)} #63#return; {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:15,291 INFO L290 TraceCheckUtils]: 69: Hoare triple {14107#(<= ~counter~0 6)} assume !!(0 != ~r~0); {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:15,291 INFO L290 TraceCheckUtils]: 70: Hoare triple {14107#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:15,292 INFO L290 TraceCheckUtils]: 71: Hoare triple {14107#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14135#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:15,292 INFO L290 TraceCheckUtils]: 72: Hoare triple {14135#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {14135#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:15,293 INFO L272 TraceCheckUtils]: 73: Hoare triple {14135#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {14135#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:15,293 INFO L290 TraceCheckUtils]: 74: Hoare triple {14135#(<= ~counter~0 7)} ~cond := #in~cond; {14135#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:15,294 INFO L290 TraceCheckUtils]: 75: Hoare triple {14135#(<= ~counter~0 7)} assume !(0 == ~cond); {14135#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:15,294 INFO L290 TraceCheckUtils]: 76: Hoare triple {14135#(<= ~counter~0 7)} assume true; {14135#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:15,295 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {14135#(<= ~counter~0 7)} {14135#(<= ~counter~0 7)} #63#return; {14135#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:15,295 INFO L290 TraceCheckUtils]: 78: Hoare triple {14135#(<= ~counter~0 7)} assume !!(0 != ~r~0); {14135#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:15,296 INFO L290 TraceCheckUtils]: 79: Hoare triple {14135#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14135#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:15,296 INFO L290 TraceCheckUtils]: 80: Hoare triple {14135#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14163#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:15,296 INFO L290 TraceCheckUtils]: 81: Hoare triple {14163#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {14163#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:15,297 INFO L272 TraceCheckUtils]: 82: Hoare triple {14163#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {14163#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:15,297 INFO L290 TraceCheckUtils]: 83: Hoare triple {14163#(<= ~counter~0 8)} ~cond := #in~cond; {14163#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:15,298 INFO L290 TraceCheckUtils]: 84: Hoare triple {14163#(<= ~counter~0 8)} assume !(0 == ~cond); {14163#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:15,298 INFO L290 TraceCheckUtils]: 85: Hoare triple {14163#(<= ~counter~0 8)} assume true; {14163#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:15,299 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {14163#(<= ~counter~0 8)} {14163#(<= ~counter~0 8)} #63#return; {14163#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:15,299 INFO L290 TraceCheckUtils]: 87: Hoare triple {14163#(<= ~counter~0 8)} assume !!(0 != ~r~0); {14163#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:15,300 INFO L290 TraceCheckUtils]: 88: Hoare triple {14163#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14163#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:15,300 INFO L290 TraceCheckUtils]: 89: Hoare triple {14163#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14191#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:15,300 INFO L290 TraceCheckUtils]: 90: Hoare triple {14191#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {14191#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:15,301 INFO L272 TraceCheckUtils]: 91: Hoare triple {14191#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {14191#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:15,301 INFO L290 TraceCheckUtils]: 92: Hoare triple {14191#(<= ~counter~0 9)} ~cond := #in~cond; {14191#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:15,302 INFO L290 TraceCheckUtils]: 93: Hoare triple {14191#(<= ~counter~0 9)} assume !(0 == ~cond); {14191#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:15,302 INFO L290 TraceCheckUtils]: 94: Hoare triple {14191#(<= ~counter~0 9)} assume true; {14191#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:15,303 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {14191#(<= ~counter~0 9)} {14191#(<= ~counter~0 9)} #63#return; {14191#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:15,303 INFO L290 TraceCheckUtils]: 96: Hoare triple {14191#(<= ~counter~0 9)} assume !!(0 != ~r~0); {14191#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:15,304 INFO L290 TraceCheckUtils]: 97: Hoare triple {14191#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14191#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:15,304 INFO L290 TraceCheckUtils]: 98: Hoare triple {14191#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14219#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:15,304 INFO L290 TraceCheckUtils]: 99: Hoare triple {14219#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {14219#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:15,305 INFO L272 TraceCheckUtils]: 100: Hoare triple {14219#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {14219#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:15,305 INFO L290 TraceCheckUtils]: 101: Hoare triple {14219#(<= ~counter~0 10)} ~cond := #in~cond; {14219#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:15,306 INFO L290 TraceCheckUtils]: 102: Hoare triple {14219#(<= ~counter~0 10)} assume !(0 == ~cond); {14219#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:15,306 INFO L290 TraceCheckUtils]: 103: Hoare triple {14219#(<= ~counter~0 10)} assume true; {14219#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:15,307 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {14219#(<= ~counter~0 10)} {14219#(<= ~counter~0 10)} #63#return; {14219#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:15,307 INFO L290 TraceCheckUtils]: 105: Hoare triple {14219#(<= ~counter~0 10)} assume !!(0 != ~r~0); {14219#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:15,307 INFO L290 TraceCheckUtils]: 106: Hoare triple {14219#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14219#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:15,308 INFO L290 TraceCheckUtils]: 107: Hoare triple {14219#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14247#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:15,308 INFO L290 TraceCheckUtils]: 108: Hoare triple {14247#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {14247#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:15,309 INFO L272 TraceCheckUtils]: 109: Hoare triple {14247#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {14247#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:15,309 INFO L290 TraceCheckUtils]: 110: Hoare triple {14247#(<= ~counter~0 11)} ~cond := #in~cond; {14247#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:15,310 INFO L290 TraceCheckUtils]: 111: Hoare triple {14247#(<= ~counter~0 11)} assume !(0 == ~cond); {14247#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:15,310 INFO L290 TraceCheckUtils]: 112: Hoare triple {14247#(<= ~counter~0 11)} assume true; {14247#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:15,310 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {14247#(<= ~counter~0 11)} {14247#(<= ~counter~0 11)} #63#return; {14247#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:15,311 INFO L290 TraceCheckUtils]: 114: Hoare triple {14247#(<= ~counter~0 11)} assume !!(0 != ~r~0); {14247#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:15,311 INFO L290 TraceCheckUtils]: 115: Hoare triple {14247#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14247#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:15,312 INFO L290 TraceCheckUtils]: 116: Hoare triple {14247#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14275#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:15,312 INFO L290 TraceCheckUtils]: 117: Hoare triple {14275#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {14275#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:15,313 INFO L272 TraceCheckUtils]: 118: Hoare triple {14275#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {14275#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:15,313 INFO L290 TraceCheckUtils]: 119: Hoare triple {14275#(<= ~counter~0 12)} ~cond := #in~cond; {14275#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:15,313 INFO L290 TraceCheckUtils]: 120: Hoare triple {14275#(<= ~counter~0 12)} assume !(0 == ~cond); {14275#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:15,314 INFO L290 TraceCheckUtils]: 121: Hoare triple {14275#(<= ~counter~0 12)} assume true; {14275#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:15,314 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {14275#(<= ~counter~0 12)} {14275#(<= ~counter~0 12)} #63#return; {14275#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:15,314 INFO L290 TraceCheckUtils]: 123: Hoare triple {14275#(<= ~counter~0 12)} assume !!(0 != ~r~0); {14275#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:15,315 INFO L290 TraceCheckUtils]: 124: Hoare triple {14275#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14275#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:15,315 INFO L290 TraceCheckUtils]: 125: Hoare triple {14275#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14303#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:15,316 INFO L290 TraceCheckUtils]: 126: Hoare triple {14303#(<= ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {14303#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:15,316 INFO L272 TraceCheckUtils]: 127: Hoare triple {14303#(<= ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {14303#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:15,317 INFO L290 TraceCheckUtils]: 128: Hoare triple {14303#(<= ~counter~0 13)} ~cond := #in~cond; {14303#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:15,317 INFO L290 TraceCheckUtils]: 129: Hoare triple {14303#(<= ~counter~0 13)} assume !(0 == ~cond); {14303#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:15,317 INFO L290 TraceCheckUtils]: 130: Hoare triple {14303#(<= ~counter~0 13)} assume true; {14303#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:15,318 INFO L284 TraceCheckUtils]: 131: Hoare quadruple {14303#(<= ~counter~0 13)} {14303#(<= ~counter~0 13)} #63#return; {14303#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:15,318 INFO L290 TraceCheckUtils]: 132: Hoare triple {14303#(<= ~counter~0 13)} assume !!(0 != ~r~0); {14303#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:15,319 INFO L290 TraceCheckUtils]: 133: Hoare triple {14303#(<= ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14303#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:15,319 INFO L290 TraceCheckUtils]: 134: Hoare triple {14303#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14331#(<= |main_#t~post6| 13)} is VALID [2022-04-08 06:08:15,320 INFO L290 TraceCheckUtils]: 135: Hoare triple {14331#(<= |main_#t~post6| 13)} assume !(#t~post6 < 20);havoc #t~post6; {13911#false} is VALID [2022-04-08 06:08:15,320 INFO L272 TraceCheckUtils]: 136: Hoare triple {13911#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13911#false} is VALID [2022-04-08 06:08:15,320 INFO L290 TraceCheckUtils]: 137: Hoare triple {13911#false} ~cond := #in~cond; {13911#false} is VALID [2022-04-08 06:08:15,320 INFO L290 TraceCheckUtils]: 138: Hoare triple {13911#false} assume 0 == ~cond; {13911#false} is VALID [2022-04-08 06:08:15,320 INFO L290 TraceCheckUtils]: 139: Hoare triple {13911#false} assume !false; {13911#false} is VALID [2022-04-08 06:08:15,321 INFO L134 CoverageAnalysis]: Checked inductivity of 758 backedges. 26 proven. 728 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:08:15,321 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:08:16,005 INFO L290 TraceCheckUtils]: 139: Hoare triple {13911#false} assume !false; {13911#false} is VALID [2022-04-08 06:08:16,005 INFO L290 TraceCheckUtils]: 138: Hoare triple {13911#false} assume 0 == ~cond; {13911#false} is VALID [2022-04-08 06:08:16,005 INFO L290 TraceCheckUtils]: 137: Hoare triple {13911#false} ~cond := #in~cond; {13911#false} is VALID [2022-04-08 06:08:16,005 INFO L272 TraceCheckUtils]: 136: Hoare triple {13911#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13911#false} is VALID [2022-04-08 06:08:16,005 INFO L290 TraceCheckUtils]: 135: Hoare triple {14359#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {13911#false} is VALID [2022-04-08 06:08:16,006 INFO L290 TraceCheckUtils]: 134: Hoare triple {14363#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14359#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:08:16,006 INFO L290 TraceCheckUtils]: 133: Hoare triple {14363#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14363#(< ~counter~0 20)} is VALID [2022-04-08 06:08:16,006 INFO L290 TraceCheckUtils]: 132: Hoare triple {14363#(< ~counter~0 20)} assume !!(0 != ~r~0); {14363#(< ~counter~0 20)} is VALID [2022-04-08 06:08:16,007 INFO L284 TraceCheckUtils]: 131: Hoare quadruple {13910#true} {14363#(< ~counter~0 20)} #63#return; {14363#(< ~counter~0 20)} is VALID [2022-04-08 06:08:16,007 INFO L290 TraceCheckUtils]: 130: Hoare triple {13910#true} assume true; {13910#true} is VALID [2022-04-08 06:08:16,007 INFO L290 TraceCheckUtils]: 129: Hoare triple {13910#true} assume !(0 == ~cond); {13910#true} is VALID [2022-04-08 06:08:16,007 INFO L290 TraceCheckUtils]: 128: Hoare triple {13910#true} ~cond := #in~cond; {13910#true} is VALID [2022-04-08 06:08:16,007 INFO L272 TraceCheckUtils]: 127: Hoare triple {14363#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13910#true} is VALID [2022-04-08 06:08:16,007 INFO L290 TraceCheckUtils]: 126: Hoare triple {14363#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {14363#(< ~counter~0 20)} is VALID [2022-04-08 06:08:16,008 INFO L290 TraceCheckUtils]: 125: Hoare triple {14391#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14363#(< ~counter~0 20)} is VALID [2022-04-08 06:08:16,008 INFO L290 TraceCheckUtils]: 124: Hoare triple {14391#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14391#(< ~counter~0 19)} is VALID [2022-04-08 06:08:16,008 INFO L290 TraceCheckUtils]: 123: Hoare triple {14391#(< ~counter~0 19)} assume !!(0 != ~r~0); {14391#(< ~counter~0 19)} is VALID [2022-04-08 06:08:16,009 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {13910#true} {14391#(< ~counter~0 19)} #63#return; {14391#(< ~counter~0 19)} is VALID [2022-04-08 06:08:16,009 INFO L290 TraceCheckUtils]: 121: Hoare triple {13910#true} assume true; {13910#true} is VALID [2022-04-08 06:08:16,009 INFO L290 TraceCheckUtils]: 120: Hoare triple {13910#true} assume !(0 == ~cond); {13910#true} is VALID [2022-04-08 06:08:16,009 INFO L290 TraceCheckUtils]: 119: Hoare triple {13910#true} ~cond := #in~cond; {13910#true} is VALID [2022-04-08 06:08:16,009 INFO L272 TraceCheckUtils]: 118: Hoare triple {14391#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13910#true} is VALID [2022-04-08 06:08:16,009 INFO L290 TraceCheckUtils]: 117: Hoare triple {14391#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {14391#(< ~counter~0 19)} is VALID [2022-04-08 06:08:16,010 INFO L290 TraceCheckUtils]: 116: Hoare triple {14419#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14391#(< ~counter~0 19)} is VALID [2022-04-08 06:08:16,010 INFO L290 TraceCheckUtils]: 115: Hoare triple {14419#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14419#(< ~counter~0 18)} is VALID [2022-04-08 06:08:16,010 INFO L290 TraceCheckUtils]: 114: Hoare triple {14419#(< ~counter~0 18)} assume !!(0 != ~r~0); {14419#(< ~counter~0 18)} is VALID [2022-04-08 06:08:16,011 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {13910#true} {14419#(< ~counter~0 18)} #63#return; {14419#(< ~counter~0 18)} is VALID [2022-04-08 06:08:16,011 INFO L290 TraceCheckUtils]: 112: Hoare triple {13910#true} assume true; {13910#true} is VALID [2022-04-08 06:08:16,011 INFO L290 TraceCheckUtils]: 111: Hoare triple {13910#true} assume !(0 == ~cond); {13910#true} is VALID [2022-04-08 06:08:16,011 INFO L290 TraceCheckUtils]: 110: Hoare triple {13910#true} ~cond := #in~cond; {13910#true} is VALID [2022-04-08 06:08:16,011 INFO L272 TraceCheckUtils]: 109: Hoare triple {14419#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13910#true} is VALID [2022-04-08 06:08:16,011 INFO L290 TraceCheckUtils]: 108: Hoare triple {14419#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {14419#(< ~counter~0 18)} is VALID [2022-04-08 06:08:16,012 INFO L290 TraceCheckUtils]: 107: Hoare triple {14447#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14419#(< ~counter~0 18)} is VALID [2022-04-08 06:08:16,012 INFO L290 TraceCheckUtils]: 106: Hoare triple {14447#(< ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14447#(< ~counter~0 17)} is VALID [2022-04-08 06:08:16,012 INFO L290 TraceCheckUtils]: 105: Hoare triple {14447#(< ~counter~0 17)} assume !!(0 != ~r~0); {14447#(< ~counter~0 17)} is VALID [2022-04-08 06:08:16,013 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {13910#true} {14447#(< ~counter~0 17)} #63#return; {14447#(< ~counter~0 17)} is VALID [2022-04-08 06:08:16,013 INFO L290 TraceCheckUtils]: 103: Hoare triple {13910#true} assume true; {13910#true} is VALID [2022-04-08 06:08:16,013 INFO L290 TraceCheckUtils]: 102: Hoare triple {13910#true} assume !(0 == ~cond); {13910#true} is VALID [2022-04-08 06:08:16,013 INFO L290 TraceCheckUtils]: 101: Hoare triple {13910#true} ~cond := #in~cond; {13910#true} is VALID [2022-04-08 06:08:16,013 INFO L272 TraceCheckUtils]: 100: Hoare triple {14447#(< ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13910#true} is VALID [2022-04-08 06:08:16,013 INFO L290 TraceCheckUtils]: 99: Hoare triple {14447#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {14447#(< ~counter~0 17)} is VALID [2022-04-08 06:08:16,014 INFO L290 TraceCheckUtils]: 98: Hoare triple {14475#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14447#(< ~counter~0 17)} is VALID [2022-04-08 06:08:16,014 INFO L290 TraceCheckUtils]: 97: Hoare triple {14475#(< ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14475#(< ~counter~0 16)} is VALID [2022-04-08 06:08:16,014 INFO L290 TraceCheckUtils]: 96: Hoare triple {14475#(< ~counter~0 16)} assume !!(0 != ~r~0); {14475#(< ~counter~0 16)} is VALID [2022-04-08 06:08:16,015 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {13910#true} {14475#(< ~counter~0 16)} #63#return; {14475#(< ~counter~0 16)} is VALID [2022-04-08 06:08:16,015 INFO L290 TraceCheckUtils]: 94: Hoare triple {13910#true} assume true; {13910#true} is VALID [2022-04-08 06:08:16,015 INFO L290 TraceCheckUtils]: 93: Hoare triple {13910#true} assume !(0 == ~cond); {13910#true} is VALID [2022-04-08 06:08:16,015 INFO L290 TraceCheckUtils]: 92: Hoare triple {13910#true} ~cond := #in~cond; {13910#true} is VALID [2022-04-08 06:08:16,015 INFO L272 TraceCheckUtils]: 91: Hoare triple {14475#(< ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13910#true} is VALID [2022-04-08 06:08:16,015 INFO L290 TraceCheckUtils]: 90: Hoare triple {14475#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {14475#(< ~counter~0 16)} is VALID [2022-04-08 06:08:16,016 INFO L290 TraceCheckUtils]: 89: Hoare triple {14503#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14475#(< ~counter~0 16)} is VALID [2022-04-08 06:08:16,016 INFO L290 TraceCheckUtils]: 88: Hoare triple {14503#(< ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14503#(< ~counter~0 15)} is VALID [2022-04-08 06:08:16,016 INFO L290 TraceCheckUtils]: 87: Hoare triple {14503#(< ~counter~0 15)} assume !!(0 != ~r~0); {14503#(< ~counter~0 15)} is VALID [2022-04-08 06:08:16,017 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {13910#true} {14503#(< ~counter~0 15)} #63#return; {14503#(< ~counter~0 15)} is VALID [2022-04-08 06:08:16,017 INFO L290 TraceCheckUtils]: 85: Hoare triple {13910#true} assume true; {13910#true} is VALID [2022-04-08 06:08:16,017 INFO L290 TraceCheckUtils]: 84: Hoare triple {13910#true} assume !(0 == ~cond); {13910#true} is VALID [2022-04-08 06:08:16,017 INFO L290 TraceCheckUtils]: 83: Hoare triple {13910#true} ~cond := #in~cond; {13910#true} is VALID [2022-04-08 06:08:16,017 INFO L272 TraceCheckUtils]: 82: Hoare triple {14503#(< ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13910#true} is VALID [2022-04-08 06:08:16,017 INFO L290 TraceCheckUtils]: 81: Hoare triple {14503#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {14503#(< ~counter~0 15)} is VALID [2022-04-08 06:08:16,018 INFO L290 TraceCheckUtils]: 80: Hoare triple {14303#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14503#(< ~counter~0 15)} is VALID [2022-04-08 06:08:16,018 INFO L290 TraceCheckUtils]: 79: Hoare triple {14303#(<= ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14303#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:16,018 INFO L290 TraceCheckUtils]: 78: Hoare triple {14303#(<= ~counter~0 13)} assume !!(0 != ~r~0); {14303#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:16,019 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {13910#true} {14303#(<= ~counter~0 13)} #63#return; {14303#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:16,019 INFO L290 TraceCheckUtils]: 76: Hoare triple {13910#true} assume true; {13910#true} is VALID [2022-04-08 06:08:16,019 INFO L290 TraceCheckUtils]: 75: Hoare triple {13910#true} assume !(0 == ~cond); {13910#true} is VALID [2022-04-08 06:08:16,019 INFO L290 TraceCheckUtils]: 74: Hoare triple {13910#true} ~cond := #in~cond; {13910#true} is VALID [2022-04-08 06:08:16,019 INFO L272 TraceCheckUtils]: 73: Hoare triple {14303#(<= ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13910#true} is VALID [2022-04-08 06:08:16,019 INFO L290 TraceCheckUtils]: 72: Hoare triple {14303#(<= ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {14303#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:16,020 INFO L290 TraceCheckUtils]: 71: Hoare triple {14275#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14303#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:16,020 INFO L290 TraceCheckUtils]: 70: Hoare triple {14275#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14275#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:16,020 INFO L290 TraceCheckUtils]: 69: Hoare triple {14275#(<= ~counter~0 12)} assume !!(0 != ~r~0); {14275#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:16,021 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {13910#true} {14275#(<= ~counter~0 12)} #63#return; {14275#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:16,021 INFO L290 TraceCheckUtils]: 67: Hoare triple {13910#true} assume true; {13910#true} is VALID [2022-04-08 06:08:16,021 INFO L290 TraceCheckUtils]: 66: Hoare triple {13910#true} assume !(0 == ~cond); {13910#true} is VALID [2022-04-08 06:08:16,021 INFO L290 TraceCheckUtils]: 65: Hoare triple {13910#true} ~cond := #in~cond; {13910#true} is VALID [2022-04-08 06:08:16,021 INFO L272 TraceCheckUtils]: 64: Hoare triple {14275#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13910#true} is VALID [2022-04-08 06:08:16,021 INFO L290 TraceCheckUtils]: 63: Hoare triple {14275#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {14275#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:16,022 INFO L290 TraceCheckUtils]: 62: Hoare triple {14247#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14275#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:16,022 INFO L290 TraceCheckUtils]: 61: Hoare triple {14247#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14247#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:16,022 INFO L290 TraceCheckUtils]: 60: Hoare triple {14247#(<= ~counter~0 11)} assume !!(0 != ~r~0); {14247#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:16,023 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {13910#true} {14247#(<= ~counter~0 11)} #63#return; {14247#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:16,023 INFO L290 TraceCheckUtils]: 58: Hoare triple {13910#true} assume true; {13910#true} is VALID [2022-04-08 06:08:16,023 INFO L290 TraceCheckUtils]: 57: Hoare triple {13910#true} assume !(0 == ~cond); {13910#true} is VALID [2022-04-08 06:08:16,023 INFO L290 TraceCheckUtils]: 56: Hoare triple {13910#true} ~cond := #in~cond; {13910#true} is VALID [2022-04-08 06:08:16,023 INFO L272 TraceCheckUtils]: 55: Hoare triple {14247#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13910#true} is VALID [2022-04-08 06:08:16,023 INFO L290 TraceCheckUtils]: 54: Hoare triple {14247#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {14247#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:16,023 INFO L290 TraceCheckUtils]: 53: Hoare triple {14219#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14247#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:16,024 INFO L290 TraceCheckUtils]: 52: Hoare triple {14219#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14219#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:16,024 INFO L290 TraceCheckUtils]: 51: Hoare triple {14219#(<= ~counter~0 10)} assume !!(0 != ~r~0); {14219#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:16,024 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {13910#true} {14219#(<= ~counter~0 10)} #63#return; {14219#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:16,025 INFO L290 TraceCheckUtils]: 49: Hoare triple {13910#true} assume true; {13910#true} is VALID [2022-04-08 06:08:16,025 INFO L290 TraceCheckUtils]: 48: Hoare triple {13910#true} assume !(0 == ~cond); {13910#true} is VALID [2022-04-08 06:08:16,025 INFO L290 TraceCheckUtils]: 47: Hoare triple {13910#true} ~cond := #in~cond; {13910#true} is VALID [2022-04-08 06:08:16,025 INFO L272 TraceCheckUtils]: 46: Hoare triple {14219#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13910#true} is VALID [2022-04-08 06:08:16,025 INFO L290 TraceCheckUtils]: 45: Hoare triple {14219#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {14219#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:16,025 INFO L290 TraceCheckUtils]: 44: Hoare triple {14191#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14219#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:16,026 INFO L290 TraceCheckUtils]: 43: Hoare triple {14191#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14191#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:16,026 INFO L290 TraceCheckUtils]: 42: Hoare triple {14191#(<= ~counter~0 9)} assume !!(0 != ~r~0); {14191#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:16,026 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {13910#true} {14191#(<= ~counter~0 9)} #63#return; {14191#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:16,027 INFO L290 TraceCheckUtils]: 40: Hoare triple {13910#true} assume true; {13910#true} is VALID [2022-04-08 06:08:16,027 INFO L290 TraceCheckUtils]: 39: Hoare triple {13910#true} assume !(0 == ~cond); {13910#true} is VALID [2022-04-08 06:08:16,027 INFO L290 TraceCheckUtils]: 38: Hoare triple {13910#true} ~cond := #in~cond; {13910#true} is VALID [2022-04-08 06:08:16,027 INFO L272 TraceCheckUtils]: 37: Hoare triple {14191#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13910#true} is VALID [2022-04-08 06:08:16,027 INFO L290 TraceCheckUtils]: 36: Hoare triple {14191#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {14191#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:16,027 INFO L290 TraceCheckUtils]: 35: Hoare triple {14163#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14191#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:16,028 INFO L290 TraceCheckUtils]: 34: Hoare triple {14163#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14163#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:16,028 INFO L290 TraceCheckUtils]: 33: Hoare triple {14163#(<= ~counter~0 8)} assume !!(0 != ~r~0); {14163#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:16,028 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {13910#true} {14163#(<= ~counter~0 8)} #63#return; {14163#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:16,028 INFO L290 TraceCheckUtils]: 31: Hoare triple {13910#true} assume true; {13910#true} is VALID [2022-04-08 06:08:16,029 INFO L290 TraceCheckUtils]: 30: Hoare triple {13910#true} assume !(0 == ~cond); {13910#true} is VALID [2022-04-08 06:08:16,029 INFO L290 TraceCheckUtils]: 29: Hoare triple {13910#true} ~cond := #in~cond; {13910#true} is VALID [2022-04-08 06:08:16,029 INFO L272 TraceCheckUtils]: 28: Hoare triple {14163#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13910#true} is VALID [2022-04-08 06:08:16,029 INFO L290 TraceCheckUtils]: 27: Hoare triple {14163#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {14163#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:16,029 INFO L290 TraceCheckUtils]: 26: Hoare triple {14135#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14163#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:16,030 INFO L290 TraceCheckUtils]: 25: Hoare triple {14135#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {14135#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:16,030 INFO L290 TraceCheckUtils]: 24: Hoare triple {14135#(<= ~counter~0 7)} assume !!(0 != ~r~0); {14135#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:16,030 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {13910#true} {14135#(<= ~counter~0 7)} #63#return; {14135#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:16,030 INFO L290 TraceCheckUtils]: 22: Hoare triple {13910#true} assume true; {13910#true} is VALID [2022-04-08 06:08:16,030 INFO L290 TraceCheckUtils]: 21: Hoare triple {13910#true} assume !(0 == ~cond); {13910#true} is VALID [2022-04-08 06:08:16,030 INFO L290 TraceCheckUtils]: 20: Hoare triple {13910#true} ~cond := #in~cond; {13910#true} is VALID [2022-04-08 06:08:16,031 INFO L272 TraceCheckUtils]: 19: Hoare triple {14135#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {13910#true} is VALID [2022-04-08 06:08:16,031 INFO L290 TraceCheckUtils]: 18: Hoare triple {14135#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {14135#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:16,031 INFO L290 TraceCheckUtils]: 17: Hoare triple {14107#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14135#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:16,031 INFO L290 TraceCheckUtils]: 16: Hoare triple {14107#(<= ~counter~0 6)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:16,032 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13910#true} {14107#(<= ~counter~0 6)} #61#return; {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:16,032 INFO L290 TraceCheckUtils]: 14: Hoare triple {13910#true} assume true; {13910#true} is VALID [2022-04-08 06:08:16,032 INFO L290 TraceCheckUtils]: 13: Hoare triple {13910#true} assume !(0 == ~cond); {13910#true} is VALID [2022-04-08 06:08:16,032 INFO L290 TraceCheckUtils]: 12: Hoare triple {13910#true} ~cond := #in~cond; {13910#true} is VALID [2022-04-08 06:08:16,032 INFO L272 TraceCheckUtils]: 11: Hoare triple {14107#(<= ~counter~0 6)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {13910#true} is VALID [2022-04-08 06:08:16,032 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13910#true} {14107#(<= ~counter~0 6)} #59#return; {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:16,033 INFO L290 TraceCheckUtils]: 9: Hoare triple {13910#true} assume true; {13910#true} is VALID [2022-04-08 06:08:16,033 INFO L290 TraceCheckUtils]: 8: Hoare triple {13910#true} assume !(0 == ~cond); {13910#true} is VALID [2022-04-08 06:08:16,033 INFO L290 TraceCheckUtils]: 7: Hoare triple {13910#true} ~cond := #in~cond; {13910#true} is VALID [2022-04-08 06:08:16,033 INFO L272 TraceCheckUtils]: 6: Hoare triple {14107#(<= ~counter~0 6)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {13910#true} is VALID [2022-04-08 06:08:16,033 INFO L290 TraceCheckUtils]: 5: Hoare triple {14107#(<= ~counter~0 6)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:16,033 INFO L272 TraceCheckUtils]: 4: Hoare triple {14107#(<= ~counter~0 6)} call #t~ret7 := main(); {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:16,034 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14107#(<= ~counter~0 6)} {13910#true} #67#return; {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:16,034 INFO L290 TraceCheckUtils]: 2: Hoare triple {14107#(<= ~counter~0 6)} assume true; {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:16,034 INFO L290 TraceCheckUtils]: 1: Hoare triple {13910#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {14107#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:16,034 INFO L272 TraceCheckUtils]: 0: Hoare triple {13910#true} call ULTIMATE.init(); {13910#true} is VALID [2022-04-08 06:08:16,035 INFO L134 CoverageAnalysis]: Checked inductivity of 758 backedges. 26 proven. 416 refuted. 0 times theorem prover too weak. 316 trivial. 0 not checked. [2022-04-08 06:08:16,035 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:08:16,035 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1166776261] [2022-04-08 06:08:16,035 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:08:16,035 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1386987253] [2022-04-08 06:08:16,035 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1386987253] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:08:16,035 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:08:16,035 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 24 [2022-04-08 06:08:16,036 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:08:16,036 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1463173083] [2022-04-08 06:08:16,036 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1463173083] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:08:16,036 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:08:16,036 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-08 06:08:16,036 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1721425781] [2022-04-08 06:08:16,036 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:08:16,037 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 6.0588235294117645) internal successors, (103), 16 states have internal predecessors, (103), 16 states have call successors, (18), 16 states have call predecessors, (18), 14 states have return successors, (16), 14 states have call predecessors, (16), 15 states have call successors, (16) Word has length 140 [2022-04-08 06:08:16,037 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:08:16,037 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 6.0588235294117645) internal successors, (103), 16 states have internal predecessors, (103), 16 states have call successors, (18), 16 states have call predecessors, (18), 14 states have return successors, (16), 14 states have call predecessors, (16), 15 states have call successors, (16) [2022-04-08 06:08:16,137 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:16,138 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-08 06:08:16,138 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:16,138 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-08 06:08:16,138 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:08:16,138 INFO L87 Difference]: Start difference. First operand 137 states and 151 transitions. Second operand has 17 states, 17 states have (on average 6.0588235294117645) internal successors, (103), 16 states have internal predecessors, (103), 16 states have call successors, (18), 16 states have call predecessors, (18), 14 states have return successors, (16), 14 states have call predecessors, (16), 15 states have call successors, (16) [2022-04-08 06:08:16,677 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:16,678 INFO L93 Difference]: Finished difference Result 151 states and 166 transitions. [2022-04-08 06:08:16,678 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2022-04-08 06:08:16,678 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 6.0588235294117645) internal successors, (103), 16 states have internal predecessors, (103), 16 states have call successors, (18), 16 states have call predecessors, (18), 14 states have return successors, (16), 14 states have call predecessors, (16), 15 states have call successors, (16) Word has length 140 [2022-04-08 06:08:16,678 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:08:16,678 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 6.0588235294117645) internal successors, (103), 16 states have internal predecessors, (103), 16 states have call successors, (18), 16 states have call predecessors, (18), 14 states have return successors, (16), 14 states have call predecessors, (16), 15 states have call successors, (16) [2022-04-08 06:08:16,681 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 165 transitions. [2022-04-08 06:08:16,681 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 6.0588235294117645) internal successors, (103), 16 states have internal predecessors, (103), 16 states have call successors, (18), 16 states have call predecessors, (18), 14 states have return successors, (16), 14 states have call predecessors, (16), 15 states have call successors, (16) [2022-04-08 06:08:16,684 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 165 transitions. [2022-04-08 06:08:16,684 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 30 states and 165 transitions. [2022-04-08 06:08:16,797 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 165 edges. 165 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:16,799 INFO L225 Difference]: With dead ends: 151 [2022-04-08 06:08:16,799 INFO L226 Difference]: Without dead ends: 146 [2022-04-08 06:08:16,800 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 292 GetRequests, 256 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 116 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=535, Invalid=797, Unknown=0, NotChecked=0, Total=1332 [2022-04-08 06:08:16,800 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 60 mSDsluCounter, 135 mSDsCounter, 0 mSdLazyCounter, 78 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 60 SdHoareTripleChecker+Valid, 174 SdHoareTripleChecker+Invalid, 106 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 78 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:08:16,801 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [60 Valid, 174 Invalid, 106 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 78 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:08:16,801 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 146 states. [2022-04-08 06:08:16,953 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 146 to 146. [2022-04-08 06:08:16,954 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:08:16,954 INFO L82 GeneralOperation]: Start isEquivalent. First operand 146 states. Second operand has 146 states, 110 states have (on average 1.1363636363636365) internal successors, (125), 110 states have internal predecessors, (125), 19 states have call successors, (19), 18 states have call predecessors, (19), 16 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 06:08:16,954 INFO L74 IsIncluded]: Start isIncluded. First operand 146 states. Second operand has 146 states, 110 states have (on average 1.1363636363636365) internal successors, (125), 110 states have internal predecessors, (125), 19 states have call successors, (19), 18 states have call predecessors, (19), 16 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 06:08:16,954 INFO L87 Difference]: Start difference. First operand 146 states. Second operand has 146 states, 110 states have (on average 1.1363636363636365) internal successors, (125), 110 states have internal predecessors, (125), 19 states have call successors, (19), 18 states have call predecessors, (19), 16 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 06:08:16,957 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:16,957 INFO L93 Difference]: Finished difference Result 146 states and 161 transitions. [2022-04-08 06:08:16,957 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 161 transitions. [2022-04-08 06:08:16,957 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:16,957 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:16,957 INFO L74 IsIncluded]: Start isIncluded. First operand has 146 states, 110 states have (on average 1.1363636363636365) internal successors, (125), 110 states have internal predecessors, (125), 19 states have call successors, (19), 18 states have call predecessors, (19), 16 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 146 states. [2022-04-08 06:08:16,958 INFO L87 Difference]: Start difference. First operand has 146 states, 110 states have (on average 1.1363636363636365) internal successors, (125), 110 states have internal predecessors, (125), 19 states have call successors, (19), 18 states have call predecessors, (19), 16 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 146 states. [2022-04-08 06:08:16,960 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:16,960 INFO L93 Difference]: Finished difference Result 146 states and 161 transitions. [2022-04-08 06:08:16,960 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 161 transitions. [2022-04-08 06:08:16,961 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:16,961 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:16,961 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:08:16,961 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:08:16,961 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 146 states, 110 states have (on average 1.1363636363636365) internal successors, (125), 110 states have internal predecessors, (125), 19 states have call successors, (19), 18 states have call predecessors, (19), 16 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 06:08:16,964 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 146 states to 146 states and 161 transitions. [2022-04-08 06:08:16,964 INFO L78 Accepts]: Start accepts. Automaton has 146 states and 161 transitions. Word has length 140 [2022-04-08 06:08:16,964 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:08:16,964 INFO L478 AbstractCegarLoop]: Abstraction has 146 states and 161 transitions. [2022-04-08 06:08:16,965 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 6.0588235294117645) internal successors, (103), 16 states have internal predecessors, (103), 16 states have call successors, (18), 16 states have call predecessors, (18), 14 states have return successors, (16), 14 states have call predecessors, (16), 15 states have call successors, (16) [2022-04-08 06:08:16,965 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 146 states and 161 transitions. [2022-04-08 06:08:19,210 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 161 edges. 160 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:19,210 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 161 transitions. [2022-04-08 06:08:19,211 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 150 [2022-04-08 06:08:19,211 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:08:19,211 INFO L499 BasicCegarLoop]: trace histogram [15, 15, 14, 14, 14, 14, 14, 14, 14, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:08:19,227 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-08 06:08:19,415 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-08 06:08:19,415 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:08:19,416 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:08:19,416 INFO L85 PathProgramCache]: Analyzing trace with hash -1088976298, now seen corresponding path program 27 times [2022-04-08 06:08:19,416 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:19,416 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1790350082] [2022-04-08 06:08:19,416 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:08:19,417 INFO L85 PathProgramCache]: Analyzing trace with hash -1088976298, now seen corresponding path program 28 times [2022-04-08 06:08:19,417 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:08:19,417 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [60332833] [2022-04-08 06:08:19,417 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:08:19,417 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:08:19,433 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:08:19,434 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1513972368] [2022-04-08 06:08:19,434 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:08:19,434 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:08:19,434 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:08:19,435 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-08 06:08:19,442 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-08 06:08:19,682 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:08:19,683 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:08:19,684 INFO L263 TraceCheckSpWp]: Trace formula consists of 373 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-08 06:08:19,714 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:08:19,717 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:08:20,464 INFO L272 TraceCheckUtils]: 0: Hoare triple {15685#true} call ULTIMATE.init(); {15685#true} is VALID [2022-04-08 06:08:20,464 INFO L290 TraceCheckUtils]: 1: Hoare triple {15685#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,465 INFO L290 TraceCheckUtils]: 2: Hoare triple {15693#(<= ~counter~0 0)} assume true; {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,465 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15693#(<= ~counter~0 0)} {15685#true} #67#return; {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,465 INFO L272 TraceCheckUtils]: 4: Hoare triple {15693#(<= ~counter~0 0)} call #t~ret7 := main(); {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,466 INFO L290 TraceCheckUtils]: 5: Hoare triple {15693#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,466 INFO L272 TraceCheckUtils]: 6: Hoare triple {15693#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,466 INFO L290 TraceCheckUtils]: 7: Hoare triple {15693#(<= ~counter~0 0)} ~cond := #in~cond; {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,467 INFO L290 TraceCheckUtils]: 8: Hoare triple {15693#(<= ~counter~0 0)} assume !(0 == ~cond); {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,467 INFO L290 TraceCheckUtils]: 9: Hoare triple {15693#(<= ~counter~0 0)} assume true; {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,467 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15693#(<= ~counter~0 0)} {15693#(<= ~counter~0 0)} #59#return; {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,468 INFO L272 TraceCheckUtils]: 11: Hoare triple {15693#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,468 INFO L290 TraceCheckUtils]: 12: Hoare triple {15693#(<= ~counter~0 0)} ~cond := #in~cond; {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,468 INFO L290 TraceCheckUtils]: 13: Hoare triple {15693#(<= ~counter~0 0)} assume !(0 == ~cond); {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,468 INFO L290 TraceCheckUtils]: 14: Hoare triple {15693#(<= ~counter~0 0)} assume true; {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,469 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {15693#(<= ~counter~0 0)} {15693#(<= ~counter~0 0)} #61#return; {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,469 INFO L290 TraceCheckUtils]: 16: Hoare triple {15693#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {15693#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:20,470 INFO L290 TraceCheckUtils]: 17: Hoare triple {15693#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15742#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:20,470 INFO L290 TraceCheckUtils]: 18: Hoare triple {15742#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {15742#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:20,470 INFO L272 TraceCheckUtils]: 19: Hoare triple {15742#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15742#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:20,471 INFO L290 TraceCheckUtils]: 20: Hoare triple {15742#(<= ~counter~0 1)} ~cond := #in~cond; {15742#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:20,471 INFO L290 TraceCheckUtils]: 21: Hoare triple {15742#(<= ~counter~0 1)} assume !(0 == ~cond); {15742#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:20,471 INFO L290 TraceCheckUtils]: 22: Hoare triple {15742#(<= ~counter~0 1)} assume true; {15742#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:20,472 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {15742#(<= ~counter~0 1)} {15742#(<= ~counter~0 1)} #63#return; {15742#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:20,472 INFO L290 TraceCheckUtils]: 24: Hoare triple {15742#(<= ~counter~0 1)} assume !!(0 != ~r~0); {15742#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:20,472 INFO L290 TraceCheckUtils]: 25: Hoare triple {15742#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {15742#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:20,473 INFO L290 TraceCheckUtils]: 26: Hoare triple {15742#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15770#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:20,473 INFO L290 TraceCheckUtils]: 27: Hoare triple {15770#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {15770#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:20,473 INFO L272 TraceCheckUtils]: 28: Hoare triple {15770#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15770#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:20,474 INFO L290 TraceCheckUtils]: 29: Hoare triple {15770#(<= ~counter~0 2)} ~cond := #in~cond; {15770#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:20,474 INFO L290 TraceCheckUtils]: 30: Hoare triple {15770#(<= ~counter~0 2)} assume !(0 == ~cond); {15770#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:20,474 INFO L290 TraceCheckUtils]: 31: Hoare triple {15770#(<= ~counter~0 2)} assume true; {15770#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:20,475 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {15770#(<= ~counter~0 2)} {15770#(<= ~counter~0 2)} #63#return; {15770#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:20,475 INFO L290 TraceCheckUtils]: 33: Hoare triple {15770#(<= ~counter~0 2)} assume !!(0 != ~r~0); {15770#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:20,475 INFO L290 TraceCheckUtils]: 34: Hoare triple {15770#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {15770#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:20,476 INFO L290 TraceCheckUtils]: 35: Hoare triple {15770#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15798#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:20,476 INFO L290 TraceCheckUtils]: 36: Hoare triple {15798#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {15798#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:20,476 INFO L272 TraceCheckUtils]: 37: Hoare triple {15798#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15798#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:20,477 INFO L290 TraceCheckUtils]: 38: Hoare triple {15798#(<= ~counter~0 3)} ~cond := #in~cond; {15798#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:20,477 INFO L290 TraceCheckUtils]: 39: Hoare triple {15798#(<= ~counter~0 3)} assume !(0 == ~cond); {15798#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:20,477 INFO L290 TraceCheckUtils]: 40: Hoare triple {15798#(<= ~counter~0 3)} assume true; {15798#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:20,478 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {15798#(<= ~counter~0 3)} {15798#(<= ~counter~0 3)} #63#return; {15798#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:20,478 INFO L290 TraceCheckUtils]: 42: Hoare triple {15798#(<= ~counter~0 3)} assume !!(0 != ~r~0); {15798#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:20,478 INFO L290 TraceCheckUtils]: 43: Hoare triple {15798#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {15798#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:20,479 INFO L290 TraceCheckUtils]: 44: Hoare triple {15798#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15826#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:20,479 INFO L290 TraceCheckUtils]: 45: Hoare triple {15826#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {15826#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:20,479 INFO L272 TraceCheckUtils]: 46: Hoare triple {15826#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15826#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:20,480 INFO L290 TraceCheckUtils]: 47: Hoare triple {15826#(<= ~counter~0 4)} ~cond := #in~cond; {15826#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:20,480 INFO L290 TraceCheckUtils]: 48: Hoare triple {15826#(<= ~counter~0 4)} assume !(0 == ~cond); {15826#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:20,480 INFO L290 TraceCheckUtils]: 49: Hoare triple {15826#(<= ~counter~0 4)} assume true; {15826#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:20,481 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {15826#(<= ~counter~0 4)} {15826#(<= ~counter~0 4)} #63#return; {15826#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:20,481 INFO L290 TraceCheckUtils]: 51: Hoare triple {15826#(<= ~counter~0 4)} assume !!(0 != ~r~0); {15826#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:20,481 INFO L290 TraceCheckUtils]: 52: Hoare triple {15826#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {15826#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:20,482 INFO L290 TraceCheckUtils]: 53: Hoare triple {15826#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:20,482 INFO L290 TraceCheckUtils]: 54: Hoare triple {15854#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:20,482 INFO L272 TraceCheckUtils]: 55: Hoare triple {15854#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:20,483 INFO L290 TraceCheckUtils]: 56: Hoare triple {15854#(<= ~counter~0 5)} ~cond := #in~cond; {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:20,483 INFO L290 TraceCheckUtils]: 57: Hoare triple {15854#(<= ~counter~0 5)} assume !(0 == ~cond); {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:20,483 INFO L290 TraceCheckUtils]: 58: Hoare triple {15854#(<= ~counter~0 5)} assume true; {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:20,484 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {15854#(<= ~counter~0 5)} {15854#(<= ~counter~0 5)} #63#return; {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:20,484 INFO L290 TraceCheckUtils]: 60: Hoare triple {15854#(<= ~counter~0 5)} assume !!(0 != ~r~0); {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:20,484 INFO L290 TraceCheckUtils]: 61: Hoare triple {15854#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:20,485 INFO L290 TraceCheckUtils]: 62: Hoare triple {15854#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15882#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:20,485 INFO L290 TraceCheckUtils]: 63: Hoare triple {15882#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {15882#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:20,485 INFO L272 TraceCheckUtils]: 64: Hoare triple {15882#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15882#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:20,486 INFO L290 TraceCheckUtils]: 65: Hoare triple {15882#(<= ~counter~0 6)} ~cond := #in~cond; {15882#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:20,486 INFO L290 TraceCheckUtils]: 66: Hoare triple {15882#(<= ~counter~0 6)} assume !(0 == ~cond); {15882#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:20,486 INFO L290 TraceCheckUtils]: 67: Hoare triple {15882#(<= ~counter~0 6)} assume true; {15882#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:20,487 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {15882#(<= ~counter~0 6)} {15882#(<= ~counter~0 6)} #63#return; {15882#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:20,487 INFO L290 TraceCheckUtils]: 69: Hoare triple {15882#(<= ~counter~0 6)} assume !!(0 != ~r~0); {15882#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:20,487 INFO L290 TraceCheckUtils]: 70: Hoare triple {15882#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {15882#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:20,487 INFO L290 TraceCheckUtils]: 71: Hoare triple {15882#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15910#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:20,488 INFO L290 TraceCheckUtils]: 72: Hoare triple {15910#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {15910#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:20,488 INFO L272 TraceCheckUtils]: 73: Hoare triple {15910#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15910#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:20,489 INFO L290 TraceCheckUtils]: 74: Hoare triple {15910#(<= ~counter~0 7)} ~cond := #in~cond; {15910#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:20,489 INFO L290 TraceCheckUtils]: 75: Hoare triple {15910#(<= ~counter~0 7)} assume !(0 == ~cond); {15910#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:20,489 INFO L290 TraceCheckUtils]: 76: Hoare triple {15910#(<= ~counter~0 7)} assume true; {15910#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:20,490 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {15910#(<= ~counter~0 7)} {15910#(<= ~counter~0 7)} #63#return; {15910#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:20,490 INFO L290 TraceCheckUtils]: 78: Hoare triple {15910#(<= ~counter~0 7)} assume !!(0 != ~r~0); {15910#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:20,490 INFO L290 TraceCheckUtils]: 79: Hoare triple {15910#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {15910#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:20,491 INFO L290 TraceCheckUtils]: 80: Hoare triple {15910#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15938#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:20,491 INFO L290 TraceCheckUtils]: 81: Hoare triple {15938#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {15938#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:20,491 INFO L272 TraceCheckUtils]: 82: Hoare triple {15938#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15938#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:20,492 INFO L290 TraceCheckUtils]: 83: Hoare triple {15938#(<= ~counter~0 8)} ~cond := #in~cond; {15938#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:20,492 INFO L290 TraceCheckUtils]: 84: Hoare triple {15938#(<= ~counter~0 8)} assume !(0 == ~cond); {15938#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:20,492 INFO L290 TraceCheckUtils]: 85: Hoare triple {15938#(<= ~counter~0 8)} assume true; {15938#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:20,493 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {15938#(<= ~counter~0 8)} {15938#(<= ~counter~0 8)} #63#return; {15938#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:20,493 INFO L290 TraceCheckUtils]: 87: Hoare triple {15938#(<= ~counter~0 8)} assume !!(0 != ~r~0); {15938#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:20,493 INFO L290 TraceCheckUtils]: 88: Hoare triple {15938#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {15938#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:20,494 INFO L290 TraceCheckUtils]: 89: Hoare triple {15938#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15966#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:20,494 INFO L290 TraceCheckUtils]: 90: Hoare triple {15966#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {15966#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:20,494 INFO L272 TraceCheckUtils]: 91: Hoare triple {15966#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15966#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:20,495 INFO L290 TraceCheckUtils]: 92: Hoare triple {15966#(<= ~counter~0 9)} ~cond := #in~cond; {15966#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:20,495 INFO L290 TraceCheckUtils]: 93: Hoare triple {15966#(<= ~counter~0 9)} assume !(0 == ~cond); {15966#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:20,495 INFO L290 TraceCheckUtils]: 94: Hoare triple {15966#(<= ~counter~0 9)} assume true; {15966#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:20,496 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {15966#(<= ~counter~0 9)} {15966#(<= ~counter~0 9)} #63#return; {15966#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:20,496 INFO L290 TraceCheckUtils]: 96: Hoare triple {15966#(<= ~counter~0 9)} assume !!(0 != ~r~0); {15966#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:20,496 INFO L290 TraceCheckUtils]: 97: Hoare triple {15966#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {15966#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:20,497 INFO L290 TraceCheckUtils]: 98: Hoare triple {15966#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15994#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:20,497 INFO L290 TraceCheckUtils]: 99: Hoare triple {15994#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {15994#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:20,497 INFO L272 TraceCheckUtils]: 100: Hoare triple {15994#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15994#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:20,498 INFO L290 TraceCheckUtils]: 101: Hoare triple {15994#(<= ~counter~0 10)} ~cond := #in~cond; {15994#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:20,498 INFO L290 TraceCheckUtils]: 102: Hoare triple {15994#(<= ~counter~0 10)} assume !(0 == ~cond); {15994#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:20,498 INFO L290 TraceCheckUtils]: 103: Hoare triple {15994#(<= ~counter~0 10)} assume true; {15994#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:20,499 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {15994#(<= ~counter~0 10)} {15994#(<= ~counter~0 10)} #63#return; {15994#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:20,499 INFO L290 TraceCheckUtils]: 105: Hoare triple {15994#(<= ~counter~0 10)} assume !!(0 != ~r~0); {15994#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:20,499 INFO L290 TraceCheckUtils]: 106: Hoare triple {15994#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {15994#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:20,500 INFO L290 TraceCheckUtils]: 107: Hoare triple {15994#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16022#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:20,500 INFO L290 TraceCheckUtils]: 108: Hoare triple {16022#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {16022#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:20,500 INFO L272 TraceCheckUtils]: 109: Hoare triple {16022#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {16022#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:20,501 INFO L290 TraceCheckUtils]: 110: Hoare triple {16022#(<= ~counter~0 11)} ~cond := #in~cond; {16022#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:20,501 INFO L290 TraceCheckUtils]: 111: Hoare triple {16022#(<= ~counter~0 11)} assume !(0 == ~cond); {16022#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:20,501 INFO L290 TraceCheckUtils]: 112: Hoare triple {16022#(<= ~counter~0 11)} assume true; {16022#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:20,502 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {16022#(<= ~counter~0 11)} {16022#(<= ~counter~0 11)} #63#return; {16022#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:20,502 INFO L290 TraceCheckUtils]: 114: Hoare triple {16022#(<= ~counter~0 11)} assume !!(0 != ~r~0); {16022#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:20,502 INFO L290 TraceCheckUtils]: 115: Hoare triple {16022#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {16022#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:20,503 INFO L290 TraceCheckUtils]: 116: Hoare triple {16022#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16050#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:20,503 INFO L290 TraceCheckUtils]: 117: Hoare triple {16050#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {16050#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:20,503 INFO L272 TraceCheckUtils]: 118: Hoare triple {16050#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {16050#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:20,504 INFO L290 TraceCheckUtils]: 119: Hoare triple {16050#(<= ~counter~0 12)} ~cond := #in~cond; {16050#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:20,504 INFO L290 TraceCheckUtils]: 120: Hoare triple {16050#(<= ~counter~0 12)} assume !(0 == ~cond); {16050#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:20,504 INFO L290 TraceCheckUtils]: 121: Hoare triple {16050#(<= ~counter~0 12)} assume true; {16050#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:20,505 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {16050#(<= ~counter~0 12)} {16050#(<= ~counter~0 12)} #63#return; {16050#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:20,505 INFO L290 TraceCheckUtils]: 123: Hoare triple {16050#(<= ~counter~0 12)} assume !!(0 != ~r~0); {16050#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:20,505 INFO L290 TraceCheckUtils]: 124: Hoare triple {16050#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {16050#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:20,506 INFO L290 TraceCheckUtils]: 125: Hoare triple {16050#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16078#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:20,506 INFO L290 TraceCheckUtils]: 126: Hoare triple {16078#(<= ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {16078#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:20,507 INFO L272 TraceCheckUtils]: 127: Hoare triple {16078#(<= ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {16078#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:20,507 INFO L290 TraceCheckUtils]: 128: Hoare triple {16078#(<= ~counter~0 13)} ~cond := #in~cond; {16078#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:20,507 INFO L290 TraceCheckUtils]: 129: Hoare triple {16078#(<= ~counter~0 13)} assume !(0 == ~cond); {16078#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:20,507 INFO L290 TraceCheckUtils]: 130: Hoare triple {16078#(<= ~counter~0 13)} assume true; {16078#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:20,508 INFO L284 TraceCheckUtils]: 131: Hoare quadruple {16078#(<= ~counter~0 13)} {16078#(<= ~counter~0 13)} #63#return; {16078#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:20,508 INFO L290 TraceCheckUtils]: 132: Hoare triple {16078#(<= ~counter~0 13)} assume !!(0 != ~r~0); {16078#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:20,508 INFO L290 TraceCheckUtils]: 133: Hoare triple {16078#(<= ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {16078#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:20,509 INFO L290 TraceCheckUtils]: 134: Hoare triple {16078#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16106#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:20,509 INFO L290 TraceCheckUtils]: 135: Hoare triple {16106#(<= ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {16106#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:20,510 INFO L272 TraceCheckUtils]: 136: Hoare triple {16106#(<= ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {16106#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:20,510 INFO L290 TraceCheckUtils]: 137: Hoare triple {16106#(<= ~counter~0 14)} ~cond := #in~cond; {16106#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:20,510 INFO L290 TraceCheckUtils]: 138: Hoare triple {16106#(<= ~counter~0 14)} assume !(0 == ~cond); {16106#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:20,510 INFO L290 TraceCheckUtils]: 139: Hoare triple {16106#(<= ~counter~0 14)} assume true; {16106#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:20,511 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {16106#(<= ~counter~0 14)} {16106#(<= ~counter~0 14)} #63#return; {16106#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:20,511 INFO L290 TraceCheckUtils]: 141: Hoare triple {16106#(<= ~counter~0 14)} assume !!(0 != ~r~0); {16106#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:20,511 INFO L290 TraceCheckUtils]: 142: Hoare triple {16106#(<= ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {16106#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:20,512 INFO L290 TraceCheckUtils]: 143: Hoare triple {16106#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16134#(<= |main_#t~post6| 14)} is VALID [2022-04-08 06:08:20,512 INFO L290 TraceCheckUtils]: 144: Hoare triple {16134#(<= |main_#t~post6| 14)} assume !(#t~post6 < 20);havoc #t~post6; {15686#false} is VALID [2022-04-08 06:08:20,512 INFO L272 TraceCheckUtils]: 145: Hoare triple {15686#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15686#false} is VALID [2022-04-08 06:08:20,512 INFO L290 TraceCheckUtils]: 146: Hoare triple {15686#false} ~cond := #in~cond; {15686#false} is VALID [2022-04-08 06:08:20,512 INFO L290 TraceCheckUtils]: 147: Hoare triple {15686#false} assume 0 == ~cond; {15686#false} is VALID [2022-04-08 06:08:20,512 INFO L290 TraceCheckUtils]: 148: Hoare triple {15686#false} assume !false; {15686#false} is VALID [2022-04-08 06:08:20,513 INFO L134 CoverageAnalysis]: Checked inductivity of 879 backedges. 28 proven. 847 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:08:20,513 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:08:21,203 INFO L290 TraceCheckUtils]: 148: Hoare triple {15686#false} assume !false; {15686#false} is VALID [2022-04-08 06:08:21,203 INFO L290 TraceCheckUtils]: 147: Hoare triple {15686#false} assume 0 == ~cond; {15686#false} is VALID [2022-04-08 06:08:21,203 INFO L290 TraceCheckUtils]: 146: Hoare triple {15686#false} ~cond := #in~cond; {15686#false} is VALID [2022-04-08 06:08:21,203 INFO L272 TraceCheckUtils]: 145: Hoare triple {15686#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15686#false} is VALID [2022-04-08 06:08:21,203 INFO L290 TraceCheckUtils]: 144: Hoare triple {16162#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {15686#false} is VALID [2022-04-08 06:08:21,204 INFO L290 TraceCheckUtils]: 143: Hoare triple {16166#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16162#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:08:21,204 INFO L290 TraceCheckUtils]: 142: Hoare triple {16166#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {16166#(< ~counter~0 20)} is VALID [2022-04-08 06:08:21,204 INFO L290 TraceCheckUtils]: 141: Hoare triple {16166#(< ~counter~0 20)} assume !!(0 != ~r~0); {16166#(< ~counter~0 20)} is VALID [2022-04-08 06:08:21,205 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {15685#true} {16166#(< ~counter~0 20)} #63#return; {16166#(< ~counter~0 20)} is VALID [2022-04-08 06:08:21,205 INFO L290 TraceCheckUtils]: 139: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,205 INFO L290 TraceCheckUtils]: 138: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,205 INFO L290 TraceCheckUtils]: 137: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,205 INFO L272 TraceCheckUtils]: 136: Hoare triple {16166#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,205 INFO L290 TraceCheckUtils]: 135: Hoare triple {16166#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {16166#(< ~counter~0 20)} is VALID [2022-04-08 06:08:21,206 INFO L290 TraceCheckUtils]: 134: Hoare triple {16194#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16166#(< ~counter~0 20)} is VALID [2022-04-08 06:08:21,206 INFO L290 TraceCheckUtils]: 133: Hoare triple {16194#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {16194#(< ~counter~0 19)} is VALID [2022-04-08 06:08:21,206 INFO L290 TraceCheckUtils]: 132: Hoare triple {16194#(< ~counter~0 19)} assume !!(0 != ~r~0); {16194#(< ~counter~0 19)} is VALID [2022-04-08 06:08:21,207 INFO L284 TraceCheckUtils]: 131: Hoare quadruple {15685#true} {16194#(< ~counter~0 19)} #63#return; {16194#(< ~counter~0 19)} is VALID [2022-04-08 06:08:21,207 INFO L290 TraceCheckUtils]: 130: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,207 INFO L290 TraceCheckUtils]: 129: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,207 INFO L290 TraceCheckUtils]: 128: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,207 INFO L272 TraceCheckUtils]: 127: Hoare triple {16194#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,207 INFO L290 TraceCheckUtils]: 126: Hoare triple {16194#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {16194#(< ~counter~0 19)} is VALID [2022-04-08 06:08:21,208 INFO L290 TraceCheckUtils]: 125: Hoare triple {16222#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16194#(< ~counter~0 19)} is VALID [2022-04-08 06:08:21,208 INFO L290 TraceCheckUtils]: 124: Hoare triple {16222#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {16222#(< ~counter~0 18)} is VALID [2022-04-08 06:08:21,208 INFO L290 TraceCheckUtils]: 123: Hoare triple {16222#(< ~counter~0 18)} assume !!(0 != ~r~0); {16222#(< ~counter~0 18)} is VALID [2022-04-08 06:08:21,209 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {15685#true} {16222#(< ~counter~0 18)} #63#return; {16222#(< ~counter~0 18)} is VALID [2022-04-08 06:08:21,209 INFO L290 TraceCheckUtils]: 121: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,209 INFO L290 TraceCheckUtils]: 120: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,209 INFO L290 TraceCheckUtils]: 119: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,209 INFO L272 TraceCheckUtils]: 118: Hoare triple {16222#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,209 INFO L290 TraceCheckUtils]: 117: Hoare triple {16222#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {16222#(< ~counter~0 18)} is VALID [2022-04-08 06:08:21,210 INFO L290 TraceCheckUtils]: 116: Hoare triple {16250#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16222#(< ~counter~0 18)} is VALID [2022-04-08 06:08:21,210 INFO L290 TraceCheckUtils]: 115: Hoare triple {16250#(< ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {16250#(< ~counter~0 17)} is VALID [2022-04-08 06:08:21,210 INFO L290 TraceCheckUtils]: 114: Hoare triple {16250#(< ~counter~0 17)} assume !!(0 != ~r~0); {16250#(< ~counter~0 17)} is VALID [2022-04-08 06:08:21,211 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {15685#true} {16250#(< ~counter~0 17)} #63#return; {16250#(< ~counter~0 17)} is VALID [2022-04-08 06:08:21,211 INFO L290 TraceCheckUtils]: 112: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,211 INFO L290 TraceCheckUtils]: 111: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,211 INFO L290 TraceCheckUtils]: 110: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,211 INFO L272 TraceCheckUtils]: 109: Hoare triple {16250#(< ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,211 INFO L290 TraceCheckUtils]: 108: Hoare triple {16250#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {16250#(< ~counter~0 17)} is VALID [2022-04-08 06:08:21,212 INFO L290 TraceCheckUtils]: 107: Hoare triple {16278#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16250#(< ~counter~0 17)} is VALID [2022-04-08 06:08:21,212 INFO L290 TraceCheckUtils]: 106: Hoare triple {16278#(< ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {16278#(< ~counter~0 16)} is VALID [2022-04-08 06:08:21,212 INFO L290 TraceCheckUtils]: 105: Hoare triple {16278#(< ~counter~0 16)} assume !!(0 != ~r~0); {16278#(< ~counter~0 16)} is VALID [2022-04-08 06:08:21,213 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {15685#true} {16278#(< ~counter~0 16)} #63#return; {16278#(< ~counter~0 16)} is VALID [2022-04-08 06:08:21,213 INFO L290 TraceCheckUtils]: 103: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,213 INFO L290 TraceCheckUtils]: 102: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,213 INFO L290 TraceCheckUtils]: 101: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,213 INFO L272 TraceCheckUtils]: 100: Hoare triple {16278#(< ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,213 INFO L290 TraceCheckUtils]: 99: Hoare triple {16278#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {16278#(< ~counter~0 16)} is VALID [2022-04-08 06:08:21,214 INFO L290 TraceCheckUtils]: 98: Hoare triple {16106#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16278#(< ~counter~0 16)} is VALID [2022-04-08 06:08:21,214 INFO L290 TraceCheckUtils]: 97: Hoare triple {16106#(<= ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {16106#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:21,214 INFO L290 TraceCheckUtils]: 96: Hoare triple {16106#(<= ~counter~0 14)} assume !!(0 != ~r~0); {16106#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:21,215 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {15685#true} {16106#(<= ~counter~0 14)} #63#return; {16106#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:21,215 INFO L290 TraceCheckUtils]: 94: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,215 INFO L290 TraceCheckUtils]: 93: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,215 INFO L290 TraceCheckUtils]: 92: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,215 INFO L272 TraceCheckUtils]: 91: Hoare triple {16106#(<= ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,215 INFO L290 TraceCheckUtils]: 90: Hoare triple {16106#(<= ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {16106#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:21,216 INFO L290 TraceCheckUtils]: 89: Hoare triple {16078#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16106#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:21,216 INFO L290 TraceCheckUtils]: 88: Hoare triple {16078#(<= ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {16078#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:21,216 INFO L290 TraceCheckUtils]: 87: Hoare triple {16078#(<= ~counter~0 13)} assume !!(0 != ~r~0); {16078#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:21,217 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {15685#true} {16078#(<= ~counter~0 13)} #63#return; {16078#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:21,217 INFO L290 TraceCheckUtils]: 85: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,217 INFO L290 TraceCheckUtils]: 84: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,217 INFO L290 TraceCheckUtils]: 83: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,217 INFO L272 TraceCheckUtils]: 82: Hoare triple {16078#(<= ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,219 INFO L290 TraceCheckUtils]: 81: Hoare triple {16078#(<= ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {16078#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:21,220 INFO L290 TraceCheckUtils]: 80: Hoare triple {16050#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16078#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:21,220 INFO L290 TraceCheckUtils]: 79: Hoare triple {16050#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {16050#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:21,221 INFO L290 TraceCheckUtils]: 78: Hoare triple {16050#(<= ~counter~0 12)} assume !!(0 != ~r~0); {16050#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:21,221 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {15685#true} {16050#(<= ~counter~0 12)} #63#return; {16050#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:21,221 INFO L290 TraceCheckUtils]: 76: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,221 INFO L290 TraceCheckUtils]: 75: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,221 INFO L290 TraceCheckUtils]: 74: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,221 INFO L272 TraceCheckUtils]: 73: Hoare triple {16050#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,222 INFO L290 TraceCheckUtils]: 72: Hoare triple {16050#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {16050#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:21,222 INFO L290 TraceCheckUtils]: 71: Hoare triple {16022#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16050#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:21,222 INFO L290 TraceCheckUtils]: 70: Hoare triple {16022#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {16022#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:21,223 INFO L290 TraceCheckUtils]: 69: Hoare triple {16022#(<= ~counter~0 11)} assume !!(0 != ~r~0); {16022#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:21,223 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {15685#true} {16022#(<= ~counter~0 11)} #63#return; {16022#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:21,223 INFO L290 TraceCheckUtils]: 67: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,223 INFO L290 TraceCheckUtils]: 66: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,223 INFO L290 TraceCheckUtils]: 65: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,223 INFO L272 TraceCheckUtils]: 64: Hoare triple {16022#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,224 INFO L290 TraceCheckUtils]: 63: Hoare triple {16022#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {16022#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:21,224 INFO L290 TraceCheckUtils]: 62: Hoare triple {15994#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16022#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:21,224 INFO L290 TraceCheckUtils]: 61: Hoare triple {15994#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {15994#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:21,225 INFO L290 TraceCheckUtils]: 60: Hoare triple {15994#(<= ~counter~0 10)} assume !!(0 != ~r~0); {15994#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:21,225 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {15685#true} {15994#(<= ~counter~0 10)} #63#return; {15994#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:21,225 INFO L290 TraceCheckUtils]: 58: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,225 INFO L290 TraceCheckUtils]: 57: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,225 INFO L290 TraceCheckUtils]: 56: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,225 INFO L272 TraceCheckUtils]: 55: Hoare triple {15994#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,225 INFO L290 TraceCheckUtils]: 54: Hoare triple {15994#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {15994#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:21,226 INFO L290 TraceCheckUtils]: 53: Hoare triple {15966#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15994#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:21,226 INFO L290 TraceCheckUtils]: 52: Hoare triple {15966#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {15966#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:21,226 INFO L290 TraceCheckUtils]: 51: Hoare triple {15966#(<= ~counter~0 9)} assume !!(0 != ~r~0); {15966#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:21,227 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {15685#true} {15966#(<= ~counter~0 9)} #63#return; {15966#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:21,227 INFO L290 TraceCheckUtils]: 49: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,227 INFO L290 TraceCheckUtils]: 48: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,227 INFO L290 TraceCheckUtils]: 47: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,227 INFO L272 TraceCheckUtils]: 46: Hoare triple {15966#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,227 INFO L290 TraceCheckUtils]: 45: Hoare triple {15966#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {15966#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:21,228 INFO L290 TraceCheckUtils]: 44: Hoare triple {15938#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15966#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:21,228 INFO L290 TraceCheckUtils]: 43: Hoare triple {15938#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {15938#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:21,228 INFO L290 TraceCheckUtils]: 42: Hoare triple {15938#(<= ~counter~0 8)} assume !!(0 != ~r~0); {15938#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:21,229 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {15685#true} {15938#(<= ~counter~0 8)} #63#return; {15938#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:21,229 INFO L290 TraceCheckUtils]: 40: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,229 INFO L290 TraceCheckUtils]: 39: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,229 INFO L290 TraceCheckUtils]: 38: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,229 INFO L272 TraceCheckUtils]: 37: Hoare triple {15938#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,229 INFO L290 TraceCheckUtils]: 36: Hoare triple {15938#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {15938#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:21,230 INFO L290 TraceCheckUtils]: 35: Hoare triple {15910#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15938#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:21,230 INFO L290 TraceCheckUtils]: 34: Hoare triple {15910#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {15910#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:21,230 INFO L290 TraceCheckUtils]: 33: Hoare triple {15910#(<= ~counter~0 7)} assume !!(0 != ~r~0); {15910#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:21,231 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {15685#true} {15910#(<= ~counter~0 7)} #63#return; {15910#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:21,231 INFO L290 TraceCheckUtils]: 31: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,231 INFO L290 TraceCheckUtils]: 30: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,231 INFO L290 TraceCheckUtils]: 29: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,231 INFO L272 TraceCheckUtils]: 28: Hoare triple {15910#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,231 INFO L290 TraceCheckUtils]: 27: Hoare triple {15910#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {15910#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:21,232 INFO L290 TraceCheckUtils]: 26: Hoare triple {15882#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15910#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:21,232 INFO L290 TraceCheckUtils]: 25: Hoare triple {15882#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {15882#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:21,232 INFO L290 TraceCheckUtils]: 24: Hoare triple {15882#(<= ~counter~0 6)} assume !!(0 != ~r~0); {15882#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:21,233 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {15685#true} {15882#(<= ~counter~0 6)} #63#return; {15882#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:21,233 INFO L290 TraceCheckUtils]: 22: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,233 INFO L290 TraceCheckUtils]: 21: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,233 INFO L290 TraceCheckUtils]: 20: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,233 INFO L272 TraceCheckUtils]: 19: Hoare triple {15882#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,233 INFO L290 TraceCheckUtils]: 18: Hoare triple {15882#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {15882#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:21,234 INFO L290 TraceCheckUtils]: 17: Hoare triple {15854#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15882#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:21,234 INFO L290 TraceCheckUtils]: 16: Hoare triple {15854#(<= ~counter~0 5)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:21,234 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {15685#true} {15854#(<= ~counter~0 5)} #61#return; {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:21,234 INFO L290 TraceCheckUtils]: 14: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,235 INFO L290 TraceCheckUtils]: 13: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,235 INFO L290 TraceCheckUtils]: 12: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,235 INFO L272 TraceCheckUtils]: 11: Hoare triple {15854#(<= ~counter~0 5)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,235 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15685#true} {15854#(<= ~counter~0 5)} #59#return; {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:21,235 INFO L290 TraceCheckUtils]: 9: Hoare triple {15685#true} assume true; {15685#true} is VALID [2022-04-08 06:08:21,235 INFO L290 TraceCheckUtils]: 8: Hoare triple {15685#true} assume !(0 == ~cond); {15685#true} is VALID [2022-04-08 06:08:21,235 INFO L290 TraceCheckUtils]: 7: Hoare triple {15685#true} ~cond := #in~cond; {15685#true} is VALID [2022-04-08 06:08:21,235 INFO L272 TraceCheckUtils]: 6: Hoare triple {15854#(<= ~counter~0 5)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {15685#true} is VALID [2022-04-08 06:08:21,236 INFO L290 TraceCheckUtils]: 5: Hoare triple {15854#(<= ~counter~0 5)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:21,236 INFO L272 TraceCheckUtils]: 4: Hoare triple {15854#(<= ~counter~0 5)} call #t~ret7 := main(); {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:21,236 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15854#(<= ~counter~0 5)} {15685#true} #67#return; {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:21,236 INFO L290 TraceCheckUtils]: 2: Hoare triple {15854#(<= ~counter~0 5)} assume true; {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:21,237 INFO L290 TraceCheckUtils]: 1: Hoare triple {15685#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {15854#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:21,237 INFO L272 TraceCheckUtils]: 0: Hoare triple {15685#true} call ULTIMATE.init(); {15685#true} is VALID [2022-04-08 06:08:21,237 INFO L134 CoverageAnalysis]: Checked inductivity of 879 backedges. 28 proven. 483 refuted. 0 times theorem prover too weak. 368 trivial. 0 not checked. [2022-04-08 06:08:21,237 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:08:21,238 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [60332833] [2022-04-08 06:08:21,238 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:08:21,238 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1513972368] [2022-04-08 06:08:21,238 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1513972368] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:08:21,238 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:08:21,238 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18] total 24 [2022-04-08 06:08:21,238 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:08:21,238 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1790350082] [2022-04-08 06:08:21,238 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1790350082] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:08:21,238 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:08:21,238 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-08 06:08:21,238 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1275005552] [2022-04-08 06:08:21,238 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:08:21,239 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 6.111111111111111) internal successors, (110), 17 states have internal predecessors, (110), 17 states have call successors, (19), 17 states have call predecessors, (19), 15 states have return successors, (17), 15 states have call predecessors, (17), 16 states have call successors, (17) Word has length 149 [2022-04-08 06:08:21,239 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:08:21,240 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 6.111111111111111) internal successors, (110), 17 states have internal predecessors, (110), 17 states have call successors, (19), 17 states have call predecessors, (19), 15 states have return successors, (17), 15 states have call predecessors, (17), 16 states have call successors, (17) [2022-04-08 06:08:21,341 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 146 edges. 146 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:21,341 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-08 06:08:21,341 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:21,342 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-08 06:08:21,342 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:08:21,342 INFO L87 Difference]: Start difference. First operand 146 states and 161 transitions. Second operand has 18 states, 18 states have (on average 6.111111111111111) internal successors, (110), 17 states have internal predecessors, (110), 17 states have call successors, (19), 17 states have call predecessors, (19), 15 states have return successors, (17), 15 states have call predecessors, (17), 16 states have call successors, (17) [2022-04-08 06:08:21,936 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:21,936 INFO L93 Difference]: Finished difference Result 160 states and 176 transitions. [2022-04-08 06:08:21,936 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2022-04-08 06:08:21,937 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 6.111111111111111) internal successors, (110), 17 states have internal predecessors, (110), 17 states have call successors, (19), 17 states have call predecessors, (19), 15 states have return successors, (17), 15 states have call predecessors, (17), 16 states have call successors, (17) Word has length 149 [2022-04-08 06:08:21,937 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:08:21,937 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 6.111111111111111) internal successors, (110), 17 states have internal predecessors, (110), 17 states have call successors, (19), 17 states have call predecessors, (19), 15 states have return successors, (17), 15 states have call predecessors, (17), 16 states have call successors, (17) [2022-04-08 06:08:21,940 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 175 transitions. [2022-04-08 06:08:21,941 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 6.111111111111111) internal successors, (110), 17 states have internal predecessors, (110), 17 states have call successors, (19), 17 states have call predecessors, (19), 15 states have return successors, (17), 15 states have call predecessors, (17), 16 states have call successors, (17) [2022-04-08 06:08:21,944 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 175 transitions. [2022-04-08 06:08:21,944 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 175 transitions. [2022-04-08 06:08:22,109 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 175 edges. 175 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:22,112 INFO L225 Difference]: With dead ends: 160 [2022-04-08 06:08:22,112 INFO L226 Difference]: Without dead ends: 155 [2022-04-08 06:08:22,113 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 311 GetRequests, 274 SyntacticMatches, 1 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 129 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=558, Invalid=848, Unknown=0, NotChecked=0, Total=1406 [2022-04-08 06:08:22,113 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 59 mSDsluCounter, 136 mSDsCounter, 0 mSdLazyCounter, 86 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 59 SdHoareTripleChecker+Valid, 176 SdHoareTripleChecker+Invalid, 107 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 86 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:08:22,113 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [59 Valid, 176 Invalid, 107 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 86 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:08:22,114 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 155 states. [2022-04-08 06:08:22,291 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 155 to 155. [2022-04-08 06:08:22,291 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:08:22,292 INFO L82 GeneralOperation]: Start isEquivalent. First operand 155 states. Second operand has 155 states, 117 states have (on average 1.1367521367521367) internal successors, (133), 117 states have internal predecessors, (133), 20 states have call successors, (20), 19 states have call predecessors, (20), 17 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 06:08:22,292 INFO L74 IsIncluded]: Start isIncluded. First operand 155 states. Second operand has 155 states, 117 states have (on average 1.1367521367521367) internal successors, (133), 117 states have internal predecessors, (133), 20 states have call successors, (20), 19 states have call predecessors, (20), 17 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 06:08:22,292 INFO L87 Difference]: Start difference. First operand 155 states. Second operand has 155 states, 117 states have (on average 1.1367521367521367) internal successors, (133), 117 states have internal predecessors, (133), 20 states have call successors, (20), 19 states have call predecessors, (20), 17 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 06:08:22,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:22,294 INFO L93 Difference]: Finished difference Result 155 states and 171 transitions. [2022-04-08 06:08:22,294 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 171 transitions. [2022-04-08 06:08:22,295 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:22,295 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:22,295 INFO L74 IsIncluded]: Start isIncluded. First operand has 155 states, 117 states have (on average 1.1367521367521367) internal successors, (133), 117 states have internal predecessors, (133), 20 states have call successors, (20), 19 states have call predecessors, (20), 17 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) Second operand 155 states. [2022-04-08 06:08:22,295 INFO L87 Difference]: Start difference. First operand has 155 states, 117 states have (on average 1.1367521367521367) internal successors, (133), 117 states have internal predecessors, (133), 20 states have call successors, (20), 19 states have call predecessors, (20), 17 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) Second operand 155 states. [2022-04-08 06:08:22,298 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:22,298 INFO L93 Difference]: Finished difference Result 155 states and 171 transitions. [2022-04-08 06:08:22,298 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 171 transitions. [2022-04-08 06:08:22,299 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:22,299 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:22,299 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:08:22,299 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:08:22,299 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 155 states, 117 states have (on average 1.1367521367521367) internal successors, (133), 117 states have internal predecessors, (133), 20 states have call successors, (20), 19 states have call predecessors, (20), 17 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 06:08:22,302 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 155 states to 155 states and 171 transitions. [2022-04-08 06:08:22,302 INFO L78 Accepts]: Start accepts. Automaton has 155 states and 171 transitions. Word has length 149 [2022-04-08 06:08:22,302 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:08:22,302 INFO L478 AbstractCegarLoop]: Abstraction has 155 states and 171 transitions. [2022-04-08 06:08:22,303 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 6.111111111111111) internal successors, (110), 17 states have internal predecessors, (110), 17 states have call successors, (19), 17 states have call predecessors, (19), 15 states have return successors, (17), 15 states have call predecessors, (17), 16 states have call successors, (17) [2022-04-08 06:08:22,303 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 155 states and 171 transitions. [2022-04-08 06:08:24,585 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 171 edges. 170 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:24,585 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 171 transitions. [2022-04-08 06:08:24,586 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 159 [2022-04-08 06:08:24,586 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:08:24,586 INFO L499 BasicCegarLoop]: trace histogram [16, 16, 15, 15, 15, 15, 15, 15, 15, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:08:24,593 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-08 06:08:24,786 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-08 06:08:24,787 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:08:24,787 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:08:24,787 INFO L85 PathProgramCache]: Analyzing trace with hash -2060864036, now seen corresponding path program 29 times [2022-04-08 06:08:24,787 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:24,787 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1617677597] [2022-04-08 06:08:24,787 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:08:24,788 INFO L85 PathProgramCache]: Analyzing trace with hash -2060864036, now seen corresponding path program 30 times [2022-04-08 06:08:24,788 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:08:24,788 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [523450327] [2022-04-08 06:08:24,788 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:08:24,788 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:08:24,807 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:08:24,807 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [356283684] [2022-04-08 06:08:24,808 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:08:24,808 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:08:24,808 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:08:24,816 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-08 06:08:24,843 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-08 06:08:54,669 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 16 check-sat command(s) [2022-04-08 06:08:54,670 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:08:54,687 INFO L263 TraceCheckSpWp]: Trace formula consists of 393 conjuncts, 35 conjunts are in the unsatisfiable core [2022-04-08 06:08:54,740 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:08:54,742 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:08:55,716 INFO L272 TraceCheckUtils]: 0: Hoare triple {17570#true} call ULTIMATE.init(); {17570#true} is VALID [2022-04-08 06:08:55,717 INFO L290 TraceCheckUtils]: 1: Hoare triple {17570#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,717 INFO L290 TraceCheckUtils]: 2: Hoare triple {17578#(<= ~counter~0 0)} assume true; {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,718 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17578#(<= ~counter~0 0)} {17570#true} #67#return; {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,718 INFO L272 TraceCheckUtils]: 4: Hoare triple {17578#(<= ~counter~0 0)} call #t~ret7 := main(); {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,719 INFO L290 TraceCheckUtils]: 5: Hoare triple {17578#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,719 INFO L272 TraceCheckUtils]: 6: Hoare triple {17578#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,719 INFO L290 TraceCheckUtils]: 7: Hoare triple {17578#(<= ~counter~0 0)} ~cond := #in~cond; {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,720 INFO L290 TraceCheckUtils]: 8: Hoare triple {17578#(<= ~counter~0 0)} assume !(0 == ~cond); {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,720 INFO L290 TraceCheckUtils]: 9: Hoare triple {17578#(<= ~counter~0 0)} assume true; {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,720 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17578#(<= ~counter~0 0)} {17578#(<= ~counter~0 0)} #59#return; {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,721 INFO L272 TraceCheckUtils]: 11: Hoare triple {17578#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,721 INFO L290 TraceCheckUtils]: 12: Hoare triple {17578#(<= ~counter~0 0)} ~cond := #in~cond; {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,721 INFO L290 TraceCheckUtils]: 13: Hoare triple {17578#(<= ~counter~0 0)} assume !(0 == ~cond); {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,722 INFO L290 TraceCheckUtils]: 14: Hoare triple {17578#(<= ~counter~0 0)} assume true; {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,722 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17578#(<= ~counter~0 0)} {17578#(<= ~counter~0 0)} #61#return; {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,723 INFO L290 TraceCheckUtils]: 16: Hoare triple {17578#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {17578#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:55,723 INFO L290 TraceCheckUtils]: 17: Hoare triple {17578#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17627#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:55,724 INFO L290 TraceCheckUtils]: 18: Hoare triple {17627#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {17627#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:55,724 INFO L272 TraceCheckUtils]: 19: Hoare triple {17627#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17627#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:55,724 INFO L290 TraceCheckUtils]: 20: Hoare triple {17627#(<= ~counter~0 1)} ~cond := #in~cond; {17627#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:55,725 INFO L290 TraceCheckUtils]: 21: Hoare triple {17627#(<= ~counter~0 1)} assume !(0 == ~cond); {17627#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:55,725 INFO L290 TraceCheckUtils]: 22: Hoare triple {17627#(<= ~counter~0 1)} assume true; {17627#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:55,726 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {17627#(<= ~counter~0 1)} {17627#(<= ~counter~0 1)} #63#return; {17627#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:55,726 INFO L290 TraceCheckUtils]: 24: Hoare triple {17627#(<= ~counter~0 1)} assume !!(0 != ~r~0); {17627#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:55,726 INFO L290 TraceCheckUtils]: 25: Hoare triple {17627#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17627#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:55,727 INFO L290 TraceCheckUtils]: 26: Hoare triple {17627#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17655#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:55,727 INFO L290 TraceCheckUtils]: 27: Hoare triple {17655#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {17655#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:55,728 INFO L272 TraceCheckUtils]: 28: Hoare triple {17655#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17655#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:55,728 INFO L290 TraceCheckUtils]: 29: Hoare triple {17655#(<= ~counter~0 2)} ~cond := #in~cond; {17655#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:55,728 INFO L290 TraceCheckUtils]: 30: Hoare triple {17655#(<= ~counter~0 2)} assume !(0 == ~cond); {17655#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:55,729 INFO L290 TraceCheckUtils]: 31: Hoare triple {17655#(<= ~counter~0 2)} assume true; {17655#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:55,729 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {17655#(<= ~counter~0 2)} {17655#(<= ~counter~0 2)} #63#return; {17655#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:55,729 INFO L290 TraceCheckUtils]: 33: Hoare triple {17655#(<= ~counter~0 2)} assume !!(0 != ~r~0); {17655#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:55,730 INFO L290 TraceCheckUtils]: 34: Hoare triple {17655#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17655#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:55,730 INFO L290 TraceCheckUtils]: 35: Hoare triple {17655#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17683#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:55,731 INFO L290 TraceCheckUtils]: 36: Hoare triple {17683#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {17683#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:55,731 INFO L272 TraceCheckUtils]: 37: Hoare triple {17683#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17683#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:55,731 INFO L290 TraceCheckUtils]: 38: Hoare triple {17683#(<= ~counter~0 3)} ~cond := #in~cond; {17683#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:55,732 INFO L290 TraceCheckUtils]: 39: Hoare triple {17683#(<= ~counter~0 3)} assume !(0 == ~cond); {17683#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:55,732 INFO L290 TraceCheckUtils]: 40: Hoare triple {17683#(<= ~counter~0 3)} assume true; {17683#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:55,733 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {17683#(<= ~counter~0 3)} {17683#(<= ~counter~0 3)} #63#return; {17683#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:55,733 INFO L290 TraceCheckUtils]: 42: Hoare triple {17683#(<= ~counter~0 3)} assume !!(0 != ~r~0); {17683#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:55,733 INFO L290 TraceCheckUtils]: 43: Hoare triple {17683#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17683#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:55,734 INFO L290 TraceCheckUtils]: 44: Hoare triple {17683#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:55,734 INFO L290 TraceCheckUtils]: 45: Hoare triple {17711#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:55,735 INFO L272 TraceCheckUtils]: 46: Hoare triple {17711#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:55,735 INFO L290 TraceCheckUtils]: 47: Hoare triple {17711#(<= ~counter~0 4)} ~cond := #in~cond; {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:55,735 INFO L290 TraceCheckUtils]: 48: Hoare triple {17711#(<= ~counter~0 4)} assume !(0 == ~cond); {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:55,736 INFO L290 TraceCheckUtils]: 49: Hoare triple {17711#(<= ~counter~0 4)} assume true; {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:55,736 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {17711#(<= ~counter~0 4)} {17711#(<= ~counter~0 4)} #63#return; {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:55,736 INFO L290 TraceCheckUtils]: 51: Hoare triple {17711#(<= ~counter~0 4)} assume !!(0 != ~r~0); {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:55,737 INFO L290 TraceCheckUtils]: 52: Hoare triple {17711#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:55,737 INFO L290 TraceCheckUtils]: 53: Hoare triple {17711#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17739#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:55,738 INFO L290 TraceCheckUtils]: 54: Hoare triple {17739#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {17739#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:55,738 INFO L272 TraceCheckUtils]: 55: Hoare triple {17739#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17739#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:55,739 INFO L290 TraceCheckUtils]: 56: Hoare triple {17739#(<= ~counter~0 5)} ~cond := #in~cond; {17739#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:55,739 INFO L290 TraceCheckUtils]: 57: Hoare triple {17739#(<= ~counter~0 5)} assume !(0 == ~cond); {17739#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:55,739 INFO L290 TraceCheckUtils]: 58: Hoare triple {17739#(<= ~counter~0 5)} assume true; {17739#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:55,740 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {17739#(<= ~counter~0 5)} {17739#(<= ~counter~0 5)} #63#return; {17739#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:55,740 INFO L290 TraceCheckUtils]: 60: Hoare triple {17739#(<= ~counter~0 5)} assume !!(0 != ~r~0); {17739#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:55,740 INFO L290 TraceCheckUtils]: 61: Hoare triple {17739#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17739#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:55,741 INFO L290 TraceCheckUtils]: 62: Hoare triple {17739#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17767#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:55,741 INFO L290 TraceCheckUtils]: 63: Hoare triple {17767#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {17767#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:55,742 INFO L272 TraceCheckUtils]: 64: Hoare triple {17767#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17767#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:55,742 INFO L290 TraceCheckUtils]: 65: Hoare triple {17767#(<= ~counter~0 6)} ~cond := #in~cond; {17767#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:55,742 INFO L290 TraceCheckUtils]: 66: Hoare triple {17767#(<= ~counter~0 6)} assume !(0 == ~cond); {17767#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:55,743 INFO L290 TraceCheckUtils]: 67: Hoare triple {17767#(<= ~counter~0 6)} assume true; {17767#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:55,743 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {17767#(<= ~counter~0 6)} {17767#(<= ~counter~0 6)} #63#return; {17767#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:55,744 INFO L290 TraceCheckUtils]: 69: Hoare triple {17767#(<= ~counter~0 6)} assume !!(0 != ~r~0); {17767#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:55,744 INFO L290 TraceCheckUtils]: 70: Hoare triple {17767#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17767#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:55,745 INFO L290 TraceCheckUtils]: 71: Hoare triple {17767#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17795#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:55,745 INFO L290 TraceCheckUtils]: 72: Hoare triple {17795#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {17795#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:55,745 INFO L272 TraceCheckUtils]: 73: Hoare triple {17795#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17795#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:55,746 INFO L290 TraceCheckUtils]: 74: Hoare triple {17795#(<= ~counter~0 7)} ~cond := #in~cond; {17795#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:55,746 INFO L290 TraceCheckUtils]: 75: Hoare triple {17795#(<= ~counter~0 7)} assume !(0 == ~cond); {17795#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:55,746 INFO L290 TraceCheckUtils]: 76: Hoare triple {17795#(<= ~counter~0 7)} assume true; {17795#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:55,747 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {17795#(<= ~counter~0 7)} {17795#(<= ~counter~0 7)} #63#return; {17795#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:55,747 INFO L290 TraceCheckUtils]: 78: Hoare triple {17795#(<= ~counter~0 7)} assume !!(0 != ~r~0); {17795#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:55,748 INFO L290 TraceCheckUtils]: 79: Hoare triple {17795#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17795#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:55,748 INFO L290 TraceCheckUtils]: 80: Hoare triple {17795#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17823#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:55,748 INFO L290 TraceCheckUtils]: 81: Hoare triple {17823#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {17823#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:55,749 INFO L272 TraceCheckUtils]: 82: Hoare triple {17823#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17823#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:55,749 INFO L290 TraceCheckUtils]: 83: Hoare triple {17823#(<= ~counter~0 8)} ~cond := #in~cond; {17823#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:55,750 INFO L290 TraceCheckUtils]: 84: Hoare triple {17823#(<= ~counter~0 8)} assume !(0 == ~cond); {17823#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:55,751 INFO L290 TraceCheckUtils]: 85: Hoare triple {17823#(<= ~counter~0 8)} assume true; {17823#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:55,752 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {17823#(<= ~counter~0 8)} {17823#(<= ~counter~0 8)} #63#return; {17823#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:55,752 INFO L290 TraceCheckUtils]: 87: Hoare triple {17823#(<= ~counter~0 8)} assume !!(0 != ~r~0); {17823#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:55,752 INFO L290 TraceCheckUtils]: 88: Hoare triple {17823#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17823#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:55,754 INFO L290 TraceCheckUtils]: 89: Hoare triple {17823#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17851#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:55,754 INFO L290 TraceCheckUtils]: 90: Hoare triple {17851#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {17851#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:55,755 INFO L272 TraceCheckUtils]: 91: Hoare triple {17851#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17851#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:55,755 INFO L290 TraceCheckUtils]: 92: Hoare triple {17851#(<= ~counter~0 9)} ~cond := #in~cond; {17851#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:55,755 INFO L290 TraceCheckUtils]: 93: Hoare triple {17851#(<= ~counter~0 9)} assume !(0 == ~cond); {17851#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:55,756 INFO L290 TraceCheckUtils]: 94: Hoare triple {17851#(<= ~counter~0 9)} assume true; {17851#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:55,756 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {17851#(<= ~counter~0 9)} {17851#(<= ~counter~0 9)} #63#return; {17851#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:55,756 INFO L290 TraceCheckUtils]: 96: Hoare triple {17851#(<= ~counter~0 9)} assume !!(0 != ~r~0); {17851#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:55,757 INFO L290 TraceCheckUtils]: 97: Hoare triple {17851#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17851#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:55,757 INFO L290 TraceCheckUtils]: 98: Hoare triple {17851#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17879#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:55,758 INFO L290 TraceCheckUtils]: 99: Hoare triple {17879#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {17879#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:55,758 INFO L272 TraceCheckUtils]: 100: Hoare triple {17879#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17879#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:55,758 INFO L290 TraceCheckUtils]: 101: Hoare triple {17879#(<= ~counter~0 10)} ~cond := #in~cond; {17879#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:55,759 INFO L290 TraceCheckUtils]: 102: Hoare triple {17879#(<= ~counter~0 10)} assume !(0 == ~cond); {17879#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:55,759 INFO L290 TraceCheckUtils]: 103: Hoare triple {17879#(<= ~counter~0 10)} assume true; {17879#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:55,760 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {17879#(<= ~counter~0 10)} {17879#(<= ~counter~0 10)} #63#return; {17879#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:55,760 INFO L290 TraceCheckUtils]: 105: Hoare triple {17879#(<= ~counter~0 10)} assume !!(0 != ~r~0); {17879#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:55,760 INFO L290 TraceCheckUtils]: 106: Hoare triple {17879#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17879#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:55,761 INFO L290 TraceCheckUtils]: 107: Hoare triple {17879#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17907#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:55,761 INFO L290 TraceCheckUtils]: 108: Hoare triple {17907#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {17907#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:55,762 INFO L272 TraceCheckUtils]: 109: Hoare triple {17907#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17907#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:55,762 INFO L290 TraceCheckUtils]: 110: Hoare triple {17907#(<= ~counter~0 11)} ~cond := #in~cond; {17907#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:55,762 INFO L290 TraceCheckUtils]: 111: Hoare triple {17907#(<= ~counter~0 11)} assume !(0 == ~cond); {17907#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:55,763 INFO L290 TraceCheckUtils]: 112: Hoare triple {17907#(<= ~counter~0 11)} assume true; {17907#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:55,763 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {17907#(<= ~counter~0 11)} {17907#(<= ~counter~0 11)} #63#return; {17907#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:55,764 INFO L290 TraceCheckUtils]: 114: Hoare triple {17907#(<= ~counter~0 11)} assume !!(0 != ~r~0); {17907#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:55,764 INFO L290 TraceCheckUtils]: 115: Hoare triple {17907#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17907#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:55,764 INFO L290 TraceCheckUtils]: 116: Hoare triple {17907#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17935#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:55,765 INFO L290 TraceCheckUtils]: 117: Hoare triple {17935#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {17935#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:55,765 INFO L272 TraceCheckUtils]: 118: Hoare triple {17935#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17935#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:55,766 INFO L290 TraceCheckUtils]: 119: Hoare triple {17935#(<= ~counter~0 12)} ~cond := #in~cond; {17935#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:55,766 INFO L290 TraceCheckUtils]: 120: Hoare triple {17935#(<= ~counter~0 12)} assume !(0 == ~cond); {17935#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:55,766 INFO L290 TraceCheckUtils]: 121: Hoare triple {17935#(<= ~counter~0 12)} assume true; {17935#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:55,767 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {17935#(<= ~counter~0 12)} {17935#(<= ~counter~0 12)} #63#return; {17935#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:55,767 INFO L290 TraceCheckUtils]: 123: Hoare triple {17935#(<= ~counter~0 12)} assume !!(0 != ~r~0); {17935#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:55,768 INFO L290 TraceCheckUtils]: 124: Hoare triple {17935#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17935#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:55,768 INFO L290 TraceCheckUtils]: 125: Hoare triple {17935#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17963#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:55,768 INFO L290 TraceCheckUtils]: 126: Hoare triple {17963#(<= ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {17963#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:55,769 INFO L272 TraceCheckUtils]: 127: Hoare triple {17963#(<= ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17963#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:55,769 INFO L290 TraceCheckUtils]: 128: Hoare triple {17963#(<= ~counter~0 13)} ~cond := #in~cond; {17963#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:55,770 INFO L290 TraceCheckUtils]: 129: Hoare triple {17963#(<= ~counter~0 13)} assume !(0 == ~cond); {17963#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:55,770 INFO L290 TraceCheckUtils]: 130: Hoare triple {17963#(<= ~counter~0 13)} assume true; {17963#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:55,770 INFO L284 TraceCheckUtils]: 131: Hoare quadruple {17963#(<= ~counter~0 13)} {17963#(<= ~counter~0 13)} #63#return; {17963#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:55,771 INFO L290 TraceCheckUtils]: 132: Hoare triple {17963#(<= ~counter~0 13)} assume !!(0 != ~r~0); {17963#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:55,771 INFO L290 TraceCheckUtils]: 133: Hoare triple {17963#(<= ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17963#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:55,772 INFO L290 TraceCheckUtils]: 134: Hoare triple {17963#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17991#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:55,772 INFO L290 TraceCheckUtils]: 135: Hoare triple {17991#(<= ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {17991#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:55,773 INFO L272 TraceCheckUtils]: 136: Hoare triple {17991#(<= ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17991#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:55,773 INFO L290 TraceCheckUtils]: 137: Hoare triple {17991#(<= ~counter~0 14)} ~cond := #in~cond; {17991#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:55,773 INFO L290 TraceCheckUtils]: 138: Hoare triple {17991#(<= ~counter~0 14)} assume !(0 == ~cond); {17991#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:55,774 INFO L290 TraceCheckUtils]: 139: Hoare triple {17991#(<= ~counter~0 14)} assume true; {17991#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:55,774 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {17991#(<= ~counter~0 14)} {17991#(<= ~counter~0 14)} #63#return; {17991#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:55,774 INFO L290 TraceCheckUtils]: 141: Hoare triple {17991#(<= ~counter~0 14)} assume !!(0 != ~r~0); {17991#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:55,775 INFO L290 TraceCheckUtils]: 142: Hoare triple {17991#(<= ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17991#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:55,775 INFO L290 TraceCheckUtils]: 143: Hoare triple {17991#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18019#(<= ~counter~0 15)} is VALID [2022-04-08 06:08:55,776 INFO L290 TraceCheckUtils]: 144: Hoare triple {18019#(<= ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {18019#(<= ~counter~0 15)} is VALID [2022-04-08 06:08:55,776 INFO L272 TraceCheckUtils]: 145: Hoare triple {18019#(<= ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {18019#(<= ~counter~0 15)} is VALID [2022-04-08 06:08:55,776 INFO L290 TraceCheckUtils]: 146: Hoare triple {18019#(<= ~counter~0 15)} ~cond := #in~cond; {18019#(<= ~counter~0 15)} is VALID [2022-04-08 06:08:55,777 INFO L290 TraceCheckUtils]: 147: Hoare triple {18019#(<= ~counter~0 15)} assume !(0 == ~cond); {18019#(<= ~counter~0 15)} is VALID [2022-04-08 06:08:55,777 INFO L290 TraceCheckUtils]: 148: Hoare triple {18019#(<= ~counter~0 15)} assume true; {18019#(<= ~counter~0 15)} is VALID [2022-04-08 06:08:55,778 INFO L284 TraceCheckUtils]: 149: Hoare quadruple {18019#(<= ~counter~0 15)} {18019#(<= ~counter~0 15)} #63#return; {18019#(<= ~counter~0 15)} is VALID [2022-04-08 06:08:55,778 INFO L290 TraceCheckUtils]: 150: Hoare triple {18019#(<= ~counter~0 15)} assume !!(0 != ~r~0); {18019#(<= ~counter~0 15)} is VALID [2022-04-08 06:08:55,778 INFO L290 TraceCheckUtils]: 151: Hoare triple {18019#(<= ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {18019#(<= ~counter~0 15)} is VALID [2022-04-08 06:08:55,779 INFO L290 TraceCheckUtils]: 152: Hoare triple {18019#(<= ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18047#(<= |main_#t~post6| 15)} is VALID [2022-04-08 06:08:55,779 INFO L290 TraceCheckUtils]: 153: Hoare triple {18047#(<= |main_#t~post6| 15)} assume !(#t~post6 < 20);havoc #t~post6; {17571#false} is VALID [2022-04-08 06:08:55,779 INFO L272 TraceCheckUtils]: 154: Hoare triple {17571#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17571#false} is VALID [2022-04-08 06:08:55,779 INFO L290 TraceCheckUtils]: 155: Hoare triple {17571#false} ~cond := #in~cond; {17571#false} is VALID [2022-04-08 06:08:55,780 INFO L290 TraceCheckUtils]: 156: Hoare triple {17571#false} assume 0 == ~cond; {17571#false} is VALID [2022-04-08 06:08:55,780 INFO L290 TraceCheckUtils]: 157: Hoare triple {17571#false} assume !false; {17571#false} is VALID [2022-04-08 06:08:55,780 INFO L134 CoverageAnalysis]: Checked inductivity of 1009 backedges. 30 proven. 975 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:08:55,781 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:08:56,845 INFO L290 TraceCheckUtils]: 157: Hoare triple {17571#false} assume !false; {17571#false} is VALID [2022-04-08 06:08:56,845 INFO L290 TraceCheckUtils]: 156: Hoare triple {17571#false} assume 0 == ~cond; {17571#false} is VALID [2022-04-08 06:08:56,845 INFO L290 TraceCheckUtils]: 155: Hoare triple {17571#false} ~cond := #in~cond; {17571#false} is VALID [2022-04-08 06:08:56,845 INFO L272 TraceCheckUtils]: 154: Hoare triple {17571#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17571#false} is VALID [2022-04-08 06:08:56,846 INFO L290 TraceCheckUtils]: 153: Hoare triple {18075#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {17571#false} is VALID [2022-04-08 06:08:56,846 INFO L290 TraceCheckUtils]: 152: Hoare triple {18079#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18075#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:08:56,846 INFO L290 TraceCheckUtils]: 151: Hoare triple {18079#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {18079#(< ~counter~0 20)} is VALID [2022-04-08 06:08:56,847 INFO L290 TraceCheckUtils]: 150: Hoare triple {18079#(< ~counter~0 20)} assume !!(0 != ~r~0); {18079#(< ~counter~0 20)} is VALID [2022-04-08 06:08:56,847 INFO L284 TraceCheckUtils]: 149: Hoare quadruple {17570#true} {18079#(< ~counter~0 20)} #63#return; {18079#(< ~counter~0 20)} is VALID [2022-04-08 06:08:56,847 INFO L290 TraceCheckUtils]: 148: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,847 INFO L290 TraceCheckUtils]: 147: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,848 INFO L290 TraceCheckUtils]: 146: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,848 INFO L272 TraceCheckUtils]: 145: Hoare triple {18079#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,848 INFO L290 TraceCheckUtils]: 144: Hoare triple {18079#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {18079#(< ~counter~0 20)} is VALID [2022-04-08 06:08:56,849 INFO L290 TraceCheckUtils]: 143: Hoare triple {18107#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18079#(< ~counter~0 20)} is VALID [2022-04-08 06:08:56,849 INFO L290 TraceCheckUtils]: 142: Hoare triple {18107#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {18107#(< ~counter~0 19)} is VALID [2022-04-08 06:08:56,849 INFO L290 TraceCheckUtils]: 141: Hoare triple {18107#(< ~counter~0 19)} assume !!(0 != ~r~0); {18107#(< ~counter~0 19)} is VALID [2022-04-08 06:08:56,850 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {17570#true} {18107#(< ~counter~0 19)} #63#return; {18107#(< ~counter~0 19)} is VALID [2022-04-08 06:08:56,850 INFO L290 TraceCheckUtils]: 139: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,850 INFO L290 TraceCheckUtils]: 138: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,850 INFO L290 TraceCheckUtils]: 137: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,850 INFO L272 TraceCheckUtils]: 136: Hoare triple {18107#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,850 INFO L290 TraceCheckUtils]: 135: Hoare triple {18107#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {18107#(< ~counter~0 19)} is VALID [2022-04-08 06:08:56,851 INFO L290 TraceCheckUtils]: 134: Hoare triple {18135#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18107#(< ~counter~0 19)} is VALID [2022-04-08 06:08:56,851 INFO L290 TraceCheckUtils]: 133: Hoare triple {18135#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {18135#(< ~counter~0 18)} is VALID [2022-04-08 06:08:56,852 INFO L290 TraceCheckUtils]: 132: Hoare triple {18135#(< ~counter~0 18)} assume !!(0 != ~r~0); {18135#(< ~counter~0 18)} is VALID [2022-04-08 06:08:56,852 INFO L284 TraceCheckUtils]: 131: Hoare quadruple {17570#true} {18135#(< ~counter~0 18)} #63#return; {18135#(< ~counter~0 18)} is VALID [2022-04-08 06:08:56,852 INFO L290 TraceCheckUtils]: 130: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,852 INFO L290 TraceCheckUtils]: 129: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,852 INFO L290 TraceCheckUtils]: 128: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,853 INFO L272 TraceCheckUtils]: 127: Hoare triple {18135#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,853 INFO L290 TraceCheckUtils]: 126: Hoare triple {18135#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {18135#(< ~counter~0 18)} is VALID [2022-04-08 06:08:56,853 INFO L290 TraceCheckUtils]: 125: Hoare triple {18163#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18135#(< ~counter~0 18)} is VALID [2022-04-08 06:08:56,854 INFO L290 TraceCheckUtils]: 124: Hoare triple {18163#(< ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {18163#(< ~counter~0 17)} is VALID [2022-04-08 06:08:56,854 INFO L290 TraceCheckUtils]: 123: Hoare triple {18163#(< ~counter~0 17)} assume !!(0 != ~r~0); {18163#(< ~counter~0 17)} is VALID [2022-04-08 06:08:56,855 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {17570#true} {18163#(< ~counter~0 17)} #63#return; {18163#(< ~counter~0 17)} is VALID [2022-04-08 06:08:56,855 INFO L290 TraceCheckUtils]: 121: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,855 INFO L290 TraceCheckUtils]: 120: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,855 INFO L290 TraceCheckUtils]: 119: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,855 INFO L272 TraceCheckUtils]: 118: Hoare triple {18163#(< ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,855 INFO L290 TraceCheckUtils]: 117: Hoare triple {18163#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {18163#(< ~counter~0 17)} is VALID [2022-04-08 06:08:56,856 INFO L290 TraceCheckUtils]: 116: Hoare triple {18019#(<= ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18163#(< ~counter~0 17)} is VALID [2022-04-08 06:08:56,856 INFO L290 TraceCheckUtils]: 115: Hoare triple {18019#(<= ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {18019#(<= ~counter~0 15)} is VALID [2022-04-08 06:08:56,856 INFO L290 TraceCheckUtils]: 114: Hoare triple {18019#(<= ~counter~0 15)} assume !!(0 != ~r~0); {18019#(<= ~counter~0 15)} is VALID [2022-04-08 06:08:56,857 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {17570#true} {18019#(<= ~counter~0 15)} #63#return; {18019#(<= ~counter~0 15)} is VALID [2022-04-08 06:08:56,857 INFO L290 TraceCheckUtils]: 112: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,857 INFO L290 TraceCheckUtils]: 111: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,857 INFO L290 TraceCheckUtils]: 110: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,857 INFO L272 TraceCheckUtils]: 109: Hoare triple {18019#(<= ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,858 INFO L290 TraceCheckUtils]: 108: Hoare triple {18019#(<= ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {18019#(<= ~counter~0 15)} is VALID [2022-04-08 06:08:56,858 INFO L290 TraceCheckUtils]: 107: Hoare triple {17991#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18019#(<= ~counter~0 15)} is VALID [2022-04-08 06:08:56,858 INFO L290 TraceCheckUtils]: 106: Hoare triple {17991#(<= ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17991#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:56,859 INFO L290 TraceCheckUtils]: 105: Hoare triple {17991#(<= ~counter~0 14)} assume !!(0 != ~r~0); {17991#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:56,859 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {17570#true} {17991#(<= ~counter~0 14)} #63#return; {17991#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:56,859 INFO L290 TraceCheckUtils]: 103: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,860 INFO L290 TraceCheckUtils]: 102: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,860 INFO L290 TraceCheckUtils]: 101: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,860 INFO L272 TraceCheckUtils]: 100: Hoare triple {17991#(<= ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,860 INFO L290 TraceCheckUtils]: 99: Hoare triple {17991#(<= ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {17991#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:56,861 INFO L290 TraceCheckUtils]: 98: Hoare triple {17963#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17991#(<= ~counter~0 14)} is VALID [2022-04-08 06:08:56,861 INFO L290 TraceCheckUtils]: 97: Hoare triple {17963#(<= ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17963#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:56,861 INFO L290 TraceCheckUtils]: 96: Hoare triple {17963#(<= ~counter~0 13)} assume !!(0 != ~r~0); {17963#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:56,862 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {17570#true} {17963#(<= ~counter~0 13)} #63#return; {17963#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:56,862 INFO L290 TraceCheckUtils]: 94: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,862 INFO L290 TraceCheckUtils]: 93: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,862 INFO L290 TraceCheckUtils]: 92: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,862 INFO L272 TraceCheckUtils]: 91: Hoare triple {17963#(<= ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,862 INFO L290 TraceCheckUtils]: 90: Hoare triple {17963#(<= ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {17963#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:56,863 INFO L290 TraceCheckUtils]: 89: Hoare triple {17935#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17963#(<= ~counter~0 13)} is VALID [2022-04-08 06:08:56,863 INFO L290 TraceCheckUtils]: 88: Hoare triple {17935#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17935#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:56,864 INFO L290 TraceCheckUtils]: 87: Hoare triple {17935#(<= ~counter~0 12)} assume !!(0 != ~r~0); {17935#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:56,864 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {17570#true} {17935#(<= ~counter~0 12)} #63#return; {17935#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:56,864 INFO L290 TraceCheckUtils]: 85: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,864 INFO L290 TraceCheckUtils]: 84: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,864 INFO L290 TraceCheckUtils]: 83: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,864 INFO L272 TraceCheckUtils]: 82: Hoare triple {17935#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,865 INFO L290 TraceCheckUtils]: 81: Hoare triple {17935#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {17935#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:56,865 INFO L290 TraceCheckUtils]: 80: Hoare triple {17907#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17935#(<= ~counter~0 12)} is VALID [2022-04-08 06:08:56,866 INFO L290 TraceCheckUtils]: 79: Hoare triple {17907#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17907#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:56,866 INFO L290 TraceCheckUtils]: 78: Hoare triple {17907#(<= ~counter~0 11)} assume !!(0 != ~r~0); {17907#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:56,867 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {17570#true} {17907#(<= ~counter~0 11)} #63#return; {17907#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:56,867 INFO L290 TraceCheckUtils]: 76: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,867 INFO L290 TraceCheckUtils]: 75: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,867 INFO L290 TraceCheckUtils]: 74: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,867 INFO L272 TraceCheckUtils]: 73: Hoare triple {17907#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,867 INFO L290 TraceCheckUtils]: 72: Hoare triple {17907#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {17907#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:56,868 INFO L290 TraceCheckUtils]: 71: Hoare triple {17879#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17907#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:56,868 INFO L290 TraceCheckUtils]: 70: Hoare triple {17879#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17879#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:56,868 INFO L290 TraceCheckUtils]: 69: Hoare triple {17879#(<= ~counter~0 10)} assume !!(0 != ~r~0); {17879#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:56,869 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {17570#true} {17879#(<= ~counter~0 10)} #63#return; {17879#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:56,869 INFO L290 TraceCheckUtils]: 67: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,869 INFO L290 TraceCheckUtils]: 66: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,869 INFO L290 TraceCheckUtils]: 65: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,869 INFO L272 TraceCheckUtils]: 64: Hoare triple {17879#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,869 INFO L290 TraceCheckUtils]: 63: Hoare triple {17879#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {17879#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:56,870 INFO L290 TraceCheckUtils]: 62: Hoare triple {17851#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17879#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:56,870 INFO L290 TraceCheckUtils]: 61: Hoare triple {17851#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17851#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:56,871 INFO L290 TraceCheckUtils]: 60: Hoare triple {17851#(<= ~counter~0 9)} assume !!(0 != ~r~0); {17851#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:56,871 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {17570#true} {17851#(<= ~counter~0 9)} #63#return; {17851#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:56,871 INFO L290 TraceCheckUtils]: 58: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,871 INFO L290 TraceCheckUtils]: 57: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,871 INFO L290 TraceCheckUtils]: 56: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,872 INFO L272 TraceCheckUtils]: 55: Hoare triple {17851#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,872 INFO L290 TraceCheckUtils]: 54: Hoare triple {17851#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {17851#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:56,872 INFO L290 TraceCheckUtils]: 53: Hoare triple {17823#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17851#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:56,873 INFO L290 TraceCheckUtils]: 52: Hoare triple {17823#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17823#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:56,873 INFO L290 TraceCheckUtils]: 51: Hoare triple {17823#(<= ~counter~0 8)} assume !!(0 != ~r~0); {17823#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:56,874 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {17570#true} {17823#(<= ~counter~0 8)} #63#return; {17823#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:56,874 INFO L290 TraceCheckUtils]: 49: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,874 INFO L290 TraceCheckUtils]: 48: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,874 INFO L290 TraceCheckUtils]: 47: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,874 INFO L272 TraceCheckUtils]: 46: Hoare triple {17823#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,874 INFO L290 TraceCheckUtils]: 45: Hoare triple {17823#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {17823#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:56,875 INFO L290 TraceCheckUtils]: 44: Hoare triple {17795#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17823#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:56,875 INFO L290 TraceCheckUtils]: 43: Hoare triple {17795#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17795#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:56,875 INFO L290 TraceCheckUtils]: 42: Hoare triple {17795#(<= ~counter~0 7)} assume !!(0 != ~r~0); {17795#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:56,876 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {17570#true} {17795#(<= ~counter~0 7)} #63#return; {17795#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:56,876 INFO L290 TraceCheckUtils]: 40: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,876 INFO L290 TraceCheckUtils]: 39: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,876 INFO L290 TraceCheckUtils]: 38: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,876 INFO L272 TraceCheckUtils]: 37: Hoare triple {17795#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,877 INFO L290 TraceCheckUtils]: 36: Hoare triple {17795#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {17795#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:56,877 INFO L290 TraceCheckUtils]: 35: Hoare triple {17767#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17795#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:56,877 INFO L290 TraceCheckUtils]: 34: Hoare triple {17767#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17767#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:56,878 INFO L290 TraceCheckUtils]: 33: Hoare triple {17767#(<= ~counter~0 6)} assume !!(0 != ~r~0); {17767#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:56,878 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {17570#true} {17767#(<= ~counter~0 6)} #63#return; {17767#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:56,878 INFO L290 TraceCheckUtils]: 31: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,878 INFO L290 TraceCheckUtils]: 30: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,879 INFO L290 TraceCheckUtils]: 29: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,879 INFO L272 TraceCheckUtils]: 28: Hoare triple {17767#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,879 INFO L290 TraceCheckUtils]: 27: Hoare triple {17767#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {17767#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:56,879 INFO L290 TraceCheckUtils]: 26: Hoare triple {17739#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17767#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:56,880 INFO L290 TraceCheckUtils]: 25: Hoare triple {17739#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {17739#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:56,880 INFO L290 TraceCheckUtils]: 24: Hoare triple {17739#(<= ~counter~0 5)} assume !!(0 != ~r~0); {17739#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:56,881 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {17570#true} {17739#(<= ~counter~0 5)} #63#return; {17739#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:56,881 INFO L290 TraceCheckUtils]: 22: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,881 INFO L290 TraceCheckUtils]: 21: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,881 INFO L290 TraceCheckUtils]: 20: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,881 INFO L272 TraceCheckUtils]: 19: Hoare triple {17739#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,881 INFO L290 TraceCheckUtils]: 18: Hoare triple {17739#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {17739#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:56,882 INFO L290 TraceCheckUtils]: 17: Hoare triple {17711#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17739#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:56,882 INFO L290 TraceCheckUtils]: 16: Hoare triple {17711#(<= ~counter~0 4)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:56,883 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17570#true} {17711#(<= ~counter~0 4)} #61#return; {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:56,883 INFO L290 TraceCheckUtils]: 14: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,883 INFO L290 TraceCheckUtils]: 13: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,883 INFO L290 TraceCheckUtils]: 12: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,883 INFO L272 TraceCheckUtils]: 11: Hoare triple {17711#(<= ~counter~0 4)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,883 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17570#true} {17711#(<= ~counter~0 4)} #59#return; {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:56,884 INFO L290 TraceCheckUtils]: 9: Hoare triple {17570#true} assume true; {17570#true} is VALID [2022-04-08 06:08:56,884 INFO L290 TraceCheckUtils]: 8: Hoare triple {17570#true} assume !(0 == ~cond); {17570#true} is VALID [2022-04-08 06:08:56,884 INFO L290 TraceCheckUtils]: 7: Hoare triple {17570#true} ~cond := #in~cond; {17570#true} is VALID [2022-04-08 06:08:56,884 INFO L272 TraceCheckUtils]: 6: Hoare triple {17711#(<= ~counter~0 4)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {17570#true} is VALID [2022-04-08 06:08:56,884 INFO L290 TraceCheckUtils]: 5: Hoare triple {17711#(<= ~counter~0 4)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:56,884 INFO L272 TraceCheckUtils]: 4: Hoare triple {17711#(<= ~counter~0 4)} call #t~ret7 := main(); {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:56,885 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17711#(<= ~counter~0 4)} {17570#true} #67#return; {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:56,885 INFO L290 TraceCheckUtils]: 2: Hoare triple {17711#(<= ~counter~0 4)} assume true; {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:56,886 INFO L290 TraceCheckUtils]: 1: Hoare triple {17570#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {17711#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:56,886 INFO L272 TraceCheckUtils]: 0: Hoare triple {17570#true} call ULTIMATE.init(); {17570#true} is VALID [2022-04-08 06:08:56,886 INFO L134 CoverageAnalysis]: Checked inductivity of 1009 backedges. 30 proven. 555 refuted. 0 times theorem prover too weak. 424 trivial. 0 not checked. [2022-04-08 06:08:56,887 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:08:56,887 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [523450327] [2022-04-08 06:08:56,887 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:08:56,887 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [356283684] [2022-04-08 06:08:56,887 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [356283684] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:08:56,887 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:08:56,887 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 19] total 24 [2022-04-08 06:08:56,888 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:08:56,888 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1617677597] [2022-04-08 06:08:56,888 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1617677597] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:08:56,888 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:08:56,888 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [19] imperfect sequences [] total 19 [2022-04-08 06:08:56,888 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1200778088] [2022-04-08 06:08:56,888 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:08:56,889 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 6.157894736842105) internal successors, (117), 18 states have internal predecessors, (117), 18 states have call successors, (20), 18 states have call predecessors, (20), 16 states have return successors, (18), 16 states have call predecessors, (18), 17 states have call successors, (18) Word has length 158 [2022-04-08 06:08:56,889 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:08:56,889 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 6.157894736842105) internal successors, (117), 18 states have internal predecessors, (117), 18 states have call successors, (20), 18 states have call predecessors, (20), 16 states have return successors, (18), 16 states have call predecessors, (18), 17 states have call successors, (18) [2022-04-08 06:08:57,017 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-08 06:08:57,017 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-08 06:08:57,017 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:57,018 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-08 06:08:57,018 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:08:57,018 INFO L87 Difference]: Start difference. First operand 155 states and 171 transitions. Second operand has 19 states, 19 states have (on average 6.157894736842105) internal successors, (117), 18 states have internal predecessors, (117), 18 states have call successors, (20), 18 states have call predecessors, (20), 16 states have return successors, (18), 16 states have call predecessors, (18), 17 states have call successors, (18) [2022-04-08 06:08:57,828 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:57,828 INFO L93 Difference]: Finished difference Result 169 states and 186 transitions. [2022-04-08 06:08:57,828 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 34 states. [2022-04-08 06:08:57,828 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 6.157894736842105) internal successors, (117), 18 states have internal predecessors, (117), 18 states have call successors, (20), 18 states have call predecessors, (20), 16 states have return successors, (18), 16 states have call predecessors, (18), 17 states have call successors, (18) Word has length 158 [2022-04-08 06:08:57,828 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:08:57,828 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 6.157894736842105) internal successors, (117), 18 states have internal predecessors, (117), 18 states have call successors, (20), 18 states have call predecessors, (20), 16 states have return successors, (18), 16 states have call predecessors, (18), 17 states have call successors, (18) [2022-04-08 06:08:57,832 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 185 transitions. [2022-04-08 06:08:57,832 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 6.157894736842105) internal successors, (117), 18 states have internal predecessors, (117), 18 states have call successors, (20), 18 states have call predecessors, (20), 16 states have return successors, (18), 16 states have call predecessors, (18), 17 states have call successors, (18) [2022-04-08 06:08:57,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 185 transitions. [2022-04-08 06:08:57,835 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 185 transitions. [2022-04-08 06:08:58,039 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 185 edges. 185 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:58,042 INFO L225 Difference]: With dead ends: 169 [2022-04-08 06:08:58,042 INFO L226 Difference]: Without dead ends: 164 [2022-04-08 06:08:58,043 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 330 GetRequests, 292 SyntacticMatches, 1 SemanticMatches, 37 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 143 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=581, Invalid=901, Unknown=0, NotChecked=0, Total=1482 [2022-04-08 06:08:58,044 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 88 mSDsluCounter, 149 mSDsCounter, 0 mSdLazyCounter, 85 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 88 SdHoareTripleChecker+Valid, 190 SdHoareTripleChecker+Invalid, 127 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 85 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:08:58,044 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [88 Valid, 190 Invalid, 127 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 85 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:08:58,044 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states. [2022-04-08 06:08:58,285 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 164. [2022-04-08 06:08:58,285 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:08:58,285 INFO L82 GeneralOperation]: Start isEquivalent. First operand 164 states. Second operand has 164 states, 124 states have (on average 1.1370967741935485) internal successors, (141), 124 states have internal predecessors, (141), 21 states have call successors, (21), 20 states have call predecessors, (21), 18 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 06:08:58,286 INFO L74 IsIncluded]: Start isIncluded. First operand 164 states. Second operand has 164 states, 124 states have (on average 1.1370967741935485) internal successors, (141), 124 states have internal predecessors, (141), 21 states have call successors, (21), 20 states have call predecessors, (21), 18 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 06:08:58,286 INFO L87 Difference]: Start difference. First operand 164 states. Second operand has 164 states, 124 states have (on average 1.1370967741935485) internal successors, (141), 124 states have internal predecessors, (141), 21 states have call successors, (21), 20 states have call predecessors, (21), 18 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 06:08:58,289 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:58,289 INFO L93 Difference]: Finished difference Result 164 states and 181 transitions. [2022-04-08 06:08:58,289 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 181 transitions. [2022-04-08 06:08:58,289 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:58,289 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:58,289 INFO L74 IsIncluded]: Start isIncluded. First operand has 164 states, 124 states have (on average 1.1370967741935485) internal successors, (141), 124 states have internal predecessors, (141), 21 states have call successors, (21), 20 states have call predecessors, (21), 18 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 164 states. [2022-04-08 06:08:58,290 INFO L87 Difference]: Start difference. First operand has 164 states, 124 states have (on average 1.1370967741935485) internal successors, (141), 124 states have internal predecessors, (141), 21 states have call successors, (21), 20 states have call predecessors, (21), 18 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 164 states. [2022-04-08 06:08:58,292 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:58,292 INFO L93 Difference]: Finished difference Result 164 states and 181 transitions. [2022-04-08 06:08:58,292 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 181 transitions. [2022-04-08 06:08:58,293 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:58,293 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:58,293 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:08:58,293 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:08:58,294 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 164 states, 124 states have (on average 1.1370967741935485) internal successors, (141), 124 states have internal predecessors, (141), 21 states have call successors, (21), 20 states have call predecessors, (21), 18 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 06:08:58,297 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 164 states to 164 states and 181 transitions. [2022-04-08 06:08:58,297 INFO L78 Accepts]: Start accepts. Automaton has 164 states and 181 transitions. Word has length 158 [2022-04-08 06:08:58,297 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:08:58,297 INFO L478 AbstractCegarLoop]: Abstraction has 164 states and 181 transitions. [2022-04-08 06:08:58,298 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 6.157894736842105) internal successors, (117), 18 states have internal predecessors, (117), 18 states have call successors, (20), 18 states have call predecessors, (20), 16 states have return successors, (18), 16 states have call predecessors, (18), 17 states have call successors, (18) [2022-04-08 06:08:58,298 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 164 states and 181 transitions. [2022-04-08 06:08:59,331 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-08 06:08:59,331 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 181 transitions. [2022-04-08 06:08:59,332 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 168 [2022-04-08 06:08:59,332 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:08:59,332 INFO L499 BasicCegarLoop]: trace histogram [17, 17, 16, 16, 16, 16, 16, 16, 16, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:08:59,344 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Ended with exit code 0 [2022-04-08 06:08:59,532 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:08:59,533 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:08:59,533 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:08:59,533 INFO L85 PathProgramCache]: Analyzing trace with hash -1479991018, now seen corresponding path program 31 times [2022-04-08 06:08:59,533 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:59,533 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1455098769] [2022-04-08 06:08:59,533 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:08:59,533 INFO L85 PathProgramCache]: Analyzing trace with hash -1479991018, now seen corresponding path program 32 times [2022-04-08 06:08:59,534 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:08:59,534 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1293827004] [2022-04-08 06:08:59,534 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:08:59,534 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:08:59,574 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:08:59,574 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1728891867] [2022-04-08 06:08:59,574 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:08:59,574 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:08:59,574 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:08:59,578 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-08 06:08:59,580 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-08 06:08:59,671 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:08:59,671 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:08:59,673 INFO L263 TraceCheckSpWp]: Trace formula consists of 413 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-08 06:08:59,724 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:08:59,727 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:09:00,760 INFO L272 TraceCheckUtils]: 0: Hoare triple {19565#true} call ULTIMATE.init(); {19565#true} is VALID [2022-04-08 06:09:00,761 INFO L290 TraceCheckUtils]: 1: Hoare triple {19565#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,761 INFO L290 TraceCheckUtils]: 2: Hoare triple {19573#(<= ~counter~0 0)} assume true; {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,761 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19573#(<= ~counter~0 0)} {19565#true} #67#return; {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,762 INFO L272 TraceCheckUtils]: 4: Hoare triple {19573#(<= ~counter~0 0)} call #t~ret7 := main(); {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,762 INFO L290 TraceCheckUtils]: 5: Hoare triple {19573#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,763 INFO L272 TraceCheckUtils]: 6: Hoare triple {19573#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,763 INFO L290 TraceCheckUtils]: 7: Hoare triple {19573#(<= ~counter~0 0)} ~cond := #in~cond; {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,763 INFO L290 TraceCheckUtils]: 8: Hoare triple {19573#(<= ~counter~0 0)} assume !(0 == ~cond); {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,764 INFO L290 TraceCheckUtils]: 9: Hoare triple {19573#(<= ~counter~0 0)} assume true; {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,764 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19573#(<= ~counter~0 0)} {19573#(<= ~counter~0 0)} #59#return; {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,764 INFO L272 TraceCheckUtils]: 11: Hoare triple {19573#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,765 INFO L290 TraceCheckUtils]: 12: Hoare triple {19573#(<= ~counter~0 0)} ~cond := #in~cond; {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,765 INFO L290 TraceCheckUtils]: 13: Hoare triple {19573#(<= ~counter~0 0)} assume !(0 == ~cond); {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,765 INFO L290 TraceCheckUtils]: 14: Hoare triple {19573#(<= ~counter~0 0)} assume true; {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,766 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {19573#(<= ~counter~0 0)} {19573#(<= ~counter~0 0)} #61#return; {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,766 INFO L290 TraceCheckUtils]: 16: Hoare triple {19573#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {19573#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:00,767 INFO L290 TraceCheckUtils]: 17: Hoare triple {19573#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19622#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:00,767 INFO L290 TraceCheckUtils]: 18: Hoare triple {19622#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {19622#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:00,768 INFO L272 TraceCheckUtils]: 19: Hoare triple {19622#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19622#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:00,768 INFO L290 TraceCheckUtils]: 20: Hoare triple {19622#(<= ~counter~0 1)} ~cond := #in~cond; {19622#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:00,769 INFO L290 TraceCheckUtils]: 21: Hoare triple {19622#(<= ~counter~0 1)} assume !(0 == ~cond); {19622#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:00,769 INFO L290 TraceCheckUtils]: 22: Hoare triple {19622#(<= ~counter~0 1)} assume true; {19622#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:00,769 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {19622#(<= ~counter~0 1)} {19622#(<= ~counter~0 1)} #63#return; {19622#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:00,770 INFO L290 TraceCheckUtils]: 24: Hoare triple {19622#(<= ~counter~0 1)} assume !!(0 != ~r~0); {19622#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:00,770 INFO L290 TraceCheckUtils]: 25: Hoare triple {19622#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19622#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:00,771 INFO L290 TraceCheckUtils]: 26: Hoare triple {19622#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19650#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:00,771 INFO L290 TraceCheckUtils]: 27: Hoare triple {19650#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {19650#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:00,772 INFO L272 TraceCheckUtils]: 28: Hoare triple {19650#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19650#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:00,772 INFO L290 TraceCheckUtils]: 29: Hoare triple {19650#(<= ~counter~0 2)} ~cond := #in~cond; {19650#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:00,772 INFO L290 TraceCheckUtils]: 30: Hoare triple {19650#(<= ~counter~0 2)} assume !(0 == ~cond); {19650#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:00,772 INFO L290 TraceCheckUtils]: 31: Hoare triple {19650#(<= ~counter~0 2)} assume true; {19650#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:00,773 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {19650#(<= ~counter~0 2)} {19650#(<= ~counter~0 2)} #63#return; {19650#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:00,773 INFO L290 TraceCheckUtils]: 33: Hoare triple {19650#(<= ~counter~0 2)} assume !!(0 != ~r~0); {19650#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:00,774 INFO L290 TraceCheckUtils]: 34: Hoare triple {19650#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19650#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:00,774 INFO L290 TraceCheckUtils]: 35: Hoare triple {19650#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:00,775 INFO L290 TraceCheckUtils]: 36: Hoare triple {19678#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:00,775 INFO L272 TraceCheckUtils]: 37: Hoare triple {19678#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:00,775 INFO L290 TraceCheckUtils]: 38: Hoare triple {19678#(<= ~counter~0 3)} ~cond := #in~cond; {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:00,776 INFO L290 TraceCheckUtils]: 39: Hoare triple {19678#(<= ~counter~0 3)} assume !(0 == ~cond); {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:00,776 INFO L290 TraceCheckUtils]: 40: Hoare triple {19678#(<= ~counter~0 3)} assume true; {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:00,777 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {19678#(<= ~counter~0 3)} {19678#(<= ~counter~0 3)} #63#return; {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:00,777 INFO L290 TraceCheckUtils]: 42: Hoare triple {19678#(<= ~counter~0 3)} assume !!(0 != ~r~0); {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:00,777 INFO L290 TraceCheckUtils]: 43: Hoare triple {19678#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:00,778 INFO L290 TraceCheckUtils]: 44: Hoare triple {19678#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19706#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:00,778 INFO L290 TraceCheckUtils]: 45: Hoare triple {19706#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {19706#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:00,779 INFO L272 TraceCheckUtils]: 46: Hoare triple {19706#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19706#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:00,779 INFO L290 TraceCheckUtils]: 47: Hoare triple {19706#(<= ~counter~0 4)} ~cond := #in~cond; {19706#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:00,779 INFO L290 TraceCheckUtils]: 48: Hoare triple {19706#(<= ~counter~0 4)} assume !(0 == ~cond); {19706#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:00,780 INFO L290 TraceCheckUtils]: 49: Hoare triple {19706#(<= ~counter~0 4)} assume true; {19706#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:00,780 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {19706#(<= ~counter~0 4)} {19706#(<= ~counter~0 4)} #63#return; {19706#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:00,781 INFO L290 TraceCheckUtils]: 51: Hoare triple {19706#(<= ~counter~0 4)} assume !!(0 != ~r~0); {19706#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:00,781 INFO L290 TraceCheckUtils]: 52: Hoare triple {19706#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19706#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:00,781 INFO L290 TraceCheckUtils]: 53: Hoare triple {19706#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19734#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:00,782 INFO L290 TraceCheckUtils]: 54: Hoare triple {19734#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {19734#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:00,782 INFO L272 TraceCheckUtils]: 55: Hoare triple {19734#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19734#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:00,783 INFO L290 TraceCheckUtils]: 56: Hoare triple {19734#(<= ~counter~0 5)} ~cond := #in~cond; {19734#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:00,783 INFO L290 TraceCheckUtils]: 57: Hoare triple {19734#(<= ~counter~0 5)} assume !(0 == ~cond); {19734#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:00,783 INFO L290 TraceCheckUtils]: 58: Hoare triple {19734#(<= ~counter~0 5)} assume true; {19734#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:00,784 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {19734#(<= ~counter~0 5)} {19734#(<= ~counter~0 5)} #63#return; {19734#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:00,784 INFO L290 TraceCheckUtils]: 60: Hoare triple {19734#(<= ~counter~0 5)} assume !!(0 != ~r~0); {19734#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:00,784 INFO L290 TraceCheckUtils]: 61: Hoare triple {19734#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19734#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:00,785 INFO L290 TraceCheckUtils]: 62: Hoare triple {19734#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19762#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:00,785 INFO L290 TraceCheckUtils]: 63: Hoare triple {19762#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {19762#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:00,786 INFO L272 TraceCheckUtils]: 64: Hoare triple {19762#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19762#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:00,786 INFO L290 TraceCheckUtils]: 65: Hoare triple {19762#(<= ~counter~0 6)} ~cond := #in~cond; {19762#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:00,786 INFO L290 TraceCheckUtils]: 66: Hoare triple {19762#(<= ~counter~0 6)} assume !(0 == ~cond); {19762#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:00,786 INFO L290 TraceCheckUtils]: 67: Hoare triple {19762#(<= ~counter~0 6)} assume true; {19762#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:00,787 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {19762#(<= ~counter~0 6)} {19762#(<= ~counter~0 6)} #63#return; {19762#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:00,787 INFO L290 TraceCheckUtils]: 69: Hoare triple {19762#(<= ~counter~0 6)} assume !!(0 != ~r~0); {19762#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:00,787 INFO L290 TraceCheckUtils]: 70: Hoare triple {19762#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19762#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:00,788 INFO L290 TraceCheckUtils]: 71: Hoare triple {19762#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19790#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:00,788 INFO L290 TraceCheckUtils]: 72: Hoare triple {19790#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {19790#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:00,789 INFO L272 TraceCheckUtils]: 73: Hoare triple {19790#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19790#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:00,789 INFO L290 TraceCheckUtils]: 74: Hoare triple {19790#(<= ~counter~0 7)} ~cond := #in~cond; {19790#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:00,789 INFO L290 TraceCheckUtils]: 75: Hoare triple {19790#(<= ~counter~0 7)} assume !(0 == ~cond); {19790#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:00,789 INFO L290 TraceCheckUtils]: 76: Hoare triple {19790#(<= ~counter~0 7)} assume true; {19790#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:00,790 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {19790#(<= ~counter~0 7)} {19790#(<= ~counter~0 7)} #63#return; {19790#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:00,790 INFO L290 TraceCheckUtils]: 78: Hoare triple {19790#(<= ~counter~0 7)} assume !!(0 != ~r~0); {19790#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:00,790 INFO L290 TraceCheckUtils]: 79: Hoare triple {19790#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19790#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:00,791 INFO L290 TraceCheckUtils]: 80: Hoare triple {19790#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19818#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:00,791 INFO L290 TraceCheckUtils]: 81: Hoare triple {19818#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {19818#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:00,792 INFO L272 TraceCheckUtils]: 82: Hoare triple {19818#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19818#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:00,792 INFO L290 TraceCheckUtils]: 83: Hoare triple {19818#(<= ~counter~0 8)} ~cond := #in~cond; {19818#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:00,792 INFO L290 TraceCheckUtils]: 84: Hoare triple {19818#(<= ~counter~0 8)} assume !(0 == ~cond); {19818#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:00,792 INFO L290 TraceCheckUtils]: 85: Hoare triple {19818#(<= ~counter~0 8)} assume true; {19818#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:00,793 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {19818#(<= ~counter~0 8)} {19818#(<= ~counter~0 8)} #63#return; {19818#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:00,793 INFO L290 TraceCheckUtils]: 87: Hoare triple {19818#(<= ~counter~0 8)} assume !!(0 != ~r~0); {19818#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:00,793 INFO L290 TraceCheckUtils]: 88: Hoare triple {19818#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19818#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:00,794 INFO L290 TraceCheckUtils]: 89: Hoare triple {19818#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19846#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:00,794 INFO L290 TraceCheckUtils]: 90: Hoare triple {19846#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {19846#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:00,795 INFO L272 TraceCheckUtils]: 91: Hoare triple {19846#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19846#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:00,795 INFO L290 TraceCheckUtils]: 92: Hoare triple {19846#(<= ~counter~0 9)} ~cond := #in~cond; {19846#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:00,795 INFO L290 TraceCheckUtils]: 93: Hoare triple {19846#(<= ~counter~0 9)} assume !(0 == ~cond); {19846#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:00,795 INFO L290 TraceCheckUtils]: 94: Hoare triple {19846#(<= ~counter~0 9)} assume true; {19846#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:00,796 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {19846#(<= ~counter~0 9)} {19846#(<= ~counter~0 9)} #63#return; {19846#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:00,796 INFO L290 TraceCheckUtils]: 96: Hoare triple {19846#(<= ~counter~0 9)} assume !!(0 != ~r~0); {19846#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:00,796 INFO L290 TraceCheckUtils]: 97: Hoare triple {19846#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19846#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:00,797 INFO L290 TraceCheckUtils]: 98: Hoare triple {19846#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19874#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:00,797 INFO L290 TraceCheckUtils]: 99: Hoare triple {19874#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {19874#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:00,798 INFO L272 TraceCheckUtils]: 100: Hoare triple {19874#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19874#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:00,798 INFO L290 TraceCheckUtils]: 101: Hoare triple {19874#(<= ~counter~0 10)} ~cond := #in~cond; {19874#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:00,798 INFO L290 TraceCheckUtils]: 102: Hoare triple {19874#(<= ~counter~0 10)} assume !(0 == ~cond); {19874#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:00,798 INFO L290 TraceCheckUtils]: 103: Hoare triple {19874#(<= ~counter~0 10)} assume true; {19874#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:00,799 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {19874#(<= ~counter~0 10)} {19874#(<= ~counter~0 10)} #63#return; {19874#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:00,799 INFO L290 TraceCheckUtils]: 105: Hoare triple {19874#(<= ~counter~0 10)} assume !!(0 != ~r~0); {19874#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:00,800 INFO L290 TraceCheckUtils]: 106: Hoare triple {19874#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19874#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:00,800 INFO L290 TraceCheckUtils]: 107: Hoare triple {19874#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19902#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:00,800 INFO L290 TraceCheckUtils]: 108: Hoare triple {19902#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {19902#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:00,801 INFO L272 TraceCheckUtils]: 109: Hoare triple {19902#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19902#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:00,801 INFO L290 TraceCheckUtils]: 110: Hoare triple {19902#(<= ~counter~0 11)} ~cond := #in~cond; {19902#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:00,801 INFO L290 TraceCheckUtils]: 111: Hoare triple {19902#(<= ~counter~0 11)} assume !(0 == ~cond); {19902#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:00,802 INFO L290 TraceCheckUtils]: 112: Hoare triple {19902#(<= ~counter~0 11)} assume true; {19902#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:00,802 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {19902#(<= ~counter~0 11)} {19902#(<= ~counter~0 11)} #63#return; {19902#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:00,802 INFO L290 TraceCheckUtils]: 114: Hoare triple {19902#(<= ~counter~0 11)} assume !!(0 != ~r~0); {19902#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:00,803 INFO L290 TraceCheckUtils]: 115: Hoare triple {19902#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19902#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:00,803 INFO L290 TraceCheckUtils]: 116: Hoare triple {19902#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19930#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:00,803 INFO L290 TraceCheckUtils]: 117: Hoare triple {19930#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {19930#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:00,804 INFO L272 TraceCheckUtils]: 118: Hoare triple {19930#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19930#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:00,804 INFO L290 TraceCheckUtils]: 119: Hoare triple {19930#(<= ~counter~0 12)} ~cond := #in~cond; {19930#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:00,804 INFO L290 TraceCheckUtils]: 120: Hoare triple {19930#(<= ~counter~0 12)} assume !(0 == ~cond); {19930#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:00,805 INFO L290 TraceCheckUtils]: 121: Hoare triple {19930#(<= ~counter~0 12)} assume true; {19930#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:00,805 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {19930#(<= ~counter~0 12)} {19930#(<= ~counter~0 12)} #63#return; {19930#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:00,805 INFO L290 TraceCheckUtils]: 123: Hoare triple {19930#(<= ~counter~0 12)} assume !!(0 != ~r~0); {19930#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:00,806 INFO L290 TraceCheckUtils]: 124: Hoare triple {19930#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19930#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:00,806 INFO L290 TraceCheckUtils]: 125: Hoare triple {19930#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19958#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:00,806 INFO L290 TraceCheckUtils]: 126: Hoare triple {19958#(<= ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {19958#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:00,807 INFO L272 TraceCheckUtils]: 127: Hoare triple {19958#(<= ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19958#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:00,807 INFO L290 TraceCheckUtils]: 128: Hoare triple {19958#(<= ~counter~0 13)} ~cond := #in~cond; {19958#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:00,807 INFO L290 TraceCheckUtils]: 129: Hoare triple {19958#(<= ~counter~0 13)} assume !(0 == ~cond); {19958#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:00,808 INFO L290 TraceCheckUtils]: 130: Hoare triple {19958#(<= ~counter~0 13)} assume true; {19958#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:00,808 INFO L284 TraceCheckUtils]: 131: Hoare quadruple {19958#(<= ~counter~0 13)} {19958#(<= ~counter~0 13)} #63#return; {19958#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:00,808 INFO L290 TraceCheckUtils]: 132: Hoare triple {19958#(<= ~counter~0 13)} assume !!(0 != ~r~0); {19958#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:00,809 INFO L290 TraceCheckUtils]: 133: Hoare triple {19958#(<= ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19958#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:00,809 INFO L290 TraceCheckUtils]: 134: Hoare triple {19958#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19986#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:00,809 INFO L290 TraceCheckUtils]: 135: Hoare triple {19986#(<= ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {19986#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:00,810 INFO L272 TraceCheckUtils]: 136: Hoare triple {19986#(<= ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19986#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:00,810 INFO L290 TraceCheckUtils]: 137: Hoare triple {19986#(<= ~counter~0 14)} ~cond := #in~cond; {19986#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:00,810 INFO L290 TraceCheckUtils]: 138: Hoare triple {19986#(<= ~counter~0 14)} assume !(0 == ~cond); {19986#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:00,811 INFO L290 TraceCheckUtils]: 139: Hoare triple {19986#(<= ~counter~0 14)} assume true; {19986#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:00,811 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {19986#(<= ~counter~0 14)} {19986#(<= ~counter~0 14)} #63#return; {19986#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:00,812 INFO L290 TraceCheckUtils]: 141: Hoare triple {19986#(<= ~counter~0 14)} assume !!(0 != ~r~0); {19986#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:00,812 INFO L290 TraceCheckUtils]: 142: Hoare triple {19986#(<= ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19986#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:00,812 INFO L290 TraceCheckUtils]: 143: Hoare triple {19986#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20014#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:00,813 INFO L290 TraceCheckUtils]: 144: Hoare triple {20014#(<= ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {20014#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:00,813 INFO L272 TraceCheckUtils]: 145: Hoare triple {20014#(<= ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {20014#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:00,813 INFO L290 TraceCheckUtils]: 146: Hoare triple {20014#(<= ~counter~0 15)} ~cond := #in~cond; {20014#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:00,814 INFO L290 TraceCheckUtils]: 147: Hoare triple {20014#(<= ~counter~0 15)} assume !(0 == ~cond); {20014#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:00,814 INFO L290 TraceCheckUtils]: 148: Hoare triple {20014#(<= ~counter~0 15)} assume true; {20014#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:00,814 INFO L284 TraceCheckUtils]: 149: Hoare quadruple {20014#(<= ~counter~0 15)} {20014#(<= ~counter~0 15)} #63#return; {20014#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:00,815 INFO L290 TraceCheckUtils]: 150: Hoare triple {20014#(<= ~counter~0 15)} assume !!(0 != ~r~0); {20014#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:00,815 INFO L290 TraceCheckUtils]: 151: Hoare triple {20014#(<= ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {20014#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:00,815 INFO L290 TraceCheckUtils]: 152: Hoare triple {20014#(<= ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20042#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:00,816 INFO L290 TraceCheckUtils]: 153: Hoare triple {20042#(<= ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {20042#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:00,816 INFO L272 TraceCheckUtils]: 154: Hoare triple {20042#(<= ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {20042#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:00,816 INFO L290 TraceCheckUtils]: 155: Hoare triple {20042#(<= ~counter~0 16)} ~cond := #in~cond; {20042#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:00,817 INFO L290 TraceCheckUtils]: 156: Hoare triple {20042#(<= ~counter~0 16)} assume !(0 == ~cond); {20042#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:00,817 INFO L290 TraceCheckUtils]: 157: Hoare triple {20042#(<= ~counter~0 16)} assume true; {20042#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:00,817 INFO L284 TraceCheckUtils]: 158: Hoare quadruple {20042#(<= ~counter~0 16)} {20042#(<= ~counter~0 16)} #63#return; {20042#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:00,818 INFO L290 TraceCheckUtils]: 159: Hoare triple {20042#(<= ~counter~0 16)} assume !!(0 != ~r~0); {20042#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:00,818 INFO L290 TraceCheckUtils]: 160: Hoare triple {20042#(<= ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {20042#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:00,818 INFO L290 TraceCheckUtils]: 161: Hoare triple {20042#(<= ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20070#(<= |main_#t~post6| 16)} is VALID [2022-04-08 06:09:00,819 INFO L290 TraceCheckUtils]: 162: Hoare triple {20070#(<= |main_#t~post6| 16)} assume !(#t~post6 < 20);havoc #t~post6; {19566#false} is VALID [2022-04-08 06:09:00,819 INFO L272 TraceCheckUtils]: 163: Hoare triple {19566#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19566#false} is VALID [2022-04-08 06:09:00,819 INFO L290 TraceCheckUtils]: 164: Hoare triple {19566#false} ~cond := #in~cond; {19566#false} is VALID [2022-04-08 06:09:00,819 INFO L290 TraceCheckUtils]: 165: Hoare triple {19566#false} assume 0 == ~cond; {19566#false} is VALID [2022-04-08 06:09:00,819 INFO L290 TraceCheckUtils]: 166: Hoare triple {19566#false} assume !false; {19566#false} is VALID [2022-04-08 06:09:00,820 INFO L134 CoverageAnalysis]: Checked inductivity of 1148 backedges. 32 proven. 1112 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:09:00,820 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:09:01,781 INFO L290 TraceCheckUtils]: 166: Hoare triple {19566#false} assume !false; {19566#false} is VALID [2022-04-08 06:09:01,781 INFO L290 TraceCheckUtils]: 165: Hoare triple {19566#false} assume 0 == ~cond; {19566#false} is VALID [2022-04-08 06:09:01,781 INFO L290 TraceCheckUtils]: 164: Hoare triple {19566#false} ~cond := #in~cond; {19566#false} is VALID [2022-04-08 06:09:01,781 INFO L272 TraceCheckUtils]: 163: Hoare triple {19566#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19566#false} is VALID [2022-04-08 06:09:01,781 INFO L290 TraceCheckUtils]: 162: Hoare triple {20098#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {19566#false} is VALID [2022-04-08 06:09:01,782 INFO L290 TraceCheckUtils]: 161: Hoare triple {20102#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20098#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:09:01,782 INFO L290 TraceCheckUtils]: 160: Hoare triple {20102#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {20102#(< ~counter~0 20)} is VALID [2022-04-08 06:09:01,783 INFO L290 TraceCheckUtils]: 159: Hoare triple {20102#(< ~counter~0 20)} assume !!(0 != ~r~0); {20102#(< ~counter~0 20)} is VALID [2022-04-08 06:09:01,783 INFO L284 TraceCheckUtils]: 158: Hoare quadruple {19565#true} {20102#(< ~counter~0 20)} #63#return; {20102#(< ~counter~0 20)} is VALID [2022-04-08 06:09:01,783 INFO L290 TraceCheckUtils]: 157: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,784 INFO L290 TraceCheckUtils]: 156: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,784 INFO L290 TraceCheckUtils]: 155: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,784 INFO L272 TraceCheckUtils]: 154: Hoare triple {20102#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,784 INFO L290 TraceCheckUtils]: 153: Hoare triple {20102#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {20102#(< ~counter~0 20)} is VALID [2022-04-08 06:09:01,785 INFO L290 TraceCheckUtils]: 152: Hoare triple {20130#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20102#(< ~counter~0 20)} is VALID [2022-04-08 06:09:01,785 INFO L290 TraceCheckUtils]: 151: Hoare triple {20130#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {20130#(< ~counter~0 19)} is VALID [2022-04-08 06:09:01,785 INFO L290 TraceCheckUtils]: 150: Hoare triple {20130#(< ~counter~0 19)} assume !!(0 != ~r~0); {20130#(< ~counter~0 19)} is VALID [2022-04-08 06:09:01,786 INFO L284 TraceCheckUtils]: 149: Hoare quadruple {19565#true} {20130#(< ~counter~0 19)} #63#return; {20130#(< ~counter~0 19)} is VALID [2022-04-08 06:09:01,786 INFO L290 TraceCheckUtils]: 148: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,786 INFO L290 TraceCheckUtils]: 147: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,786 INFO L290 TraceCheckUtils]: 146: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,786 INFO L272 TraceCheckUtils]: 145: Hoare triple {20130#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,786 INFO L290 TraceCheckUtils]: 144: Hoare triple {20130#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {20130#(< ~counter~0 19)} is VALID [2022-04-08 06:09:01,787 INFO L290 TraceCheckUtils]: 143: Hoare triple {20158#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20130#(< ~counter~0 19)} is VALID [2022-04-08 06:09:01,787 INFO L290 TraceCheckUtils]: 142: Hoare triple {20158#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {20158#(< ~counter~0 18)} is VALID [2022-04-08 06:09:01,787 INFO L290 TraceCheckUtils]: 141: Hoare triple {20158#(< ~counter~0 18)} assume !!(0 != ~r~0); {20158#(< ~counter~0 18)} is VALID [2022-04-08 06:09:01,788 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {19565#true} {20158#(< ~counter~0 18)} #63#return; {20158#(< ~counter~0 18)} is VALID [2022-04-08 06:09:01,788 INFO L290 TraceCheckUtils]: 139: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,788 INFO L290 TraceCheckUtils]: 138: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,788 INFO L290 TraceCheckUtils]: 137: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,788 INFO L272 TraceCheckUtils]: 136: Hoare triple {20158#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,788 INFO L290 TraceCheckUtils]: 135: Hoare triple {20158#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {20158#(< ~counter~0 18)} is VALID [2022-04-08 06:09:01,789 INFO L290 TraceCheckUtils]: 134: Hoare triple {20042#(<= ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20158#(< ~counter~0 18)} is VALID [2022-04-08 06:09:01,789 INFO L290 TraceCheckUtils]: 133: Hoare triple {20042#(<= ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {20042#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:01,789 INFO L290 TraceCheckUtils]: 132: Hoare triple {20042#(<= ~counter~0 16)} assume !!(0 != ~r~0); {20042#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:01,790 INFO L284 TraceCheckUtils]: 131: Hoare quadruple {19565#true} {20042#(<= ~counter~0 16)} #63#return; {20042#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:01,790 INFO L290 TraceCheckUtils]: 130: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,790 INFO L290 TraceCheckUtils]: 129: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,790 INFO L290 TraceCheckUtils]: 128: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,790 INFO L272 TraceCheckUtils]: 127: Hoare triple {20042#(<= ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,790 INFO L290 TraceCheckUtils]: 126: Hoare triple {20042#(<= ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {20042#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:01,791 INFO L290 TraceCheckUtils]: 125: Hoare triple {20014#(<= ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20042#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:01,791 INFO L290 TraceCheckUtils]: 124: Hoare triple {20014#(<= ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {20014#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:01,791 INFO L290 TraceCheckUtils]: 123: Hoare triple {20014#(<= ~counter~0 15)} assume !!(0 != ~r~0); {20014#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:01,792 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {19565#true} {20014#(<= ~counter~0 15)} #63#return; {20014#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:01,792 INFO L290 TraceCheckUtils]: 121: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,792 INFO L290 TraceCheckUtils]: 120: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,792 INFO L290 TraceCheckUtils]: 119: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,792 INFO L272 TraceCheckUtils]: 118: Hoare triple {20014#(<= ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,792 INFO L290 TraceCheckUtils]: 117: Hoare triple {20014#(<= ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {20014#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:01,793 INFO L290 TraceCheckUtils]: 116: Hoare triple {19986#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20014#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:01,793 INFO L290 TraceCheckUtils]: 115: Hoare triple {19986#(<= ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19986#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:01,793 INFO L290 TraceCheckUtils]: 114: Hoare triple {19986#(<= ~counter~0 14)} assume !!(0 != ~r~0); {19986#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:01,794 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {19565#true} {19986#(<= ~counter~0 14)} #63#return; {19986#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:01,794 INFO L290 TraceCheckUtils]: 112: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,794 INFO L290 TraceCheckUtils]: 111: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,794 INFO L290 TraceCheckUtils]: 110: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,794 INFO L272 TraceCheckUtils]: 109: Hoare triple {19986#(<= ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,794 INFO L290 TraceCheckUtils]: 108: Hoare triple {19986#(<= ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {19986#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:01,795 INFO L290 TraceCheckUtils]: 107: Hoare triple {19958#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19986#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:01,795 INFO L290 TraceCheckUtils]: 106: Hoare triple {19958#(<= ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19958#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:01,795 INFO L290 TraceCheckUtils]: 105: Hoare triple {19958#(<= ~counter~0 13)} assume !!(0 != ~r~0); {19958#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:01,796 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {19565#true} {19958#(<= ~counter~0 13)} #63#return; {19958#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:01,796 INFO L290 TraceCheckUtils]: 103: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,796 INFO L290 TraceCheckUtils]: 102: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,796 INFO L290 TraceCheckUtils]: 101: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,796 INFO L272 TraceCheckUtils]: 100: Hoare triple {19958#(<= ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,796 INFO L290 TraceCheckUtils]: 99: Hoare triple {19958#(<= ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {19958#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:01,797 INFO L290 TraceCheckUtils]: 98: Hoare triple {19930#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19958#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:01,797 INFO L290 TraceCheckUtils]: 97: Hoare triple {19930#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19930#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:01,797 INFO L290 TraceCheckUtils]: 96: Hoare triple {19930#(<= ~counter~0 12)} assume !!(0 != ~r~0); {19930#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:01,798 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {19565#true} {19930#(<= ~counter~0 12)} #63#return; {19930#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:01,798 INFO L290 TraceCheckUtils]: 94: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,798 INFO L290 TraceCheckUtils]: 93: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,798 INFO L290 TraceCheckUtils]: 92: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,798 INFO L272 TraceCheckUtils]: 91: Hoare triple {19930#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,798 INFO L290 TraceCheckUtils]: 90: Hoare triple {19930#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {19930#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:01,799 INFO L290 TraceCheckUtils]: 89: Hoare triple {19902#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19930#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:01,799 INFO L290 TraceCheckUtils]: 88: Hoare triple {19902#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19902#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:01,799 INFO L290 TraceCheckUtils]: 87: Hoare triple {19902#(<= ~counter~0 11)} assume !!(0 != ~r~0); {19902#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:01,800 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {19565#true} {19902#(<= ~counter~0 11)} #63#return; {19902#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:01,800 INFO L290 TraceCheckUtils]: 85: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,800 INFO L290 TraceCheckUtils]: 84: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,800 INFO L290 TraceCheckUtils]: 83: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,800 INFO L272 TraceCheckUtils]: 82: Hoare triple {19902#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,800 INFO L290 TraceCheckUtils]: 81: Hoare triple {19902#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {19902#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:01,801 INFO L290 TraceCheckUtils]: 80: Hoare triple {19874#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19902#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:01,801 INFO L290 TraceCheckUtils]: 79: Hoare triple {19874#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19874#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:01,801 INFO L290 TraceCheckUtils]: 78: Hoare triple {19874#(<= ~counter~0 10)} assume !!(0 != ~r~0); {19874#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:01,802 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {19565#true} {19874#(<= ~counter~0 10)} #63#return; {19874#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:01,802 INFO L290 TraceCheckUtils]: 76: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,802 INFO L290 TraceCheckUtils]: 75: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,802 INFO L290 TraceCheckUtils]: 74: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,802 INFO L272 TraceCheckUtils]: 73: Hoare triple {19874#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,802 INFO L290 TraceCheckUtils]: 72: Hoare triple {19874#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {19874#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:01,803 INFO L290 TraceCheckUtils]: 71: Hoare triple {19846#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19874#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:01,803 INFO L290 TraceCheckUtils]: 70: Hoare triple {19846#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19846#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:01,803 INFO L290 TraceCheckUtils]: 69: Hoare triple {19846#(<= ~counter~0 9)} assume !!(0 != ~r~0); {19846#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:01,804 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {19565#true} {19846#(<= ~counter~0 9)} #63#return; {19846#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:01,804 INFO L290 TraceCheckUtils]: 67: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,804 INFO L290 TraceCheckUtils]: 66: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,804 INFO L290 TraceCheckUtils]: 65: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,804 INFO L272 TraceCheckUtils]: 64: Hoare triple {19846#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,808 INFO L290 TraceCheckUtils]: 63: Hoare triple {19846#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {19846#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:01,809 INFO L290 TraceCheckUtils]: 62: Hoare triple {19818#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19846#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:01,809 INFO L290 TraceCheckUtils]: 61: Hoare triple {19818#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19818#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:01,809 INFO L290 TraceCheckUtils]: 60: Hoare triple {19818#(<= ~counter~0 8)} assume !!(0 != ~r~0); {19818#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:01,810 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {19565#true} {19818#(<= ~counter~0 8)} #63#return; {19818#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:01,810 INFO L290 TraceCheckUtils]: 58: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,810 INFO L290 TraceCheckUtils]: 57: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,810 INFO L290 TraceCheckUtils]: 56: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,810 INFO L272 TraceCheckUtils]: 55: Hoare triple {19818#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,810 INFO L290 TraceCheckUtils]: 54: Hoare triple {19818#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {19818#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:01,811 INFO L290 TraceCheckUtils]: 53: Hoare triple {19790#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19818#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:01,811 INFO L290 TraceCheckUtils]: 52: Hoare triple {19790#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19790#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:01,811 INFO L290 TraceCheckUtils]: 51: Hoare triple {19790#(<= ~counter~0 7)} assume !!(0 != ~r~0); {19790#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:01,812 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {19565#true} {19790#(<= ~counter~0 7)} #63#return; {19790#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:01,812 INFO L290 TraceCheckUtils]: 49: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,812 INFO L290 TraceCheckUtils]: 48: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,812 INFO L290 TraceCheckUtils]: 47: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,812 INFO L272 TraceCheckUtils]: 46: Hoare triple {19790#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,812 INFO L290 TraceCheckUtils]: 45: Hoare triple {19790#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {19790#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:01,813 INFO L290 TraceCheckUtils]: 44: Hoare triple {19762#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19790#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:01,813 INFO L290 TraceCheckUtils]: 43: Hoare triple {19762#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19762#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:01,813 INFO L290 TraceCheckUtils]: 42: Hoare triple {19762#(<= ~counter~0 6)} assume !!(0 != ~r~0); {19762#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:01,814 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {19565#true} {19762#(<= ~counter~0 6)} #63#return; {19762#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:01,814 INFO L290 TraceCheckUtils]: 40: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,814 INFO L290 TraceCheckUtils]: 39: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,814 INFO L290 TraceCheckUtils]: 38: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,814 INFO L272 TraceCheckUtils]: 37: Hoare triple {19762#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,815 INFO L290 TraceCheckUtils]: 36: Hoare triple {19762#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {19762#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:01,816 INFO L290 TraceCheckUtils]: 35: Hoare triple {19734#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19762#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:01,816 INFO L290 TraceCheckUtils]: 34: Hoare triple {19734#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19734#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:01,816 INFO L290 TraceCheckUtils]: 33: Hoare triple {19734#(<= ~counter~0 5)} assume !!(0 != ~r~0); {19734#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:01,817 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {19565#true} {19734#(<= ~counter~0 5)} #63#return; {19734#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:01,817 INFO L290 TraceCheckUtils]: 31: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,817 INFO L290 TraceCheckUtils]: 30: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,818 INFO L290 TraceCheckUtils]: 29: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,818 INFO L272 TraceCheckUtils]: 28: Hoare triple {19734#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,818 INFO L290 TraceCheckUtils]: 27: Hoare triple {19734#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {19734#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:01,819 INFO L290 TraceCheckUtils]: 26: Hoare triple {19706#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19734#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:01,819 INFO L290 TraceCheckUtils]: 25: Hoare triple {19706#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19706#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:01,819 INFO L290 TraceCheckUtils]: 24: Hoare triple {19706#(<= ~counter~0 4)} assume !!(0 != ~r~0); {19706#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:01,820 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {19565#true} {19706#(<= ~counter~0 4)} #63#return; {19706#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:01,820 INFO L290 TraceCheckUtils]: 22: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,820 INFO L290 TraceCheckUtils]: 21: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,820 INFO L290 TraceCheckUtils]: 20: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,821 INFO L272 TraceCheckUtils]: 19: Hoare triple {19706#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,821 INFO L290 TraceCheckUtils]: 18: Hoare triple {19706#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {19706#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:01,822 INFO L290 TraceCheckUtils]: 17: Hoare triple {19678#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19706#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:01,822 INFO L290 TraceCheckUtils]: 16: Hoare triple {19678#(<= ~counter~0 3)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:01,823 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {19565#true} {19678#(<= ~counter~0 3)} #61#return; {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:01,823 INFO L290 TraceCheckUtils]: 14: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,823 INFO L290 TraceCheckUtils]: 13: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,823 INFO L290 TraceCheckUtils]: 12: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,823 INFO L272 TraceCheckUtils]: 11: Hoare triple {19678#(<= ~counter~0 3)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,824 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19565#true} {19678#(<= ~counter~0 3)} #59#return; {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:01,824 INFO L290 TraceCheckUtils]: 9: Hoare triple {19565#true} assume true; {19565#true} is VALID [2022-04-08 06:09:01,824 INFO L290 TraceCheckUtils]: 8: Hoare triple {19565#true} assume !(0 == ~cond); {19565#true} is VALID [2022-04-08 06:09:01,824 INFO L290 TraceCheckUtils]: 7: Hoare triple {19565#true} ~cond := #in~cond; {19565#true} is VALID [2022-04-08 06:09:01,824 INFO L272 TraceCheckUtils]: 6: Hoare triple {19678#(<= ~counter~0 3)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {19565#true} is VALID [2022-04-08 06:09:01,824 INFO L290 TraceCheckUtils]: 5: Hoare triple {19678#(<= ~counter~0 3)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:01,825 INFO L272 TraceCheckUtils]: 4: Hoare triple {19678#(<= ~counter~0 3)} call #t~ret7 := main(); {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:01,825 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19678#(<= ~counter~0 3)} {19565#true} #67#return; {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:01,826 INFO L290 TraceCheckUtils]: 2: Hoare triple {19678#(<= ~counter~0 3)} assume true; {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:01,826 INFO L290 TraceCheckUtils]: 1: Hoare triple {19565#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {19678#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:01,826 INFO L272 TraceCheckUtils]: 0: Hoare triple {19565#true} call ULTIMATE.init(); {19565#true} is VALID [2022-04-08 06:09:01,827 INFO L134 CoverageAnalysis]: Checked inductivity of 1148 backedges. 32 proven. 632 refuted. 0 times theorem prover too weak. 484 trivial. 0 not checked. [2022-04-08 06:09:01,827 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:09:01,827 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1293827004] [2022-04-08 06:09:01,827 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:09:01,828 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1728891867] [2022-04-08 06:09:01,828 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1728891867] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:09:01,828 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:09:01,828 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 20] total 24 [2022-04-08 06:09:01,828 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:09:01,828 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1455098769] [2022-04-08 06:09:01,828 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1455098769] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:09:01,828 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:09:01,828 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [20] imperfect sequences [] total 20 [2022-04-08 06:09:01,828 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [189882053] [2022-04-08 06:09:01,829 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:09:01,829 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 6.2) internal successors, (124), 19 states have internal predecessors, (124), 19 states have call successors, (21), 19 states have call predecessors, (21), 17 states have return successors, (19), 17 states have call predecessors, (19), 18 states have call successors, (19) Word has length 167 [2022-04-08 06:09:01,830 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:09:01,830 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 20 states, 20 states have (on average 6.2) internal successors, (124), 19 states have internal predecessors, (124), 19 states have call successors, (21), 19 states have call predecessors, (21), 17 states have return successors, (19), 17 states have call predecessors, (19), 18 states have call successors, (19) [2022-04-08 06:09:02,003 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 164 edges. 164 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:02,003 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-08 06:09:02,003 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:09:02,004 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-08 06:09:02,004 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:09:02,004 INFO L87 Difference]: Start difference. First operand 164 states and 181 transitions. Second operand has 20 states, 20 states have (on average 6.2) internal successors, (124), 19 states have internal predecessors, (124), 19 states have call successors, (21), 19 states have call predecessors, (21), 17 states have return successors, (19), 17 states have call predecessors, (19), 18 states have call successors, (19) [2022-04-08 06:09:02,760 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:02,761 INFO L93 Difference]: Finished difference Result 178 states and 196 transitions. [2022-04-08 06:09:02,761 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 36 states. [2022-04-08 06:09:02,761 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 6.2) internal successors, (124), 19 states have internal predecessors, (124), 19 states have call successors, (21), 19 states have call predecessors, (21), 17 states have return successors, (19), 17 states have call predecessors, (19), 18 states have call successors, (19) Word has length 167 [2022-04-08 06:09:02,761 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:09:02,762 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 6.2) internal successors, (124), 19 states have internal predecessors, (124), 19 states have call successors, (21), 19 states have call predecessors, (21), 17 states have return successors, (19), 17 states have call predecessors, (19), 18 states have call successors, (19) [2022-04-08 06:09:02,765 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 195 transitions. [2022-04-08 06:09:02,765 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 6.2) internal successors, (124), 19 states have internal predecessors, (124), 19 states have call successors, (21), 19 states have call predecessors, (21), 17 states have return successors, (19), 17 states have call predecessors, (19), 18 states have call successors, (19) [2022-04-08 06:09:02,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 195 transitions. [2022-04-08 06:09:02,768 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 36 states and 195 transitions. [2022-04-08 06:09:02,934 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 195 edges. 195 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:02,936 INFO L225 Difference]: With dead ends: 178 [2022-04-08 06:09:02,937 INFO L226 Difference]: Without dead ends: 173 [2022-04-08 06:09:02,937 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 349 GetRequests, 310 SyntacticMatches, 1 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 158 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=604, Invalid=956, Unknown=0, NotChecked=0, Total=1560 [2022-04-08 06:09:02,938 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 70 mSDsluCounter, 156 mSDsCounter, 0 mSdLazyCounter, 93 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 70 SdHoareTripleChecker+Valid, 198 SdHoareTripleChecker+Invalid, 121 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 93 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:09:02,938 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [70 Valid, 198 Invalid, 121 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 93 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:09:02,938 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 173 states. [2022-04-08 06:09:03,205 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 173 to 173. [2022-04-08 06:09:03,205 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:09:03,206 INFO L82 GeneralOperation]: Start isEquivalent. First operand 173 states. Second operand has 173 states, 131 states have (on average 1.1374045801526718) internal successors, (149), 131 states have internal predecessors, (149), 22 states have call successors, (22), 21 states have call predecessors, (22), 19 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-08 06:09:03,207 INFO L74 IsIncluded]: Start isIncluded. First operand 173 states. Second operand has 173 states, 131 states have (on average 1.1374045801526718) internal successors, (149), 131 states have internal predecessors, (149), 22 states have call successors, (22), 21 states have call predecessors, (22), 19 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-08 06:09:03,207 INFO L87 Difference]: Start difference. First operand 173 states. Second operand has 173 states, 131 states have (on average 1.1374045801526718) internal successors, (149), 131 states have internal predecessors, (149), 22 states have call successors, (22), 21 states have call predecessors, (22), 19 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-08 06:09:03,209 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:03,210 INFO L93 Difference]: Finished difference Result 173 states and 191 transitions. [2022-04-08 06:09:03,210 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 191 transitions. [2022-04-08 06:09:03,210 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:09:03,210 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:09:03,210 INFO L74 IsIncluded]: Start isIncluded. First operand has 173 states, 131 states have (on average 1.1374045801526718) internal successors, (149), 131 states have internal predecessors, (149), 22 states have call successors, (22), 21 states have call predecessors, (22), 19 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) Second operand 173 states. [2022-04-08 06:09:03,211 INFO L87 Difference]: Start difference. First operand has 173 states, 131 states have (on average 1.1374045801526718) internal successors, (149), 131 states have internal predecessors, (149), 22 states have call successors, (22), 21 states have call predecessors, (22), 19 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) Second operand 173 states. [2022-04-08 06:09:03,214 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:03,214 INFO L93 Difference]: Finished difference Result 173 states and 191 transitions. [2022-04-08 06:09:03,214 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 191 transitions. [2022-04-08 06:09:03,214 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:09:03,215 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:09:03,215 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:09:03,215 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:09:03,215 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 173 states, 131 states have (on average 1.1374045801526718) internal successors, (149), 131 states have internal predecessors, (149), 22 states have call successors, (22), 21 states have call predecessors, (22), 19 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-08 06:09:03,218 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 173 states to 173 states and 191 transitions. [2022-04-08 06:09:03,219 INFO L78 Accepts]: Start accepts. Automaton has 173 states and 191 transitions. Word has length 167 [2022-04-08 06:09:03,219 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:09:03,219 INFO L478 AbstractCegarLoop]: Abstraction has 173 states and 191 transitions. [2022-04-08 06:09:03,219 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 6.2) internal successors, (124), 19 states have internal predecessors, (124), 19 states have call successors, (21), 19 states have call predecessors, (21), 17 states have return successors, (19), 17 states have call predecessors, (19), 18 states have call successors, (19) [2022-04-08 06:09:03,219 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 173 states and 191 transitions. [2022-04-08 06:09:04,200 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 191 edges. 191 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:04,201 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 191 transitions. [2022-04-08 06:09:04,202 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 177 [2022-04-08 06:09:04,202 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:09:04,202 INFO L499 BasicCegarLoop]: trace histogram [18, 18, 17, 17, 17, 17, 17, 17, 17, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:09:04,229 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-08 06:09:04,427 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:09:04,427 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:09:04,428 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:09:04,428 INFO L85 PathProgramCache]: Analyzing trace with hash 318093084, now seen corresponding path program 33 times [2022-04-08 06:09:04,428 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:09:04,428 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [625497862] [2022-04-08 06:09:04,428 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:09:04,428 INFO L85 PathProgramCache]: Analyzing trace with hash 318093084, now seen corresponding path program 34 times [2022-04-08 06:09:04,428 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:09:04,429 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [98440702] [2022-04-08 06:09:04,429 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:09:04,429 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:09:04,448 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:09:04,448 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1384388470] [2022-04-08 06:09:04,448 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:09:04,448 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:09:04,448 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:09:04,449 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-08 06:09:04,450 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-08 06:09:04,652 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:09:04,652 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:09:04,654 INFO L263 TraceCheckSpWp]: Trace formula consists of 433 conjuncts, 39 conjunts are in the unsatisfiable core [2022-04-08 06:09:04,703 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:09:04,704 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:09:05,602 INFO L272 TraceCheckUtils]: 0: Hoare triple {21670#true} call ULTIMATE.init(); {21670#true} is VALID [2022-04-08 06:09:05,603 INFO L290 TraceCheckUtils]: 1: Hoare triple {21670#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,603 INFO L290 TraceCheckUtils]: 2: Hoare triple {21678#(<= ~counter~0 0)} assume true; {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,604 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21678#(<= ~counter~0 0)} {21670#true} #67#return; {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,604 INFO L272 TraceCheckUtils]: 4: Hoare triple {21678#(<= ~counter~0 0)} call #t~ret7 := main(); {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,604 INFO L290 TraceCheckUtils]: 5: Hoare triple {21678#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,605 INFO L272 TraceCheckUtils]: 6: Hoare triple {21678#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,605 INFO L290 TraceCheckUtils]: 7: Hoare triple {21678#(<= ~counter~0 0)} ~cond := #in~cond; {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,605 INFO L290 TraceCheckUtils]: 8: Hoare triple {21678#(<= ~counter~0 0)} assume !(0 == ~cond); {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,605 INFO L290 TraceCheckUtils]: 9: Hoare triple {21678#(<= ~counter~0 0)} assume true; {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,606 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21678#(<= ~counter~0 0)} {21678#(<= ~counter~0 0)} #59#return; {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,606 INFO L272 TraceCheckUtils]: 11: Hoare triple {21678#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,607 INFO L290 TraceCheckUtils]: 12: Hoare triple {21678#(<= ~counter~0 0)} ~cond := #in~cond; {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,607 INFO L290 TraceCheckUtils]: 13: Hoare triple {21678#(<= ~counter~0 0)} assume !(0 == ~cond); {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,607 INFO L290 TraceCheckUtils]: 14: Hoare triple {21678#(<= ~counter~0 0)} assume true; {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,607 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21678#(<= ~counter~0 0)} {21678#(<= ~counter~0 0)} #61#return; {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,608 INFO L290 TraceCheckUtils]: 16: Hoare triple {21678#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {21678#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:05,608 INFO L290 TraceCheckUtils]: 17: Hoare triple {21678#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21727#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:05,609 INFO L290 TraceCheckUtils]: 18: Hoare triple {21727#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {21727#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:05,609 INFO L272 TraceCheckUtils]: 19: Hoare triple {21727#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21727#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:05,609 INFO L290 TraceCheckUtils]: 20: Hoare triple {21727#(<= ~counter~0 1)} ~cond := #in~cond; {21727#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:05,610 INFO L290 TraceCheckUtils]: 21: Hoare triple {21727#(<= ~counter~0 1)} assume !(0 == ~cond); {21727#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:05,610 INFO L290 TraceCheckUtils]: 22: Hoare triple {21727#(<= ~counter~0 1)} assume true; {21727#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:05,610 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {21727#(<= ~counter~0 1)} {21727#(<= ~counter~0 1)} #63#return; {21727#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:05,611 INFO L290 TraceCheckUtils]: 24: Hoare triple {21727#(<= ~counter~0 1)} assume !!(0 != ~r~0); {21727#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:05,611 INFO L290 TraceCheckUtils]: 25: Hoare triple {21727#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21727#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:05,612 INFO L290 TraceCheckUtils]: 26: Hoare triple {21727#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:05,612 INFO L290 TraceCheckUtils]: 27: Hoare triple {21755#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:05,612 INFO L272 TraceCheckUtils]: 28: Hoare triple {21755#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:05,613 INFO L290 TraceCheckUtils]: 29: Hoare triple {21755#(<= ~counter~0 2)} ~cond := #in~cond; {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:05,613 INFO L290 TraceCheckUtils]: 30: Hoare triple {21755#(<= ~counter~0 2)} assume !(0 == ~cond); {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:05,617 INFO L290 TraceCheckUtils]: 31: Hoare triple {21755#(<= ~counter~0 2)} assume true; {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:05,617 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {21755#(<= ~counter~0 2)} {21755#(<= ~counter~0 2)} #63#return; {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:05,617 INFO L290 TraceCheckUtils]: 33: Hoare triple {21755#(<= ~counter~0 2)} assume !!(0 != ~r~0); {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:05,618 INFO L290 TraceCheckUtils]: 34: Hoare triple {21755#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:05,618 INFO L290 TraceCheckUtils]: 35: Hoare triple {21755#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21783#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:05,618 INFO L290 TraceCheckUtils]: 36: Hoare triple {21783#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {21783#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:05,619 INFO L272 TraceCheckUtils]: 37: Hoare triple {21783#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21783#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:05,619 INFO L290 TraceCheckUtils]: 38: Hoare triple {21783#(<= ~counter~0 3)} ~cond := #in~cond; {21783#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:05,620 INFO L290 TraceCheckUtils]: 39: Hoare triple {21783#(<= ~counter~0 3)} assume !(0 == ~cond); {21783#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:05,620 INFO L290 TraceCheckUtils]: 40: Hoare triple {21783#(<= ~counter~0 3)} assume true; {21783#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:05,621 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21783#(<= ~counter~0 3)} {21783#(<= ~counter~0 3)} #63#return; {21783#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:05,631 INFO L290 TraceCheckUtils]: 42: Hoare triple {21783#(<= ~counter~0 3)} assume !!(0 != ~r~0); {21783#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:05,632 INFO L290 TraceCheckUtils]: 43: Hoare triple {21783#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21783#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:05,633 INFO L290 TraceCheckUtils]: 44: Hoare triple {21783#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21811#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:05,633 INFO L290 TraceCheckUtils]: 45: Hoare triple {21811#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {21811#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:05,634 INFO L272 TraceCheckUtils]: 46: Hoare triple {21811#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21811#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:05,635 INFO L290 TraceCheckUtils]: 47: Hoare triple {21811#(<= ~counter~0 4)} ~cond := #in~cond; {21811#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:05,635 INFO L290 TraceCheckUtils]: 48: Hoare triple {21811#(<= ~counter~0 4)} assume !(0 == ~cond); {21811#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:05,636 INFO L290 TraceCheckUtils]: 49: Hoare triple {21811#(<= ~counter~0 4)} assume true; {21811#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:05,637 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {21811#(<= ~counter~0 4)} {21811#(<= ~counter~0 4)} #63#return; {21811#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:05,637 INFO L290 TraceCheckUtils]: 51: Hoare triple {21811#(<= ~counter~0 4)} assume !!(0 != ~r~0); {21811#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:05,638 INFO L290 TraceCheckUtils]: 52: Hoare triple {21811#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21811#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:05,638 INFO L290 TraceCheckUtils]: 53: Hoare triple {21811#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21839#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:05,639 INFO L290 TraceCheckUtils]: 54: Hoare triple {21839#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {21839#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:05,640 INFO L272 TraceCheckUtils]: 55: Hoare triple {21839#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21839#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:05,640 INFO L290 TraceCheckUtils]: 56: Hoare triple {21839#(<= ~counter~0 5)} ~cond := #in~cond; {21839#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:05,641 INFO L290 TraceCheckUtils]: 57: Hoare triple {21839#(<= ~counter~0 5)} assume !(0 == ~cond); {21839#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:05,641 INFO L290 TraceCheckUtils]: 58: Hoare triple {21839#(<= ~counter~0 5)} assume true; {21839#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:05,642 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {21839#(<= ~counter~0 5)} {21839#(<= ~counter~0 5)} #63#return; {21839#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:05,643 INFO L290 TraceCheckUtils]: 60: Hoare triple {21839#(<= ~counter~0 5)} assume !!(0 != ~r~0); {21839#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:05,643 INFO L290 TraceCheckUtils]: 61: Hoare triple {21839#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21839#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:05,644 INFO L290 TraceCheckUtils]: 62: Hoare triple {21839#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21867#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:05,645 INFO L290 TraceCheckUtils]: 63: Hoare triple {21867#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {21867#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:05,645 INFO L272 TraceCheckUtils]: 64: Hoare triple {21867#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21867#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:05,646 INFO L290 TraceCheckUtils]: 65: Hoare triple {21867#(<= ~counter~0 6)} ~cond := #in~cond; {21867#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:05,646 INFO L290 TraceCheckUtils]: 66: Hoare triple {21867#(<= ~counter~0 6)} assume !(0 == ~cond); {21867#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:05,646 INFO L290 TraceCheckUtils]: 67: Hoare triple {21867#(<= ~counter~0 6)} assume true; {21867#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:05,647 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {21867#(<= ~counter~0 6)} {21867#(<= ~counter~0 6)} #63#return; {21867#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:05,647 INFO L290 TraceCheckUtils]: 69: Hoare triple {21867#(<= ~counter~0 6)} assume !!(0 != ~r~0); {21867#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:05,648 INFO L290 TraceCheckUtils]: 70: Hoare triple {21867#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21867#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:05,648 INFO L290 TraceCheckUtils]: 71: Hoare triple {21867#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21895#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:05,649 INFO L290 TraceCheckUtils]: 72: Hoare triple {21895#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {21895#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:05,649 INFO L272 TraceCheckUtils]: 73: Hoare triple {21895#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21895#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:05,650 INFO L290 TraceCheckUtils]: 74: Hoare triple {21895#(<= ~counter~0 7)} ~cond := #in~cond; {21895#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:05,650 INFO L290 TraceCheckUtils]: 75: Hoare triple {21895#(<= ~counter~0 7)} assume !(0 == ~cond); {21895#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:05,650 INFO L290 TraceCheckUtils]: 76: Hoare triple {21895#(<= ~counter~0 7)} assume true; {21895#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:05,651 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {21895#(<= ~counter~0 7)} {21895#(<= ~counter~0 7)} #63#return; {21895#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:05,651 INFO L290 TraceCheckUtils]: 78: Hoare triple {21895#(<= ~counter~0 7)} assume !!(0 != ~r~0); {21895#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:05,652 INFO L290 TraceCheckUtils]: 79: Hoare triple {21895#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21895#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:05,652 INFO L290 TraceCheckUtils]: 80: Hoare triple {21895#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21923#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:05,653 INFO L290 TraceCheckUtils]: 81: Hoare triple {21923#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {21923#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:05,653 INFO L272 TraceCheckUtils]: 82: Hoare triple {21923#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21923#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:05,654 INFO L290 TraceCheckUtils]: 83: Hoare triple {21923#(<= ~counter~0 8)} ~cond := #in~cond; {21923#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:05,654 INFO L290 TraceCheckUtils]: 84: Hoare triple {21923#(<= ~counter~0 8)} assume !(0 == ~cond); {21923#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:05,655 INFO L290 TraceCheckUtils]: 85: Hoare triple {21923#(<= ~counter~0 8)} assume true; {21923#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:05,655 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {21923#(<= ~counter~0 8)} {21923#(<= ~counter~0 8)} #63#return; {21923#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:05,656 INFO L290 TraceCheckUtils]: 87: Hoare triple {21923#(<= ~counter~0 8)} assume !!(0 != ~r~0); {21923#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:05,656 INFO L290 TraceCheckUtils]: 88: Hoare triple {21923#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21923#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:05,657 INFO L290 TraceCheckUtils]: 89: Hoare triple {21923#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21951#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:05,657 INFO L290 TraceCheckUtils]: 90: Hoare triple {21951#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {21951#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:05,658 INFO L272 TraceCheckUtils]: 91: Hoare triple {21951#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21951#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:05,658 INFO L290 TraceCheckUtils]: 92: Hoare triple {21951#(<= ~counter~0 9)} ~cond := #in~cond; {21951#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:05,658 INFO L290 TraceCheckUtils]: 93: Hoare triple {21951#(<= ~counter~0 9)} assume !(0 == ~cond); {21951#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:05,659 INFO L290 TraceCheckUtils]: 94: Hoare triple {21951#(<= ~counter~0 9)} assume true; {21951#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:05,659 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {21951#(<= ~counter~0 9)} {21951#(<= ~counter~0 9)} #63#return; {21951#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:05,660 INFO L290 TraceCheckUtils]: 96: Hoare triple {21951#(<= ~counter~0 9)} assume !!(0 != ~r~0); {21951#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:05,660 INFO L290 TraceCheckUtils]: 97: Hoare triple {21951#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21951#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:05,661 INFO L290 TraceCheckUtils]: 98: Hoare triple {21951#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21979#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:05,661 INFO L290 TraceCheckUtils]: 99: Hoare triple {21979#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {21979#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:05,662 INFO L272 TraceCheckUtils]: 100: Hoare triple {21979#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21979#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:05,662 INFO L290 TraceCheckUtils]: 101: Hoare triple {21979#(<= ~counter~0 10)} ~cond := #in~cond; {21979#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:05,662 INFO L290 TraceCheckUtils]: 102: Hoare triple {21979#(<= ~counter~0 10)} assume !(0 == ~cond); {21979#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:05,663 INFO L290 TraceCheckUtils]: 103: Hoare triple {21979#(<= ~counter~0 10)} assume true; {21979#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:05,663 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {21979#(<= ~counter~0 10)} {21979#(<= ~counter~0 10)} #63#return; {21979#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:05,664 INFO L290 TraceCheckUtils]: 105: Hoare triple {21979#(<= ~counter~0 10)} assume !!(0 != ~r~0); {21979#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:05,664 INFO L290 TraceCheckUtils]: 106: Hoare triple {21979#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21979#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:05,665 INFO L290 TraceCheckUtils]: 107: Hoare triple {21979#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22007#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:05,665 INFO L290 TraceCheckUtils]: 108: Hoare triple {22007#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {22007#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:05,666 INFO L272 TraceCheckUtils]: 109: Hoare triple {22007#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {22007#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:05,666 INFO L290 TraceCheckUtils]: 110: Hoare triple {22007#(<= ~counter~0 11)} ~cond := #in~cond; {22007#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:05,666 INFO L290 TraceCheckUtils]: 111: Hoare triple {22007#(<= ~counter~0 11)} assume !(0 == ~cond); {22007#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:05,667 INFO L290 TraceCheckUtils]: 112: Hoare triple {22007#(<= ~counter~0 11)} assume true; {22007#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:05,667 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {22007#(<= ~counter~0 11)} {22007#(<= ~counter~0 11)} #63#return; {22007#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:05,668 INFO L290 TraceCheckUtils]: 114: Hoare triple {22007#(<= ~counter~0 11)} assume !!(0 != ~r~0); {22007#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:05,668 INFO L290 TraceCheckUtils]: 115: Hoare triple {22007#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22007#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:05,669 INFO L290 TraceCheckUtils]: 116: Hoare triple {22007#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22035#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:05,669 INFO L290 TraceCheckUtils]: 117: Hoare triple {22035#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {22035#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:05,670 INFO L272 TraceCheckUtils]: 118: Hoare triple {22035#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {22035#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:05,670 INFO L290 TraceCheckUtils]: 119: Hoare triple {22035#(<= ~counter~0 12)} ~cond := #in~cond; {22035#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:05,670 INFO L290 TraceCheckUtils]: 120: Hoare triple {22035#(<= ~counter~0 12)} assume !(0 == ~cond); {22035#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:05,671 INFO L290 TraceCheckUtils]: 121: Hoare triple {22035#(<= ~counter~0 12)} assume true; {22035#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:05,672 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {22035#(<= ~counter~0 12)} {22035#(<= ~counter~0 12)} #63#return; {22035#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:05,672 INFO L290 TraceCheckUtils]: 123: Hoare triple {22035#(<= ~counter~0 12)} assume !!(0 != ~r~0); {22035#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:05,672 INFO L290 TraceCheckUtils]: 124: Hoare triple {22035#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22035#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:05,673 INFO L290 TraceCheckUtils]: 125: Hoare triple {22035#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22063#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:05,673 INFO L290 TraceCheckUtils]: 126: Hoare triple {22063#(<= ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {22063#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:05,674 INFO L272 TraceCheckUtils]: 127: Hoare triple {22063#(<= ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {22063#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:05,674 INFO L290 TraceCheckUtils]: 128: Hoare triple {22063#(<= ~counter~0 13)} ~cond := #in~cond; {22063#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:05,675 INFO L290 TraceCheckUtils]: 129: Hoare triple {22063#(<= ~counter~0 13)} assume !(0 == ~cond); {22063#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:05,675 INFO L290 TraceCheckUtils]: 130: Hoare triple {22063#(<= ~counter~0 13)} assume true; {22063#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:05,676 INFO L284 TraceCheckUtils]: 131: Hoare quadruple {22063#(<= ~counter~0 13)} {22063#(<= ~counter~0 13)} #63#return; {22063#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:05,676 INFO L290 TraceCheckUtils]: 132: Hoare triple {22063#(<= ~counter~0 13)} assume !!(0 != ~r~0); {22063#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:05,676 INFO L290 TraceCheckUtils]: 133: Hoare triple {22063#(<= ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22063#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:05,677 INFO L290 TraceCheckUtils]: 134: Hoare triple {22063#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22091#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:05,677 INFO L290 TraceCheckUtils]: 135: Hoare triple {22091#(<= ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {22091#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:05,678 INFO L272 TraceCheckUtils]: 136: Hoare triple {22091#(<= ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {22091#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:05,678 INFO L290 TraceCheckUtils]: 137: Hoare triple {22091#(<= ~counter~0 14)} ~cond := #in~cond; {22091#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:05,679 INFO L290 TraceCheckUtils]: 138: Hoare triple {22091#(<= ~counter~0 14)} assume !(0 == ~cond); {22091#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:05,679 INFO L290 TraceCheckUtils]: 139: Hoare triple {22091#(<= ~counter~0 14)} assume true; {22091#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:05,680 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {22091#(<= ~counter~0 14)} {22091#(<= ~counter~0 14)} #63#return; {22091#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:05,680 INFO L290 TraceCheckUtils]: 141: Hoare triple {22091#(<= ~counter~0 14)} assume !!(0 != ~r~0); {22091#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:05,680 INFO L290 TraceCheckUtils]: 142: Hoare triple {22091#(<= ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22091#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:05,681 INFO L290 TraceCheckUtils]: 143: Hoare triple {22091#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22119#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:05,681 INFO L290 TraceCheckUtils]: 144: Hoare triple {22119#(<= ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {22119#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:05,682 INFO L272 TraceCheckUtils]: 145: Hoare triple {22119#(<= ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {22119#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:05,682 INFO L290 TraceCheckUtils]: 146: Hoare triple {22119#(<= ~counter~0 15)} ~cond := #in~cond; {22119#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:05,683 INFO L290 TraceCheckUtils]: 147: Hoare triple {22119#(<= ~counter~0 15)} assume !(0 == ~cond); {22119#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:05,683 INFO L290 TraceCheckUtils]: 148: Hoare triple {22119#(<= ~counter~0 15)} assume true; {22119#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:05,684 INFO L284 TraceCheckUtils]: 149: Hoare quadruple {22119#(<= ~counter~0 15)} {22119#(<= ~counter~0 15)} #63#return; {22119#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:05,684 INFO L290 TraceCheckUtils]: 150: Hoare triple {22119#(<= ~counter~0 15)} assume !!(0 != ~r~0); {22119#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:05,685 INFO L290 TraceCheckUtils]: 151: Hoare triple {22119#(<= ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22119#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:05,685 INFO L290 TraceCheckUtils]: 152: Hoare triple {22119#(<= ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22147#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:05,686 INFO L290 TraceCheckUtils]: 153: Hoare triple {22147#(<= ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {22147#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:05,687 INFO L272 TraceCheckUtils]: 154: Hoare triple {22147#(<= ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {22147#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:05,687 INFO L290 TraceCheckUtils]: 155: Hoare triple {22147#(<= ~counter~0 16)} ~cond := #in~cond; {22147#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:05,687 INFO L290 TraceCheckUtils]: 156: Hoare triple {22147#(<= ~counter~0 16)} assume !(0 == ~cond); {22147#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:05,688 INFO L290 TraceCheckUtils]: 157: Hoare triple {22147#(<= ~counter~0 16)} assume true; {22147#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:05,688 INFO L284 TraceCheckUtils]: 158: Hoare quadruple {22147#(<= ~counter~0 16)} {22147#(<= ~counter~0 16)} #63#return; {22147#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:05,689 INFO L290 TraceCheckUtils]: 159: Hoare triple {22147#(<= ~counter~0 16)} assume !!(0 != ~r~0); {22147#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:05,689 INFO L290 TraceCheckUtils]: 160: Hoare triple {22147#(<= ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22147#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:05,690 INFO L290 TraceCheckUtils]: 161: Hoare triple {22147#(<= ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22175#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:05,690 INFO L290 TraceCheckUtils]: 162: Hoare triple {22175#(<= ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {22175#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:05,691 INFO L272 TraceCheckUtils]: 163: Hoare triple {22175#(<= ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {22175#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:05,691 INFO L290 TraceCheckUtils]: 164: Hoare triple {22175#(<= ~counter~0 17)} ~cond := #in~cond; {22175#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:05,691 INFO L290 TraceCheckUtils]: 165: Hoare triple {22175#(<= ~counter~0 17)} assume !(0 == ~cond); {22175#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:05,692 INFO L290 TraceCheckUtils]: 166: Hoare triple {22175#(<= ~counter~0 17)} assume true; {22175#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:05,692 INFO L284 TraceCheckUtils]: 167: Hoare quadruple {22175#(<= ~counter~0 17)} {22175#(<= ~counter~0 17)} #63#return; {22175#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:05,693 INFO L290 TraceCheckUtils]: 168: Hoare triple {22175#(<= ~counter~0 17)} assume !!(0 != ~r~0); {22175#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:05,693 INFO L290 TraceCheckUtils]: 169: Hoare triple {22175#(<= ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22175#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:05,693 INFO L290 TraceCheckUtils]: 170: Hoare triple {22175#(<= ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22203#(<= |main_#t~post6| 17)} is VALID [2022-04-08 06:09:05,694 INFO L290 TraceCheckUtils]: 171: Hoare triple {22203#(<= |main_#t~post6| 17)} assume !(#t~post6 < 20);havoc #t~post6; {21671#false} is VALID [2022-04-08 06:09:05,694 INFO L272 TraceCheckUtils]: 172: Hoare triple {21671#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21671#false} is VALID [2022-04-08 06:09:05,694 INFO L290 TraceCheckUtils]: 173: Hoare triple {21671#false} ~cond := #in~cond; {21671#false} is VALID [2022-04-08 06:09:05,694 INFO L290 TraceCheckUtils]: 174: Hoare triple {21671#false} assume 0 == ~cond; {21671#false} is VALID [2022-04-08 06:09:05,694 INFO L290 TraceCheckUtils]: 175: Hoare triple {21671#false} assume !false; {21671#false} is VALID [2022-04-08 06:09:05,695 INFO L134 CoverageAnalysis]: Checked inductivity of 1296 backedges. 34 proven. 1258 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:09:05,695 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:09:06,608 INFO L290 TraceCheckUtils]: 175: Hoare triple {21671#false} assume !false; {21671#false} is VALID [2022-04-08 06:09:06,608 INFO L290 TraceCheckUtils]: 174: Hoare triple {21671#false} assume 0 == ~cond; {21671#false} is VALID [2022-04-08 06:09:06,608 INFO L290 TraceCheckUtils]: 173: Hoare triple {21671#false} ~cond := #in~cond; {21671#false} is VALID [2022-04-08 06:09:06,608 INFO L272 TraceCheckUtils]: 172: Hoare triple {21671#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21671#false} is VALID [2022-04-08 06:09:06,608 INFO L290 TraceCheckUtils]: 171: Hoare triple {22231#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {21671#false} is VALID [2022-04-08 06:09:06,609 INFO L290 TraceCheckUtils]: 170: Hoare triple {22235#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22231#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:09:06,609 INFO L290 TraceCheckUtils]: 169: Hoare triple {22235#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22235#(< ~counter~0 20)} is VALID [2022-04-08 06:09:06,609 INFO L290 TraceCheckUtils]: 168: Hoare triple {22235#(< ~counter~0 20)} assume !!(0 != ~r~0); {22235#(< ~counter~0 20)} is VALID [2022-04-08 06:09:06,610 INFO L284 TraceCheckUtils]: 167: Hoare quadruple {21670#true} {22235#(< ~counter~0 20)} #63#return; {22235#(< ~counter~0 20)} is VALID [2022-04-08 06:09:06,610 INFO L290 TraceCheckUtils]: 166: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,610 INFO L290 TraceCheckUtils]: 165: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,610 INFO L290 TraceCheckUtils]: 164: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,610 INFO L272 TraceCheckUtils]: 163: Hoare triple {22235#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,610 INFO L290 TraceCheckUtils]: 162: Hoare triple {22235#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {22235#(< ~counter~0 20)} is VALID [2022-04-08 06:09:06,611 INFO L290 TraceCheckUtils]: 161: Hoare triple {22263#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22235#(< ~counter~0 20)} is VALID [2022-04-08 06:09:06,611 INFO L290 TraceCheckUtils]: 160: Hoare triple {22263#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22263#(< ~counter~0 19)} is VALID [2022-04-08 06:09:06,611 INFO L290 TraceCheckUtils]: 159: Hoare triple {22263#(< ~counter~0 19)} assume !!(0 != ~r~0); {22263#(< ~counter~0 19)} is VALID [2022-04-08 06:09:06,612 INFO L284 TraceCheckUtils]: 158: Hoare quadruple {21670#true} {22263#(< ~counter~0 19)} #63#return; {22263#(< ~counter~0 19)} is VALID [2022-04-08 06:09:06,612 INFO L290 TraceCheckUtils]: 157: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,612 INFO L290 TraceCheckUtils]: 156: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,612 INFO L290 TraceCheckUtils]: 155: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,612 INFO L272 TraceCheckUtils]: 154: Hoare triple {22263#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,612 INFO L290 TraceCheckUtils]: 153: Hoare triple {22263#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {22263#(< ~counter~0 19)} is VALID [2022-04-08 06:09:06,613 INFO L290 TraceCheckUtils]: 152: Hoare triple {22175#(<= ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22263#(< ~counter~0 19)} is VALID [2022-04-08 06:09:06,613 INFO L290 TraceCheckUtils]: 151: Hoare triple {22175#(<= ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22175#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:06,613 INFO L290 TraceCheckUtils]: 150: Hoare triple {22175#(<= ~counter~0 17)} assume !!(0 != ~r~0); {22175#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:06,614 INFO L284 TraceCheckUtils]: 149: Hoare quadruple {21670#true} {22175#(<= ~counter~0 17)} #63#return; {22175#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:06,614 INFO L290 TraceCheckUtils]: 148: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,614 INFO L290 TraceCheckUtils]: 147: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,614 INFO L290 TraceCheckUtils]: 146: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,614 INFO L272 TraceCheckUtils]: 145: Hoare triple {22175#(<= ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,614 INFO L290 TraceCheckUtils]: 144: Hoare triple {22175#(<= ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {22175#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:06,615 INFO L290 TraceCheckUtils]: 143: Hoare triple {22147#(<= ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22175#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:06,615 INFO L290 TraceCheckUtils]: 142: Hoare triple {22147#(<= ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22147#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:06,615 INFO L290 TraceCheckUtils]: 141: Hoare triple {22147#(<= ~counter~0 16)} assume !!(0 != ~r~0); {22147#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:06,616 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {21670#true} {22147#(<= ~counter~0 16)} #63#return; {22147#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:06,616 INFO L290 TraceCheckUtils]: 139: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,616 INFO L290 TraceCheckUtils]: 138: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,616 INFO L290 TraceCheckUtils]: 137: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,616 INFO L272 TraceCheckUtils]: 136: Hoare triple {22147#(<= ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,616 INFO L290 TraceCheckUtils]: 135: Hoare triple {22147#(<= ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {22147#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:06,617 INFO L290 TraceCheckUtils]: 134: Hoare triple {22119#(<= ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22147#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:06,617 INFO L290 TraceCheckUtils]: 133: Hoare triple {22119#(<= ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22119#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:06,617 INFO L290 TraceCheckUtils]: 132: Hoare triple {22119#(<= ~counter~0 15)} assume !!(0 != ~r~0); {22119#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:06,618 INFO L284 TraceCheckUtils]: 131: Hoare quadruple {21670#true} {22119#(<= ~counter~0 15)} #63#return; {22119#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:06,618 INFO L290 TraceCheckUtils]: 130: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,618 INFO L290 TraceCheckUtils]: 129: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,618 INFO L290 TraceCheckUtils]: 128: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,618 INFO L272 TraceCheckUtils]: 127: Hoare triple {22119#(<= ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,618 INFO L290 TraceCheckUtils]: 126: Hoare triple {22119#(<= ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {22119#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:06,619 INFO L290 TraceCheckUtils]: 125: Hoare triple {22091#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22119#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:06,619 INFO L290 TraceCheckUtils]: 124: Hoare triple {22091#(<= ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22091#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:06,619 INFO L290 TraceCheckUtils]: 123: Hoare triple {22091#(<= ~counter~0 14)} assume !!(0 != ~r~0); {22091#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:06,620 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {21670#true} {22091#(<= ~counter~0 14)} #63#return; {22091#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:06,620 INFO L290 TraceCheckUtils]: 121: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,620 INFO L290 TraceCheckUtils]: 120: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,620 INFO L290 TraceCheckUtils]: 119: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,620 INFO L272 TraceCheckUtils]: 118: Hoare triple {22091#(<= ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,620 INFO L290 TraceCheckUtils]: 117: Hoare triple {22091#(<= ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {22091#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:06,621 INFO L290 TraceCheckUtils]: 116: Hoare triple {22063#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22091#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:06,621 INFO L290 TraceCheckUtils]: 115: Hoare triple {22063#(<= ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22063#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:06,621 INFO L290 TraceCheckUtils]: 114: Hoare triple {22063#(<= ~counter~0 13)} assume !!(0 != ~r~0); {22063#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:06,622 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {21670#true} {22063#(<= ~counter~0 13)} #63#return; {22063#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:06,622 INFO L290 TraceCheckUtils]: 112: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,622 INFO L290 TraceCheckUtils]: 111: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,622 INFO L290 TraceCheckUtils]: 110: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,622 INFO L272 TraceCheckUtils]: 109: Hoare triple {22063#(<= ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,622 INFO L290 TraceCheckUtils]: 108: Hoare triple {22063#(<= ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {22063#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:06,623 INFO L290 TraceCheckUtils]: 107: Hoare triple {22035#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22063#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:06,623 INFO L290 TraceCheckUtils]: 106: Hoare triple {22035#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22035#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:06,623 INFO L290 TraceCheckUtils]: 105: Hoare triple {22035#(<= ~counter~0 12)} assume !!(0 != ~r~0); {22035#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:06,624 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {21670#true} {22035#(<= ~counter~0 12)} #63#return; {22035#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:06,624 INFO L290 TraceCheckUtils]: 103: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,624 INFO L290 TraceCheckUtils]: 102: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,624 INFO L290 TraceCheckUtils]: 101: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,624 INFO L272 TraceCheckUtils]: 100: Hoare triple {22035#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,624 INFO L290 TraceCheckUtils]: 99: Hoare triple {22035#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {22035#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:06,625 INFO L290 TraceCheckUtils]: 98: Hoare triple {22007#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22035#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:06,625 INFO L290 TraceCheckUtils]: 97: Hoare triple {22007#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22007#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:06,625 INFO L290 TraceCheckUtils]: 96: Hoare triple {22007#(<= ~counter~0 11)} assume !!(0 != ~r~0); {22007#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:06,626 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {21670#true} {22007#(<= ~counter~0 11)} #63#return; {22007#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:06,626 INFO L290 TraceCheckUtils]: 94: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,626 INFO L290 TraceCheckUtils]: 93: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,626 INFO L290 TraceCheckUtils]: 92: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,626 INFO L272 TraceCheckUtils]: 91: Hoare triple {22007#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,626 INFO L290 TraceCheckUtils]: 90: Hoare triple {22007#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {22007#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:06,627 INFO L290 TraceCheckUtils]: 89: Hoare triple {21979#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22007#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:06,628 INFO L290 TraceCheckUtils]: 88: Hoare triple {21979#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21979#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:06,628 INFO L290 TraceCheckUtils]: 87: Hoare triple {21979#(<= ~counter~0 10)} assume !!(0 != ~r~0); {21979#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:06,629 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {21670#true} {21979#(<= ~counter~0 10)} #63#return; {21979#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:06,629 INFO L290 TraceCheckUtils]: 85: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,629 INFO L290 TraceCheckUtils]: 84: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,629 INFO L290 TraceCheckUtils]: 83: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,629 INFO L272 TraceCheckUtils]: 82: Hoare triple {21979#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,629 INFO L290 TraceCheckUtils]: 81: Hoare triple {21979#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {21979#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:06,630 INFO L290 TraceCheckUtils]: 80: Hoare triple {21951#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21979#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:06,630 INFO L290 TraceCheckUtils]: 79: Hoare triple {21951#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21951#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:06,630 INFO L290 TraceCheckUtils]: 78: Hoare triple {21951#(<= ~counter~0 9)} assume !!(0 != ~r~0); {21951#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:06,631 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {21670#true} {21951#(<= ~counter~0 9)} #63#return; {21951#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:06,631 INFO L290 TraceCheckUtils]: 76: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,631 INFO L290 TraceCheckUtils]: 75: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,631 INFO L290 TraceCheckUtils]: 74: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,631 INFO L272 TraceCheckUtils]: 73: Hoare triple {21951#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,631 INFO L290 TraceCheckUtils]: 72: Hoare triple {21951#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {21951#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:06,632 INFO L290 TraceCheckUtils]: 71: Hoare triple {21923#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21951#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:06,632 INFO L290 TraceCheckUtils]: 70: Hoare triple {21923#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21923#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:06,632 INFO L290 TraceCheckUtils]: 69: Hoare triple {21923#(<= ~counter~0 8)} assume !!(0 != ~r~0); {21923#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:06,633 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {21670#true} {21923#(<= ~counter~0 8)} #63#return; {21923#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:06,633 INFO L290 TraceCheckUtils]: 67: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,633 INFO L290 TraceCheckUtils]: 66: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,633 INFO L290 TraceCheckUtils]: 65: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,633 INFO L272 TraceCheckUtils]: 64: Hoare triple {21923#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,633 INFO L290 TraceCheckUtils]: 63: Hoare triple {21923#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {21923#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:06,634 INFO L290 TraceCheckUtils]: 62: Hoare triple {21895#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21923#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:06,634 INFO L290 TraceCheckUtils]: 61: Hoare triple {21895#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21895#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:06,634 INFO L290 TraceCheckUtils]: 60: Hoare triple {21895#(<= ~counter~0 7)} assume !!(0 != ~r~0); {21895#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:06,635 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {21670#true} {21895#(<= ~counter~0 7)} #63#return; {21895#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:06,635 INFO L290 TraceCheckUtils]: 58: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,635 INFO L290 TraceCheckUtils]: 57: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,635 INFO L290 TraceCheckUtils]: 56: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,635 INFO L272 TraceCheckUtils]: 55: Hoare triple {21895#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,635 INFO L290 TraceCheckUtils]: 54: Hoare triple {21895#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {21895#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:06,636 INFO L290 TraceCheckUtils]: 53: Hoare triple {21867#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21895#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:06,636 INFO L290 TraceCheckUtils]: 52: Hoare triple {21867#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21867#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:06,636 INFO L290 TraceCheckUtils]: 51: Hoare triple {21867#(<= ~counter~0 6)} assume !!(0 != ~r~0); {21867#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:06,637 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {21670#true} {21867#(<= ~counter~0 6)} #63#return; {21867#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:06,637 INFO L290 TraceCheckUtils]: 49: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,637 INFO L290 TraceCheckUtils]: 48: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,637 INFO L290 TraceCheckUtils]: 47: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,637 INFO L272 TraceCheckUtils]: 46: Hoare triple {21867#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,637 INFO L290 TraceCheckUtils]: 45: Hoare triple {21867#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {21867#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:06,638 INFO L290 TraceCheckUtils]: 44: Hoare triple {21839#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21867#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:06,638 INFO L290 TraceCheckUtils]: 43: Hoare triple {21839#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21839#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:06,638 INFO L290 TraceCheckUtils]: 42: Hoare triple {21839#(<= ~counter~0 5)} assume !!(0 != ~r~0); {21839#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:06,639 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21670#true} {21839#(<= ~counter~0 5)} #63#return; {21839#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:06,639 INFO L290 TraceCheckUtils]: 40: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,639 INFO L290 TraceCheckUtils]: 39: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,639 INFO L290 TraceCheckUtils]: 38: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,639 INFO L272 TraceCheckUtils]: 37: Hoare triple {21839#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,639 INFO L290 TraceCheckUtils]: 36: Hoare triple {21839#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {21839#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:06,639 INFO L290 TraceCheckUtils]: 35: Hoare triple {21811#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21839#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:06,640 INFO L290 TraceCheckUtils]: 34: Hoare triple {21811#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21811#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:06,640 INFO L290 TraceCheckUtils]: 33: Hoare triple {21811#(<= ~counter~0 4)} assume !!(0 != ~r~0); {21811#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:06,641 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {21670#true} {21811#(<= ~counter~0 4)} #63#return; {21811#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:06,641 INFO L290 TraceCheckUtils]: 31: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,641 INFO L290 TraceCheckUtils]: 30: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,641 INFO L290 TraceCheckUtils]: 29: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,641 INFO L272 TraceCheckUtils]: 28: Hoare triple {21811#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,641 INFO L290 TraceCheckUtils]: 27: Hoare triple {21811#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {21811#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:06,641 INFO L290 TraceCheckUtils]: 26: Hoare triple {21783#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21811#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:06,642 INFO L290 TraceCheckUtils]: 25: Hoare triple {21783#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21783#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:06,642 INFO L290 TraceCheckUtils]: 24: Hoare triple {21783#(<= ~counter~0 3)} assume !!(0 != ~r~0); {21783#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:06,642 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {21670#true} {21783#(<= ~counter~0 3)} #63#return; {21783#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:06,643 INFO L290 TraceCheckUtils]: 22: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,643 INFO L290 TraceCheckUtils]: 21: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,643 INFO L290 TraceCheckUtils]: 20: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,643 INFO L272 TraceCheckUtils]: 19: Hoare triple {21783#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,643 INFO L290 TraceCheckUtils]: 18: Hoare triple {21783#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {21783#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:06,643 INFO L290 TraceCheckUtils]: 17: Hoare triple {21755#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21783#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:06,644 INFO L290 TraceCheckUtils]: 16: Hoare triple {21755#(<= ~counter~0 2)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:06,644 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21670#true} {21755#(<= ~counter~0 2)} #61#return; {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:06,644 INFO L290 TraceCheckUtils]: 14: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,644 INFO L290 TraceCheckUtils]: 13: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,644 INFO L290 TraceCheckUtils]: 12: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,644 INFO L272 TraceCheckUtils]: 11: Hoare triple {21755#(<= ~counter~0 2)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,645 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21670#true} {21755#(<= ~counter~0 2)} #59#return; {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:06,645 INFO L290 TraceCheckUtils]: 9: Hoare triple {21670#true} assume true; {21670#true} is VALID [2022-04-08 06:09:06,645 INFO L290 TraceCheckUtils]: 8: Hoare triple {21670#true} assume !(0 == ~cond); {21670#true} is VALID [2022-04-08 06:09:06,645 INFO L290 TraceCheckUtils]: 7: Hoare triple {21670#true} ~cond := #in~cond; {21670#true} is VALID [2022-04-08 06:09:06,645 INFO L272 TraceCheckUtils]: 6: Hoare triple {21755#(<= ~counter~0 2)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {21670#true} is VALID [2022-04-08 06:09:06,645 INFO L290 TraceCheckUtils]: 5: Hoare triple {21755#(<= ~counter~0 2)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:06,646 INFO L272 TraceCheckUtils]: 4: Hoare triple {21755#(<= ~counter~0 2)} call #t~ret7 := main(); {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:06,646 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21755#(<= ~counter~0 2)} {21670#true} #67#return; {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:06,646 INFO L290 TraceCheckUtils]: 2: Hoare triple {21755#(<= ~counter~0 2)} assume true; {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:06,647 INFO L290 TraceCheckUtils]: 1: Hoare triple {21670#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {21755#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:06,647 INFO L272 TraceCheckUtils]: 0: Hoare triple {21670#true} call ULTIMATE.init(); {21670#true} is VALID [2022-04-08 06:09:06,647 INFO L134 CoverageAnalysis]: Checked inductivity of 1296 backedges. 34 proven. 714 refuted. 0 times theorem prover too weak. 548 trivial. 0 not checked. [2022-04-08 06:09:06,647 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:09:06,647 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [98440702] [2022-04-08 06:09:06,647 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:09:06,647 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1384388470] [2022-04-08 06:09:06,648 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1384388470] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:09:06,648 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:09:06,648 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 21] total 24 [2022-04-08 06:09:06,648 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:09:06,648 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [625497862] [2022-04-08 06:09:06,648 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [625497862] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:09:06,648 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:09:06,648 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [21] imperfect sequences [] total 21 [2022-04-08 06:09:06,648 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [442170345] [2022-04-08 06:09:06,648 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:09:06,649 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 6.238095238095238) internal successors, (131), 20 states have internal predecessors, (131), 20 states have call successors, (22), 20 states have call predecessors, (22), 18 states have return successors, (20), 18 states have call predecessors, (20), 19 states have call successors, (20) Word has length 176 [2022-04-08 06:09:06,649 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:09:06,649 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 21 states have (on average 6.238095238095238) internal successors, (131), 20 states have internal predecessors, (131), 20 states have call successors, (22), 20 states have call predecessors, (22), 18 states have return successors, (20), 18 states have call predecessors, (20), 19 states have call successors, (20) [2022-04-08 06:09:06,770 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 173 edges. 173 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:06,770 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-08 06:09:06,770 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:09:06,771 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-08 06:09:06,771 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:09:06,775 INFO L87 Difference]: Start difference. First operand 173 states and 191 transitions. Second operand has 21 states, 21 states have (on average 6.238095238095238) internal successors, (131), 20 states have internal predecessors, (131), 20 states have call successors, (22), 20 states have call predecessors, (22), 18 states have return successors, (20), 18 states have call predecessors, (20), 19 states have call successors, (20) [2022-04-08 06:09:07,620 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:07,620 INFO L93 Difference]: Finished difference Result 187 states and 206 transitions. [2022-04-08 06:09:07,620 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 38 states. [2022-04-08 06:09:07,620 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 6.238095238095238) internal successors, (131), 20 states have internal predecessors, (131), 20 states have call successors, (22), 20 states have call predecessors, (22), 18 states have return successors, (20), 18 states have call predecessors, (20), 19 states have call successors, (20) Word has length 176 [2022-04-08 06:09:07,621 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:09:07,621 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 6.238095238095238) internal successors, (131), 20 states have internal predecessors, (131), 20 states have call successors, (22), 20 states have call predecessors, (22), 18 states have return successors, (20), 18 states have call predecessors, (20), 19 states have call successors, (20) [2022-04-08 06:09:07,624 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 205 transitions. [2022-04-08 06:09:07,624 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 6.238095238095238) internal successors, (131), 20 states have internal predecessors, (131), 20 states have call successors, (22), 20 states have call predecessors, (22), 18 states have return successors, (20), 18 states have call predecessors, (20), 19 states have call successors, (20) [2022-04-08 06:09:07,627 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 205 transitions. [2022-04-08 06:09:07,628 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 38 states and 205 transitions. [2022-04-08 06:09:07,799 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 205 edges. 205 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:07,802 INFO L225 Difference]: With dead ends: 187 [2022-04-08 06:09:07,803 INFO L226 Difference]: Without dead ends: 182 [2022-04-08 06:09:07,803 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 368 GetRequests, 328 SyntacticMatches, 1 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 174 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=627, Invalid=1013, Unknown=0, NotChecked=0, Total=1640 [2022-04-08 06:09:07,804 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 48 mSDsluCounter, 175 mSDsCounter, 0 mSdLazyCounter, 101 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 48 SdHoareTripleChecker+Valid, 218 SdHoareTripleChecker+Invalid, 115 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 101 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:09:07,804 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [48 Valid, 218 Invalid, 115 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 101 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:09:07,804 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 182 states. [2022-04-08 06:09:08,092 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 182 to 182. [2022-04-08 06:09:08,092 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:09:08,093 INFO L82 GeneralOperation]: Start isEquivalent. First operand 182 states. Second operand has 182 states, 138 states have (on average 1.1376811594202898) internal successors, (157), 138 states have internal predecessors, (157), 23 states have call successors, (23), 22 states have call predecessors, (23), 20 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 06:09:08,093 INFO L74 IsIncluded]: Start isIncluded. First operand 182 states. Second operand has 182 states, 138 states have (on average 1.1376811594202898) internal successors, (157), 138 states have internal predecessors, (157), 23 states have call successors, (23), 22 states have call predecessors, (23), 20 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 06:09:08,093 INFO L87 Difference]: Start difference. First operand 182 states. Second operand has 182 states, 138 states have (on average 1.1376811594202898) internal successors, (157), 138 states have internal predecessors, (157), 23 states have call successors, (23), 22 states have call predecessors, (23), 20 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 06:09:08,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:08,096 INFO L93 Difference]: Finished difference Result 182 states and 201 transitions. [2022-04-08 06:09:08,096 INFO L276 IsEmpty]: Start isEmpty. Operand 182 states and 201 transitions. [2022-04-08 06:09:08,097 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:09:08,097 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:09:08,097 INFO L74 IsIncluded]: Start isIncluded. First operand has 182 states, 138 states have (on average 1.1376811594202898) internal successors, (157), 138 states have internal predecessors, (157), 23 states have call successors, (23), 22 states have call predecessors, (23), 20 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) Second operand 182 states. [2022-04-08 06:09:08,097 INFO L87 Difference]: Start difference. First operand has 182 states, 138 states have (on average 1.1376811594202898) internal successors, (157), 138 states have internal predecessors, (157), 23 states have call successors, (23), 22 states have call predecessors, (23), 20 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) Second operand 182 states. [2022-04-08 06:09:08,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:08,101 INFO L93 Difference]: Finished difference Result 182 states and 201 transitions. [2022-04-08 06:09:08,101 INFO L276 IsEmpty]: Start isEmpty. Operand 182 states and 201 transitions. [2022-04-08 06:09:08,101 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:09:08,101 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:09:08,101 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:09:08,101 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:09:08,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 182 states, 138 states have (on average 1.1376811594202898) internal successors, (157), 138 states have internal predecessors, (157), 23 states have call successors, (23), 22 states have call predecessors, (23), 20 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 06:09:08,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 182 states to 182 states and 201 transitions. [2022-04-08 06:09:08,105 INFO L78 Accepts]: Start accepts. Automaton has 182 states and 201 transitions. Word has length 176 [2022-04-08 06:09:08,105 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:09:08,105 INFO L478 AbstractCegarLoop]: Abstraction has 182 states and 201 transitions. [2022-04-08 06:09:08,106 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 6.238095238095238) internal successors, (131), 20 states have internal predecessors, (131), 20 states have call successors, (22), 20 states have call predecessors, (22), 18 states have return successors, (20), 18 states have call predecessors, (20), 19 states have call successors, (20) [2022-04-08 06:09:08,106 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 182 states and 201 transitions. [2022-04-08 06:09:10,440 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 201 edges. 200 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:10,441 INFO L276 IsEmpty]: Start isEmpty. Operand 182 states and 201 transitions. [2022-04-08 06:09:10,442 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 186 [2022-04-08 06:09:10,442 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:09:10,442 INFO L499 BasicCegarLoop]: trace histogram [19, 19, 18, 18, 18, 18, 18, 18, 18, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:09:10,449 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-08 06:09:10,647 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable20,22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:09:10,648 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:09:10,648 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:09:10,648 INFO L85 PathProgramCache]: Analyzing trace with hash 994740182, now seen corresponding path program 35 times [2022-04-08 06:09:10,648 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:09:10,648 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [948045038] [2022-04-08 06:09:10,649 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:09:10,649 INFO L85 PathProgramCache]: Analyzing trace with hash 994740182, now seen corresponding path program 36 times [2022-04-08 06:09:10,649 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:09:10,649 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [743028612] [2022-04-08 06:09:10,649 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:09:10,649 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:09:10,669 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:09:10,669 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [654689698] [2022-04-08 06:09:10,669 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:09:10,669 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:09:10,669 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:09:10,670 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-08 06:09:10,671 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-08 06:09:12,916 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 19 check-sat command(s) [2022-04-08 06:09:12,917 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:09:12,923 INFO L263 TraceCheckSpWp]: Trace formula consists of 453 conjuncts, 41 conjunts are in the unsatisfiable core [2022-04-08 06:09:12,955 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:09:12,957 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:09:14,012 INFO L272 TraceCheckUtils]: 0: Hoare triple {23885#true} call ULTIMATE.init(); {23885#true} is VALID [2022-04-08 06:09:14,013 INFO L290 TraceCheckUtils]: 1: Hoare triple {23885#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,013 INFO L290 TraceCheckUtils]: 2: Hoare triple {23893#(<= ~counter~0 0)} assume true; {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,014 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23893#(<= ~counter~0 0)} {23885#true} #67#return; {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,014 INFO L272 TraceCheckUtils]: 4: Hoare triple {23893#(<= ~counter~0 0)} call #t~ret7 := main(); {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,014 INFO L290 TraceCheckUtils]: 5: Hoare triple {23893#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,015 INFO L272 TraceCheckUtils]: 6: Hoare triple {23893#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,015 INFO L290 TraceCheckUtils]: 7: Hoare triple {23893#(<= ~counter~0 0)} ~cond := #in~cond; {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,015 INFO L290 TraceCheckUtils]: 8: Hoare triple {23893#(<= ~counter~0 0)} assume !(0 == ~cond); {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,016 INFO L290 TraceCheckUtils]: 9: Hoare triple {23893#(<= ~counter~0 0)} assume true; {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,016 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23893#(<= ~counter~0 0)} {23893#(<= ~counter~0 0)} #59#return; {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,017 INFO L272 TraceCheckUtils]: 11: Hoare triple {23893#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,017 INFO L290 TraceCheckUtils]: 12: Hoare triple {23893#(<= ~counter~0 0)} ~cond := #in~cond; {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,017 INFO L290 TraceCheckUtils]: 13: Hoare triple {23893#(<= ~counter~0 0)} assume !(0 == ~cond); {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,018 INFO L290 TraceCheckUtils]: 14: Hoare triple {23893#(<= ~counter~0 0)} assume true; {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,018 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {23893#(<= ~counter~0 0)} {23893#(<= ~counter~0 0)} #61#return; {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,019 INFO L290 TraceCheckUtils]: 16: Hoare triple {23893#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {23893#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:14,020 INFO L290 TraceCheckUtils]: 17: Hoare triple {23893#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:14,020 INFO L290 TraceCheckUtils]: 18: Hoare triple {23942#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:14,021 INFO L272 TraceCheckUtils]: 19: Hoare triple {23942#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:14,021 INFO L290 TraceCheckUtils]: 20: Hoare triple {23942#(<= ~counter~0 1)} ~cond := #in~cond; {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:14,021 INFO L290 TraceCheckUtils]: 21: Hoare triple {23942#(<= ~counter~0 1)} assume !(0 == ~cond); {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:14,022 INFO L290 TraceCheckUtils]: 22: Hoare triple {23942#(<= ~counter~0 1)} assume true; {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:14,022 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {23942#(<= ~counter~0 1)} {23942#(<= ~counter~0 1)} #63#return; {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:14,022 INFO L290 TraceCheckUtils]: 24: Hoare triple {23942#(<= ~counter~0 1)} assume !!(0 != ~r~0); {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:14,023 INFO L290 TraceCheckUtils]: 25: Hoare triple {23942#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:14,024 INFO L290 TraceCheckUtils]: 26: Hoare triple {23942#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23970#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:14,024 INFO L290 TraceCheckUtils]: 27: Hoare triple {23970#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {23970#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:14,024 INFO L272 TraceCheckUtils]: 28: Hoare triple {23970#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23970#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:14,025 INFO L290 TraceCheckUtils]: 29: Hoare triple {23970#(<= ~counter~0 2)} ~cond := #in~cond; {23970#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:14,025 INFO L290 TraceCheckUtils]: 30: Hoare triple {23970#(<= ~counter~0 2)} assume !(0 == ~cond); {23970#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:14,025 INFO L290 TraceCheckUtils]: 31: Hoare triple {23970#(<= ~counter~0 2)} assume true; {23970#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:14,026 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {23970#(<= ~counter~0 2)} {23970#(<= ~counter~0 2)} #63#return; {23970#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:14,026 INFO L290 TraceCheckUtils]: 33: Hoare triple {23970#(<= ~counter~0 2)} assume !!(0 != ~r~0); {23970#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:14,027 INFO L290 TraceCheckUtils]: 34: Hoare triple {23970#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {23970#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:14,027 INFO L290 TraceCheckUtils]: 35: Hoare triple {23970#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23998#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:14,028 INFO L290 TraceCheckUtils]: 36: Hoare triple {23998#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {23998#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:14,028 INFO L272 TraceCheckUtils]: 37: Hoare triple {23998#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23998#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:14,029 INFO L290 TraceCheckUtils]: 38: Hoare triple {23998#(<= ~counter~0 3)} ~cond := #in~cond; {23998#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:14,029 INFO L290 TraceCheckUtils]: 39: Hoare triple {23998#(<= ~counter~0 3)} assume !(0 == ~cond); {23998#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:14,029 INFO L290 TraceCheckUtils]: 40: Hoare triple {23998#(<= ~counter~0 3)} assume true; {23998#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:14,030 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {23998#(<= ~counter~0 3)} {23998#(<= ~counter~0 3)} #63#return; {23998#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:14,030 INFO L290 TraceCheckUtils]: 42: Hoare triple {23998#(<= ~counter~0 3)} assume !!(0 != ~r~0); {23998#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:14,031 INFO L290 TraceCheckUtils]: 43: Hoare triple {23998#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {23998#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:14,031 INFO L290 TraceCheckUtils]: 44: Hoare triple {23998#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24026#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:14,032 INFO L290 TraceCheckUtils]: 45: Hoare triple {24026#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {24026#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:14,032 INFO L272 TraceCheckUtils]: 46: Hoare triple {24026#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {24026#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:14,033 INFO L290 TraceCheckUtils]: 47: Hoare triple {24026#(<= ~counter~0 4)} ~cond := #in~cond; {24026#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:14,033 INFO L290 TraceCheckUtils]: 48: Hoare triple {24026#(<= ~counter~0 4)} assume !(0 == ~cond); {24026#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:14,033 INFO L290 TraceCheckUtils]: 49: Hoare triple {24026#(<= ~counter~0 4)} assume true; {24026#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:14,034 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {24026#(<= ~counter~0 4)} {24026#(<= ~counter~0 4)} #63#return; {24026#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:14,034 INFO L290 TraceCheckUtils]: 51: Hoare triple {24026#(<= ~counter~0 4)} assume !!(0 != ~r~0); {24026#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:14,035 INFO L290 TraceCheckUtils]: 52: Hoare triple {24026#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24026#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:14,035 INFO L290 TraceCheckUtils]: 53: Hoare triple {24026#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24054#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:14,036 INFO L290 TraceCheckUtils]: 54: Hoare triple {24054#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {24054#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:14,036 INFO L272 TraceCheckUtils]: 55: Hoare triple {24054#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {24054#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:14,037 INFO L290 TraceCheckUtils]: 56: Hoare triple {24054#(<= ~counter~0 5)} ~cond := #in~cond; {24054#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:14,037 INFO L290 TraceCheckUtils]: 57: Hoare triple {24054#(<= ~counter~0 5)} assume !(0 == ~cond); {24054#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:14,037 INFO L290 TraceCheckUtils]: 58: Hoare triple {24054#(<= ~counter~0 5)} assume true; {24054#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:14,038 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {24054#(<= ~counter~0 5)} {24054#(<= ~counter~0 5)} #63#return; {24054#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:14,038 INFO L290 TraceCheckUtils]: 60: Hoare triple {24054#(<= ~counter~0 5)} assume !!(0 != ~r~0); {24054#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:14,039 INFO L290 TraceCheckUtils]: 61: Hoare triple {24054#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24054#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:14,040 INFO L290 TraceCheckUtils]: 62: Hoare triple {24054#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24082#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:14,040 INFO L290 TraceCheckUtils]: 63: Hoare triple {24082#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {24082#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:14,041 INFO L272 TraceCheckUtils]: 64: Hoare triple {24082#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {24082#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:14,041 INFO L290 TraceCheckUtils]: 65: Hoare triple {24082#(<= ~counter~0 6)} ~cond := #in~cond; {24082#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:14,041 INFO L290 TraceCheckUtils]: 66: Hoare triple {24082#(<= ~counter~0 6)} assume !(0 == ~cond); {24082#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:14,042 INFO L290 TraceCheckUtils]: 67: Hoare triple {24082#(<= ~counter~0 6)} assume true; {24082#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:14,042 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {24082#(<= ~counter~0 6)} {24082#(<= ~counter~0 6)} #63#return; {24082#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:14,042 INFO L290 TraceCheckUtils]: 69: Hoare triple {24082#(<= ~counter~0 6)} assume !!(0 != ~r~0); {24082#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:14,043 INFO L290 TraceCheckUtils]: 70: Hoare triple {24082#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24082#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:14,043 INFO L290 TraceCheckUtils]: 71: Hoare triple {24082#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24110#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:14,044 INFO L290 TraceCheckUtils]: 72: Hoare triple {24110#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {24110#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:14,044 INFO L272 TraceCheckUtils]: 73: Hoare triple {24110#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {24110#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:14,045 INFO L290 TraceCheckUtils]: 74: Hoare triple {24110#(<= ~counter~0 7)} ~cond := #in~cond; {24110#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:14,045 INFO L290 TraceCheckUtils]: 75: Hoare triple {24110#(<= ~counter~0 7)} assume !(0 == ~cond); {24110#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:14,045 INFO L290 TraceCheckUtils]: 76: Hoare triple {24110#(<= ~counter~0 7)} assume true; {24110#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:14,046 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {24110#(<= ~counter~0 7)} {24110#(<= ~counter~0 7)} #63#return; {24110#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:14,046 INFO L290 TraceCheckUtils]: 78: Hoare triple {24110#(<= ~counter~0 7)} assume !!(0 != ~r~0); {24110#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:14,047 INFO L290 TraceCheckUtils]: 79: Hoare triple {24110#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24110#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:14,047 INFO L290 TraceCheckUtils]: 80: Hoare triple {24110#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24138#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:14,048 INFO L290 TraceCheckUtils]: 81: Hoare triple {24138#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {24138#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:14,048 INFO L272 TraceCheckUtils]: 82: Hoare triple {24138#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {24138#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:14,049 INFO L290 TraceCheckUtils]: 83: Hoare triple {24138#(<= ~counter~0 8)} ~cond := #in~cond; {24138#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:14,049 INFO L290 TraceCheckUtils]: 84: Hoare triple {24138#(<= ~counter~0 8)} assume !(0 == ~cond); {24138#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:14,049 INFO L290 TraceCheckUtils]: 85: Hoare triple {24138#(<= ~counter~0 8)} assume true; {24138#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:14,050 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {24138#(<= ~counter~0 8)} {24138#(<= ~counter~0 8)} #63#return; {24138#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:14,050 INFO L290 TraceCheckUtils]: 87: Hoare triple {24138#(<= ~counter~0 8)} assume !!(0 != ~r~0); {24138#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:14,051 INFO L290 TraceCheckUtils]: 88: Hoare triple {24138#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24138#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:14,052 INFO L290 TraceCheckUtils]: 89: Hoare triple {24138#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24166#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:14,052 INFO L290 TraceCheckUtils]: 90: Hoare triple {24166#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {24166#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:14,053 INFO L272 TraceCheckUtils]: 91: Hoare triple {24166#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {24166#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:14,053 INFO L290 TraceCheckUtils]: 92: Hoare triple {24166#(<= ~counter~0 9)} ~cond := #in~cond; {24166#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:14,053 INFO L290 TraceCheckUtils]: 93: Hoare triple {24166#(<= ~counter~0 9)} assume !(0 == ~cond); {24166#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:14,054 INFO L290 TraceCheckUtils]: 94: Hoare triple {24166#(<= ~counter~0 9)} assume true; {24166#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:14,054 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {24166#(<= ~counter~0 9)} {24166#(<= ~counter~0 9)} #63#return; {24166#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:14,055 INFO L290 TraceCheckUtils]: 96: Hoare triple {24166#(<= ~counter~0 9)} assume !!(0 != ~r~0); {24166#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:14,055 INFO L290 TraceCheckUtils]: 97: Hoare triple {24166#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24166#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:14,056 INFO L290 TraceCheckUtils]: 98: Hoare triple {24166#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24194#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:14,056 INFO L290 TraceCheckUtils]: 99: Hoare triple {24194#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {24194#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:14,057 INFO L272 TraceCheckUtils]: 100: Hoare triple {24194#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {24194#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:14,057 INFO L290 TraceCheckUtils]: 101: Hoare triple {24194#(<= ~counter~0 10)} ~cond := #in~cond; {24194#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:14,057 INFO L290 TraceCheckUtils]: 102: Hoare triple {24194#(<= ~counter~0 10)} assume !(0 == ~cond); {24194#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:14,058 INFO L290 TraceCheckUtils]: 103: Hoare triple {24194#(<= ~counter~0 10)} assume true; {24194#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:14,058 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {24194#(<= ~counter~0 10)} {24194#(<= ~counter~0 10)} #63#return; {24194#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:14,059 INFO L290 TraceCheckUtils]: 105: Hoare triple {24194#(<= ~counter~0 10)} assume !!(0 != ~r~0); {24194#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:14,059 INFO L290 TraceCheckUtils]: 106: Hoare triple {24194#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24194#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:14,060 INFO L290 TraceCheckUtils]: 107: Hoare triple {24194#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24222#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:14,060 INFO L290 TraceCheckUtils]: 108: Hoare triple {24222#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {24222#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:14,061 INFO L272 TraceCheckUtils]: 109: Hoare triple {24222#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {24222#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:14,061 INFO L290 TraceCheckUtils]: 110: Hoare triple {24222#(<= ~counter~0 11)} ~cond := #in~cond; {24222#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:14,061 INFO L290 TraceCheckUtils]: 111: Hoare triple {24222#(<= ~counter~0 11)} assume !(0 == ~cond); {24222#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:14,062 INFO L290 TraceCheckUtils]: 112: Hoare triple {24222#(<= ~counter~0 11)} assume true; {24222#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:14,062 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {24222#(<= ~counter~0 11)} {24222#(<= ~counter~0 11)} #63#return; {24222#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:14,062 INFO L290 TraceCheckUtils]: 114: Hoare triple {24222#(<= ~counter~0 11)} assume !!(0 != ~r~0); {24222#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:14,063 INFO L290 TraceCheckUtils]: 115: Hoare triple {24222#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24222#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:14,063 INFO L290 TraceCheckUtils]: 116: Hoare triple {24222#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24250#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:14,064 INFO L290 TraceCheckUtils]: 117: Hoare triple {24250#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {24250#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:14,064 INFO L272 TraceCheckUtils]: 118: Hoare triple {24250#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {24250#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:14,065 INFO L290 TraceCheckUtils]: 119: Hoare triple {24250#(<= ~counter~0 12)} ~cond := #in~cond; {24250#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:14,065 INFO L290 TraceCheckUtils]: 120: Hoare triple {24250#(<= ~counter~0 12)} assume !(0 == ~cond); {24250#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:14,065 INFO L290 TraceCheckUtils]: 121: Hoare triple {24250#(<= ~counter~0 12)} assume true; {24250#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:14,066 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {24250#(<= ~counter~0 12)} {24250#(<= ~counter~0 12)} #63#return; {24250#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:14,066 INFO L290 TraceCheckUtils]: 123: Hoare triple {24250#(<= ~counter~0 12)} assume !!(0 != ~r~0); {24250#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:14,067 INFO L290 TraceCheckUtils]: 124: Hoare triple {24250#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24250#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:14,067 INFO L290 TraceCheckUtils]: 125: Hoare triple {24250#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24278#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:14,068 INFO L290 TraceCheckUtils]: 126: Hoare triple {24278#(<= ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {24278#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:14,068 INFO L272 TraceCheckUtils]: 127: Hoare triple {24278#(<= ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {24278#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:14,069 INFO L290 TraceCheckUtils]: 128: Hoare triple {24278#(<= ~counter~0 13)} ~cond := #in~cond; {24278#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:14,069 INFO L290 TraceCheckUtils]: 129: Hoare triple {24278#(<= ~counter~0 13)} assume !(0 == ~cond); {24278#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:14,069 INFO L290 TraceCheckUtils]: 130: Hoare triple {24278#(<= ~counter~0 13)} assume true; {24278#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:14,070 INFO L284 TraceCheckUtils]: 131: Hoare quadruple {24278#(<= ~counter~0 13)} {24278#(<= ~counter~0 13)} #63#return; {24278#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:14,070 INFO L290 TraceCheckUtils]: 132: Hoare triple {24278#(<= ~counter~0 13)} assume !!(0 != ~r~0); {24278#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:14,071 INFO L290 TraceCheckUtils]: 133: Hoare triple {24278#(<= ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24278#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:14,072 INFO L290 TraceCheckUtils]: 134: Hoare triple {24278#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24306#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:14,072 INFO L290 TraceCheckUtils]: 135: Hoare triple {24306#(<= ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {24306#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:14,073 INFO L272 TraceCheckUtils]: 136: Hoare triple {24306#(<= ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {24306#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:14,073 INFO L290 TraceCheckUtils]: 137: Hoare triple {24306#(<= ~counter~0 14)} ~cond := #in~cond; {24306#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:14,073 INFO L290 TraceCheckUtils]: 138: Hoare triple {24306#(<= ~counter~0 14)} assume !(0 == ~cond); {24306#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:14,074 INFO L290 TraceCheckUtils]: 139: Hoare triple {24306#(<= ~counter~0 14)} assume true; {24306#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:14,074 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {24306#(<= ~counter~0 14)} {24306#(<= ~counter~0 14)} #63#return; {24306#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:14,075 INFO L290 TraceCheckUtils]: 141: Hoare triple {24306#(<= ~counter~0 14)} assume !!(0 != ~r~0); {24306#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:14,075 INFO L290 TraceCheckUtils]: 142: Hoare triple {24306#(<= ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24306#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:14,076 INFO L290 TraceCheckUtils]: 143: Hoare triple {24306#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24334#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:14,076 INFO L290 TraceCheckUtils]: 144: Hoare triple {24334#(<= ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {24334#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:14,077 INFO L272 TraceCheckUtils]: 145: Hoare triple {24334#(<= ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {24334#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:14,077 INFO L290 TraceCheckUtils]: 146: Hoare triple {24334#(<= ~counter~0 15)} ~cond := #in~cond; {24334#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:14,077 INFO L290 TraceCheckUtils]: 147: Hoare triple {24334#(<= ~counter~0 15)} assume !(0 == ~cond); {24334#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:14,078 INFO L290 TraceCheckUtils]: 148: Hoare triple {24334#(<= ~counter~0 15)} assume true; {24334#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:14,078 INFO L284 TraceCheckUtils]: 149: Hoare quadruple {24334#(<= ~counter~0 15)} {24334#(<= ~counter~0 15)} #63#return; {24334#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:14,079 INFO L290 TraceCheckUtils]: 150: Hoare triple {24334#(<= ~counter~0 15)} assume !!(0 != ~r~0); {24334#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:14,079 INFO L290 TraceCheckUtils]: 151: Hoare triple {24334#(<= ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24334#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:14,080 INFO L290 TraceCheckUtils]: 152: Hoare triple {24334#(<= ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24362#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:14,080 INFO L290 TraceCheckUtils]: 153: Hoare triple {24362#(<= ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {24362#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:14,081 INFO L272 TraceCheckUtils]: 154: Hoare triple {24362#(<= ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {24362#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:14,081 INFO L290 TraceCheckUtils]: 155: Hoare triple {24362#(<= ~counter~0 16)} ~cond := #in~cond; {24362#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:14,081 INFO L290 TraceCheckUtils]: 156: Hoare triple {24362#(<= ~counter~0 16)} assume !(0 == ~cond); {24362#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:14,082 INFO L290 TraceCheckUtils]: 157: Hoare triple {24362#(<= ~counter~0 16)} assume true; {24362#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:14,082 INFO L284 TraceCheckUtils]: 158: Hoare quadruple {24362#(<= ~counter~0 16)} {24362#(<= ~counter~0 16)} #63#return; {24362#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:14,083 INFO L290 TraceCheckUtils]: 159: Hoare triple {24362#(<= ~counter~0 16)} assume !!(0 != ~r~0); {24362#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:14,083 INFO L290 TraceCheckUtils]: 160: Hoare triple {24362#(<= ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24362#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:14,084 INFO L290 TraceCheckUtils]: 161: Hoare triple {24362#(<= ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24390#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:14,084 INFO L290 TraceCheckUtils]: 162: Hoare triple {24390#(<= ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {24390#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:14,085 INFO L272 TraceCheckUtils]: 163: Hoare triple {24390#(<= ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {24390#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:14,085 INFO L290 TraceCheckUtils]: 164: Hoare triple {24390#(<= ~counter~0 17)} ~cond := #in~cond; {24390#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:14,085 INFO L290 TraceCheckUtils]: 165: Hoare triple {24390#(<= ~counter~0 17)} assume !(0 == ~cond); {24390#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:14,086 INFO L290 TraceCheckUtils]: 166: Hoare triple {24390#(<= ~counter~0 17)} assume true; {24390#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:14,086 INFO L284 TraceCheckUtils]: 167: Hoare quadruple {24390#(<= ~counter~0 17)} {24390#(<= ~counter~0 17)} #63#return; {24390#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:14,087 INFO L290 TraceCheckUtils]: 168: Hoare triple {24390#(<= ~counter~0 17)} assume !!(0 != ~r~0); {24390#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:14,087 INFO L290 TraceCheckUtils]: 169: Hoare triple {24390#(<= ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24390#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:14,088 INFO L290 TraceCheckUtils]: 170: Hoare triple {24390#(<= ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24418#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:14,088 INFO L290 TraceCheckUtils]: 171: Hoare triple {24418#(<= ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {24418#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:14,089 INFO L272 TraceCheckUtils]: 172: Hoare triple {24418#(<= ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {24418#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:14,089 INFO L290 TraceCheckUtils]: 173: Hoare triple {24418#(<= ~counter~0 18)} ~cond := #in~cond; {24418#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:14,090 INFO L290 TraceCheckUtils]: 174: Hoare triple {24418#(<= ~counter~0 18)} assume !(0 == ~cond); {24418#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:14,090 INFO L290 TraceCheckUtils]: 175: Hoare triple {24418#(<= ~counter~0 18)} assume true; {24418#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:14,091 INFO L284 TraceCheckUtils]: 176: Hoare quadruple {24418#(<= ~counter~0 18)} {24418#(<= ~counter~0 18)} #63#return; {24418#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:14,091 INFO L290 TraceCheckUtils]: 177: Hoare triple {24418#(<= ~counter~0 18)} assume !!(0 != ~r~0); {24418#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:14,091 INFO L290 TraceCheckUtils]: 178: Hoare triple {24418#(<= ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24418#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:14,092 INFO L290 TraceCheckUtils]: 179: Hoare triple {24418#(<= ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24446#(<= |main_#t~post6| 18)} is VALID [2022-04-08 06:09:14,092 INFO L290 TraceCheckUtils]: 180: Hoare triple {24446#(<= |main_#t~post6| 18)} assume !(#t~post6 < 20);havoc #t~post6; {23886#false} is VALID [2022-04-08 06:09:14,092 INFO L272 TraceCheckUtils]: 181: Hoare triple {23886#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23886#false} is VALID [2022-04-08 06:09:14,092 INFO L290 TraceCheckUtils]: 182: Hoare triple {23886#false} ~cond := #in~cond; {23886#false} is VALID [2022-04-08 06:09:14,092 INFO L290 TraceCheckUtils]: 183: Hoare triple {23886#false} assume 0 == ~cond; {23886#false} is VALID [2022-04-08 06:09:14,092 INFO L290 TraceCheckUtils]: 184: Hoare triple {23886#false} assume !false; {23886#false} is VALID [2022-04-08 06:09:14,093 INFO L134 CoverageAnalysis]: Checked inductivity of 1453 backedges. 36 proven. 1413 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:09:14,094 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:09:14,985 INFO L290 TraceCheckUtils]: 184: Hoare triple {23886#false} assume !false; {23886#false} is VALID [2022-04-08 06:09:14,985 INFO L290 TraceCheckUtils]: 183: Hoare triple {23886#false} assume 0 == ~cond; {23886#false} is VALID [2022-04-08 06:09:14,985 INFO L290 TraceCheckUtils]: 182: Hoare triple {23886#false} ~cond := #in~cond; {23886#false} is VALID [2022-04-08 06:09:14,985 INFO L272 TraceCheckUtils]: 181: Hoare triple {23886#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23886#false} is VALID [2022-04-08 06:09:14,985 INFO L290 TraceCheckUtils]: 180: Hoare triple {24474#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {23886#false} is VALID [2022-04-08 06:09:14,986 INFO L290 TraceCheckUtils]: 179: Hoare triple {24478#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24474#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:09:14,986 INFO L290 TraceCheckUtils]: 178: Hoare triple {24478#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24478#(< ~counter~0 20)} is VALID [2022-04-08 06:09:14,986 INFO L290 TraceCheckUtils]: 177: Hoare triple {24478#(< ~counter~0 20)} assume !!(0 != ~r~0); {24478#(< ~counter~0 20)} is VALID [2022-04-08 06:09:14,987 INFO L284 TraceCheckUtils]: 176: Hoare quadruple {23885#true} {24478#(< ~counter~0 20)} #63#return; {24478#(< ~counter~0 20)} is VALID [2022-04-08 06:09:14,987 INFO L290 TraceCheckUtils]: 175: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:14,987 INFO L290 TraceCheckUtils]: 174: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:14,987 INFO L290 TraceCheckUtils]: 173: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:14,987 INFO L272 TraceCheckUtils]: 172: Hoare triple {24478#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:14,987 INFO L290 TraceCheckUtils]: 171: Hoare triple {24478#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {24478#(< ~counter~0 20)} is VALID [2022-04-08 06:09:14,988 INFO L290 TraceCheckUtils]: 170: Hoare triple {24418#(<= ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24478#(< ~counter~0 20)} is VALID [2022-04-08 06:09:14,988 INFO L290 TraceCheckUtils]: 169: Hoare triple {24418#(<= ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24418#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:14,988 INFO L290 TraceCheckUtils]: 168: Hoare triple {24418#(<= ~counter~0 18)} assume !!(0 != ~r~0); {24418#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:14,989 INFO L284 TraceCheckUtils]: 167: Hoare quadruple {23885#true} {24418#(<= ~counter~0 18)} #63#return; {24418#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:14,989 INFO L290 TraceCheckUtils]: 166: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:14,989 INFO L290 TraceCheckUtils]: 165: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:14,989 INFO L290 TraceCheckUtils]: 164: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:14,989 INFO L272 TraceCheckUtils]: 163: Hoare triple {24418#(<= ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:14,989 INFO L290 TraceCheckUtils]: 162: Hoare triple {24418#(<= ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {24418#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:14,990 INFO L290 TraceCheckUtils]: 161: Hoare triple {24390#(<= ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24418#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:14,990 INFO L290 TraceCheckUtils]: 160: Hoare triple {24390#(<= ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24390#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:14,990 INFO L290 TraceCheckUtils]: 159: Hoare triple {24390#(<= ~counter~0 17)} assume !!(0 != ~r~0); {24390#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:15,004 INFO L284 TraceCheckUtils]: 158: Hoare quadruple {23885#true} {24390#(<= ~counter~0 17)} #63#return; {24390#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:15,004 INFO L290 TraceCheckUtils]: 157: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,004 INFO L290 TraceCheckUtils]: 156: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,004 INFO L290 TraceCheckUtils]: 155: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,004 INFO L272 TraceCheckUtils]: 154: Hoare triple {24390#(<= ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,005 INFO L290 TraceCheckUtils]: 153: Hoare triple {24390#(<= ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {24390#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:15,006 INFO L290 TraceCheckUtils]: 152: Hoare triple {24362#(<= ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24390#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:15,007 INFO L290 TraceCheckUtils]: 151: Hoare triple {24362#(<= ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24362#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:15,007 INFO L290 TraceCheckUtils]: 150: Hoare triple {24362#(<= ~counter~0 16)} assume !!(0 != ~r~0); {24362#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:15,008 INFO L284 TraceCheckUtils]: 149: Hoare quadruple {23885#true} {24362#(<= ~counter~0 16)} #63#return; {24362#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:15,008 INFO L290 TraceCheckUtils]: 148: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,008 INFO L290 TraceCheckUtils]: 147: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,008 INFO L290 TraceCheckUtils]: 146: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,008 INFO L272 TraceCheckUtils]: 145: Hoare triple {24362#(<= ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,009 INFO L290 TraceCheckUtils]: 144: Hoare triple {24362#(<= ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {24362#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:15,010 INFO L290 TraceCheckUtils]: 143: Hoare triple {24334#(<= ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24362#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:15,010 INFO L290 TraceCheckUtils]: 142: Hoare triple {24334#(<= ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24334#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:15,011 INFO L290 TraceCheckUtils]: 141: Hoare triple {24334#(<= ~counter~0 15)} assume !!(0 != ~r~0); {24334#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:15,012 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {23885#true} {24334#(<= ~counter~0 15)} #63#return; {24334#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:15,012 INFO L290 TraceCheckUtils]: 139: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,012 INFO L290 TraceCheckUtils]: 138: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,012 INFO L290 TraceCheckUtils]: 137: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,012 INFO L272 TraceCheckUtils]: 136: Hoare triple {24334#(<= ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,012 INFO L290 TraceCheckUtils]: 135: Hoare triple {24334#(<= ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {24334#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:15,013 INFO L290 TraceCheckUtils]: 134: Hoare triple {24306#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24334#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:15,014 INFO L290 TraceCheckUtils]: 133: Hoare triple {24306#(<= ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24306#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:15,014 INFO L290 TraceCheckUtils]: 132: Hoare triple {24306#(<= ~counter~0 14)} assume !!(0 != ~r~0); {24306#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:15,015 INFO L284 TraceCheckUtils]: 131: Hoare quadruple {23885#true} {24306#(<= ~counter~0 14)} #63#return; {24306#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:15,015 INFO L290 TraceCheckUtils]: 130: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,015 INFO L290 TraceCheckUtils]: 129: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,015 INFO L290 TraceCheckUtils]: 128: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,015 INFO L272 TraceCheckUtils]: 127: Hoare triple {24306#(<= ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,016 INFO L290 TraceCheckUtils]: 126: Hoare triple {24306#(<= ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {24306#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:15,016 INFO L290 TraceCheckUtils]: 125: Hoare triple {24278#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24306#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:15,017 INFO L290 TraceCheckUtils]: 124: Hoare triple {24278#(<= ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24278#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:15,017 INFO L290 TraceCheckUtils]: 123: Hoare triple {24278#(<= ~counter~0 13)} assume !!(0 != ~r~0); {24278#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:15,018 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {23885#true} {24278#(<= ~counter~0 13)} #63#return; {24278#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:15,018 INFO L290 TraceCheckUtils]: 121: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,018 INFO L290 TraceCheckUtils]: 120: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,018 INFO L290 TraceCheckUtils]: 119: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,018 INFO L272 TraceCheckUtils]: 118: Hoare triple {24278#(<= ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,018 INFO L290 TraceCheckUtils]: 117: Hoare triple {24278#(<= ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {24278#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:15,019 INFO L290 TraceCheckUtils]: 116: Hoare triple {24250#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24278#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:15,019 INFO L290 TraceCheckUtils]: 115: Hoare triple {24250#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24250#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:15,020 INFO L290 TraceCheckUtils]: 114: Hoare triple {24250#(<= ~counter~0 12)} assume !!(0 != ~r~0); {24250#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:15,020 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {23885#true} {24250#(<= ~counter~0 12)} #63#return; {24250#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:15,020 INFO L290 TraceCheckUtils]: 112: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,020 INFO L290 TraceCheckUtils]: 111: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,020 INFO L290 TraceCheckUtils]: 110: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,020 INFO L272 TraceCheckUtils]: 109: Hoare triple {24250#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,021 INFO L290 TraceCheckUtils]: 108: Hoare triple {24250#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {24250#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:15,021 INFO L290 TraceCheckUtils]: 107: Hoare triple {24222#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24250#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:15,021 INFO L290 TraceCheckUtils]: 106: Hoare triple {24222#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24222#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:15,022 INFO L290 TraceCheckUtils]: 105: Hoare triple {24222#(<= ~counter~0 11)} assume !!(0 != ~r~0); {24222#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:15,022 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {23885#true} {24222#(<= ~counter~0 11)} #63#return; {24222#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:15,022 INFO L290 TraceCheckUtils]: 103: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,022 INFO L290 TraceCheckUtils]: 102: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,022 INFO L290 TraceCheckUtils]: 101: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,022 INFO L272 TraceCheckUtils]: 100: Hoare triple {24222#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,023 INFO L290 TraceCheckUtils]: 99: Hoare triple {24222#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {24222#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:15,023 INFO L290 TraceCheckUtils]: 98: Hoare triple {24194#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24222#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:15,023 INFO L290 TraceCheckUtils]: 97: Hoare triple {24194#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24194#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:15,024 INFO L290 TraceCheckUtils]: 96: Hoare triple {24194#(<= ~counter~0 10)} assume !!(0 != ~r~0); {24194#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:15,024 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {23885#true} {24194#(<= ~counter~0 10)} #63#return; {24194#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:15,024 INFO L290 TraceCheckUtils]: 94: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,024 INFO L290 TraceCheckUtils]: 93: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,024 INFO L290 TraceCheckUtils]: 92: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,024 INFO L272 TraceCheckUtils]: 91: Hoare triple {24194#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,025 INFO L290 TraceCheckUtils]: 90: Hoare triple {24194#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {24194#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:15,025 INFO L290 TraceCheckUtils]: 89: Hoare triple {24166#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24194#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:15,025 INFO L290 TraceCheckUtils]: 88: Hoare triple {24166#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24166#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:15,026 INFO L290 TraceCheckUtils]: 87: Hoare triple {24166#(<= ~counter~0 9)} assume !!(0 != ~r~0); {24166#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:15,026 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {23885#true} {24166#(<= ~counter~0 9)} #63#return; {24166#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:15,026 INFO L290 TraceCheckUtils]: 85: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,026 INFO L290 TraceCheckUtils]: 84: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,026 INFO L290 TraceCheckUtils]: 83: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,026 INFO L272 TraceCheckUtils]: 82: Hoare triple {24166#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,027 INFO L290 TraceCheckUtils]: 81: Hoare triple {24166#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {24166#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:15,027 INFO L290 TraceCheckUtils]: 80: Hoare triple {24138#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24166#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:15,027 INFO L290 TraceCheckUtils]: 79: Hoare triple {24138#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24138#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:15,028 INFO L290 TraceCheckUtils]: 78: Hoare triple {24138#(<= ~counter~0 8)} assume !!(0 != ~r~0); {24138#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:15,028 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {23885#true} {24138#(<= ~counter~0 8)} #63#return; {24138#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:15,028 INFO L290 TraceCheckUtils]: 76: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,028 INFO L290 TraceCheckUtils]: 75: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,028 INFO L290 TraceCheckUtils]: 74: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,028 INFO L272 TraceCheckUtils]: 73: Hoare triple {24138#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,029 INFO L290 TraceCheckUtils]: 72: Hoare triple {24138#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {24138#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:15,029 INFO L290 TraceCheckUtils]: 71: Hoare triple {24110#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24138#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:15,029 INFO L290 TraceCheckUtils]: 70: Hoare triple {24110#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24110#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:15,030 INFO L290 TraceCheckUtils]: 69: Hoare triple {24110#(<= ~counter~0 7)} assume !!(0 != ~r~0); {24110#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:15,030 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {23885#true} {24110#(<= ~counter~0 7)} #63#return; {24110#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:15,030 INFO L290 TraceCheckUtils]: 67: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,030 INFO L290 TraceCheckUtils]: 66: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,030 INFO L290 TraceCheckUtils]: 65: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,030 INFO L272 TraceCheckUtils]: 64: Hoare triple {24110#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,031 INFO L290 TraceCheckUtils]: 63: Hoare triple {24110#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {24110#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:15,031 INFO L290 TraceCheckUtils]: 62: Hoare triple {24082#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24110#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:15,031 INFO L290 TraceCheckUtils]: 61: Hoare triple {24082#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24082#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:15,032 INFO L290 TraceCheckUtils]: 60: Hoare triple {24082#(<= ~counter~0 6)} assume !!(0 != ~r~0); {24082#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:15,032 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {23885#true} {24082#(<= ~counter~0 6)} #63#return; {24082#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:15,032 INFO L290 TraceCheckUtils]: 58: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,032 INFO L290 TraceCheckUtils]: 57: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,032 INFO L290 TraceCheckUtils]: 56: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,032 INFO L272 TraceCheckUtils]: 55: Hoare triple {24082#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,033 INFO L290 TraceCheckUtils]: 54: Hoare triple {24082#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {24082#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:15,033 INFO L290 TraceCheckUtils]: 53: Hoare triple {24054#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24082#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:15,033 INFO L290 TraceCheckUtils]: 52: Hoare triple {24054#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24054#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:15,034 INFO L290 TraceCheckUtils]: 51: Hoare triple {24054#(<= ~counter~0 5)} assume !!(0 != ~r~0); {24054#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:15,034 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {23885#true} {24054#(<= ~counter~0 5)} #63#return; {24054#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:15,034 INFO L290 TraceCheckUtils]: 49: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,034 INFO L290 TraceCheckUtils]: 48: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,034 INFO L290 TraceCheckUtils]: 47: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,034 INFO L272 TraceCheckUtils]: 46: Hoare triple {24054#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,035 INFO L290 TraceCheckUtils]: 45: Hoare triple {24054#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {24054#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:15,035 INFO L290 TraceCheckUtils]: 44: Hoare triple {24026#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24054#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:15,035 INFO L290 TraceCheckUtils]: 43: Hoare triple {24026#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24026#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:15,036 INFO L290 TraceCheckUtils]: 42: Hoare triple {24026#(<= ~counter~0 4)} assume !!(0 != ~r~0); {24026#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:15,036 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {23885#true} {24026#(<= ~counter~0 4)} #63#return; {24026#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:15,036 INFO L290 TraceCheckUtils]: 40: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,036 INFO L290 TraceCheckUtils]: 39: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,036 INFO L290 TraceCheckUtils]: 38: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,036 INFO L272 TraceCheckUtils]: 37: Hoare triple {24026#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,037 INFO L290 TraceCheckUtils]: 36: Hoare triple {24026#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {24026#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:15,037 INFO L290 TraceCheckUtils]: 35: Hoare triple {23998#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24026#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:15,037 INFO L290 TraceCheckUtils]: 34: Hoare triple {23998#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {23998#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:15,038 INFO L290 TraceCheckUtils]: 33: Hoare triple {23998#(<= ~counter~0 3)} assume !!(0 != ~r~0); {23998#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:15,038 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {23885#true} {23998#(<= ~counter~0 3)} #63#return; {23998#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:15,038 INFO L290 TraceCheckUtils]: 31: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,038 INFO L290 TraceCheckUtils]: 30: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,038 INFO L290 TraceCheckUtils]: 29: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,038 INFO L272 TraceCheckUtils]: 28: Hoare triple {23998#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,038 INFO L290 TraceCheckUtils]: 27: Hoare triple {23998#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {23998#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:15,039 INFO L290 TraceCheckUtils]: 26: Hoare triple {23970#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23998#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:15,039 INFO L290 TraceCheckUtils]: 25: Hoare triple {23970#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {23970#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:15,040 INFO L290 TraceCheckUtils]: 24: Hoare triple {23970#(<= ~counter~0 2)} assume !!(0 != ~r~0); {23970#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:15,040 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {23885#true} {23970#(<= ~counter~0 2)} #63#return; {23970#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:15,040 INFO L290 TraceCheckUtils]: 22: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,040 INFO L290 TraceCheckUtils]: 21: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,040 INFO L290 TraceCheckUtils]: 20: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,040 INFO L272 TraceCheckUtils]: 19: Hoare triple {23970#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,040 INFO L290 TraceCheckUtils]: 18: Hoare triple {23970#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {23970#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:15,041 INFO L290 TraceCheckUtils]: 17: Hoare triple {23942#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23970#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:15,041 INFO L290 TraceCheckUtils]: 16: Hoare triple {23942#(<= ~counter~0 1)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:15,042 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {23885#true} {23942#(<= ~counter~0 1)} #61#return; {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:15,042 INFO L290 TraceCheckUtils]: 14: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,042 INFO L290 TraceCheckUtils]: 13: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,042 INFO L290 TraceCheckUtils]: 12: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,042 INFO L272 TraceCheckUtils]: 11: Hoare triple {23942#(<= ~counter~0 1)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,042 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23885#true} {23942#(<= ~counter~0 1)} #59#return; {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:15,042 INFO L290 TraceCheckUtils]: 9: Hoare triple {23885#true} assume true; {23885#true} is VALID [2022-04-08 06:09:15,042 INFO L290 TraceCheckUtils]: 8: Hoare triple {23885#true} assume !(0 == ~cond); {23885#true} is VALID [2022-04-08 06:09:15,042 INFO L290 TraceCheckUtils]: 7: Hoare triple {23885#true} ~cond := #in~cond; {23885#true} is VALID [2022-04-08 06:09:15,042 INFO L272 TraceCheckUtils]: 6: Hoare triple {23942#(<= ~counter~0 1)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {23885#true} is VALID [2022-04-08 06:09:15,043 INFO L290 TraceCheckUtils]: 5: Hoare triple {23942#(<= ~counter~0 1)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:15,043 INFO L272 TraceCheckUtils]: 4: Hoare triple {23942#(<= ~counter~0 1)} call #t~ret7 := main(); {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:15,043 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23942#(<= ~counter~0 1)} {23885#true} #67#return; {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:15,044 INFO L290 TraceCheckUtils]: 2: Hoare triple {23942#(<= ~counter~0 1)} assume true; {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:15,044 INFO L290 TraceCheckUtils]: 1: Hoare triple {23885#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {23942#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:15,044 INFO L272 TraceCheckUtils]: 0: Hoare triple {23885#true} call ULTIMATE.init(); {23885#true} is VALID [2022-04-08 06:09:15,045 INFO L134 CoverageAnalysis]: Checked inductivity of 1453 backedges. 36 proven. 801 refuted. 0 times theorem prover too weak. 616 trivial. 0 not checked. [2022-04-08 06:09:15,045 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:09:15,045 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [743028612] [2022-04-08 06:09:15,045 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:09:15,045 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [654689698] [2022-04-08 06:09:15,045 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [654689698] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:09:15,045 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:09:15,045 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 22] total 24 [2022-04-08 06:09:15,045 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:09:15,046 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [948045038] [2022-04-08 06:09:15,046 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [948045038] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:09:15,046 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:09:15,046 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-08 06:09:15,046 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1173580973] [2022-04-08 06:09:15,046 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:09:15,046 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 6.2727272727272725) internal successors, (138), 21 states have internal predecessors, (138), 21 states have call successors, (23), 21 states have call predecessors, (23), 19 states have return successors, (21), 19 states have call predecessors, (21), 20 states have call successors, (21) Word has length 185 [2022-04-08 06:09:15,047 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:09:15,047 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 22 states have (on average 6.2727272727272725) internal successors, (138), 21 states have internal predecessors, (138), 21 states have call successors, (23), 21 states have call predecessors, (23), 19 states have return successors, (21), 19 states have call predecessors, (21), 20 states have call successors, (21) [2022-04-08 06:09:15,217 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 182 edges. 182 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:15,217 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-08 06:09:15,218 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:09:15,218 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-08 06:09:15,218 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:09:15,218 INFO L87 Difference]: Start difference. First operand 182 states and 201 transitions. Second operand has 22 states, 22 states have (on average 6.2727272727272725) internal successors, (138), 21 states have internal predecessors, (138), 21 states have call successors, (23), 21 states have call predecessors, (23), 19 states have return successors, (21), 19 states have call predecessors, (21), 20 states have call successors, (21) [2022-04-08 06:09:16,122 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:16,122 INFO L93 Difference]: Finished difference Result 196 states and 216 transitions. [2022-04-08 06:09:16,123 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 40 states. [2022-04-08 06:09:16,123 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 6.2727272727272725) internal successors, (138), 21 states have internal predecessors, (138), 21 states have call successors, (23), 21 states have call predecessors, (23), 19 states have return successors, (21), 19 states have call predecessors, (21), 20 states have call successors, (21) Word has length 185 [2022-04-08 06:09:16,123 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:09:16,123 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 6.2727272727272725) internal successors, (138), 21 states have internal predecessors, (138), 21 states have call successors, (23), 21 states have call predecessors, (23), 19 states have return successors, (21), 19 states have call predecessors, (21), 20 states have call successors, (21) [2022-04-08 06:09:16,127 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 215 transitions. [2022-04-08 06:09:16,128 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 6.2727272727272725) internal successors, (138), 21 states have internal predecessors, (138), 21 states have call successors, (23), 21 states have call predecessors, (23), 19 states have return successors, (21), 19 states have call predecessors, (21), 20 states have call successors, (21) [2022-04-08 06:09:16,131 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 215 transitions. [2022-04-08 06:09:16,131 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 40 states and 215 transitions. [2022-04-08 06:09:16,324 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-08 06:09:16,327 INFO L225 Difference]: With dead ends: 196 [2022-04-08 06:09:16,327 INFO L226 Difference]: Without dead ends: 191 [2022-04-08 06:09:16,328 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 387 GetRequests, 346 SyntacticMatches, 1 SemanticMatches, 40 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 191 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=650, Invalid=1072, Unknown=0, NotChecked=0, Total=1722 [2022-04-08 06:09:16,329 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 63 mSDsluCounter, 188 mSDsCounter, 0 mSdLazyCounter, 104 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 63 SdHoareTripleChecker+Valid, 232 SdHoareTripleChecker+Invalid, 125 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 104 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:09:16,329 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [63 Valid, 232 Invalid, 125 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 104 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:09:16,329 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 191 states. [2022-04-08 06:09:16,611 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 191 to 191. [2022-04-08 06:09:16,611 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:09:16,612 INFO L82 GeneralOperation]: Start isEquivalent. First operand 191 states. Second operand has 191 states, 145 states have (on average 1.1379310344827587) internal successors, (165), 145 states have internal predecessors, (165), 24 states have call successors, (24), 23 states have call predecessors, (24), 21 states have return successors, (22), 22 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 06:09:16,612 INFO L74 IsIncluded]: Start isIncluded. First operand 191 states. Second operand has 191 states, 145 states have (on average 1.1379310344827587) internal successors, (165), 145 states have internal predecessors, (165), 24 states have call successors, (24), 23 states have call predecessors, (24), 21 states have return successors, (22), 22 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 06:09:16,612 INFO L87 Difference]: Start difference. First operand 191 states. Second operand has 191 states, 145 states have (on average 1.1379310344827587) internal successors, (165), 145 states have internal predecessors, (165), 24 states have call successors, (24), 23 states have call predecessors, (24), 21 states have return successors, (22), 22 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 06:09:16,617 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:16,617 INFO L93 Difference]: Finished difference Result 191 states and 211 transitions. [2022-04-08 06:09:16,617 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 211 transitions. [2022-04-08 06:09:16,617 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:09:16,617 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:09:16,618 INFO L74 IsIncluded]: Start isIncluded. First operand has 191 states, 145 states have (on average 1.1379310344827587) internal successors, (165), 145 states have internal predecessors, (165), 24 states have call successors, (24), 23 states have call predecessors, (24), 21 states have return successors, (22), 22 states have call predecessors, (22), 22 states have call successors, (22) Second operand 191 states. [2022-04-08 06:09:16,618 INFO L87 Difference]: Start difference. First operand has 191 states, 145 states have (on average 1.1379310344827587) internal successors, (165), 145 states have internal predecessors, (165), 24 states have call successors, (24), 23 states have call predecessors, (24), 21 states have return successors, (22), 22 states have call predecessors, (22), 22 states have call successors, (22) Second operand 191 states. [2022-04-08 06:09:16,623 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:16,623 INFO L93 Difference]: Finished difference Result 191 states and 211 transitions. [2022-04-08 06:09:16,623 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 211 transitions. [2022-04-08 06:09:16,623 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:09:16,623 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:09:16,623 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:09:16,628 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:09:16,629 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 191 states, 145 states have (on average 1.1379310344827587) internal successors, (165), 145 states have internal predecessors, (165), 24 states have call successors, (24), 23 states have call predecessors, (24), 21 states have return successors, (22), 22 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 06:09:16,633 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 191 states to 191 states and 211 transitions. [2022-04-08 06:09:16,634 INFO L78 Accepts]: Start accepts. Automaton has 191 states and 211 transitions. Word has length 185 [2022-04-08 06:09:16,634 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:09:16,634 INFO L478 AbstractCegarLoop]: Abstraction has 191 states and 211 transitions. [2022-04-08 06:09:16,634 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 22 states have (on average 6.2727272727272725) internal successors, (138), 21 states have internal predecessors, (138), 21 states have call successors, (23), 21 states have call predecessors, (23), 19 states have return successors, (21), 19 states have call predecessors, (21), 20 states have call successors, (21) [2022-04-08 06:09:16,634 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 191 states and 211 transitions. [2022-04-08 06:09:18,930 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 211 edges. 210 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:18,930 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 211 transitions. [2022-04-08 06:09:18,931 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 195 [2022-04-08 06:09:18,931 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:09:18,931 INFO L499 BasicCegarLoop]: trace histogram [20, 20, 19, 19, 19, 19, 19, 19, 19, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:09:18,937 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-08 06:09:19,135 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable21,23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:09:19,135 INFO L403 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:09:19,136 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:09:19,136 INFO L85 PathProgramCache]: Analyzing trace with hash 1522264156, now seen corresponding path program 37 times [2022-04-08 06:09:19,136 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:09:19,136 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [843738173] [2022-04-08 06:09:19,136 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:09:19,136 INFO L85 PathProgramCache]: Analyzing trace with hash 1522264156, now seen corresponding path program 38 times [2022-04-08 06:09:19,136 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:09:19,136 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [296748894] [2022-04-08 06:09:19,136 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:09:19,137 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:09:19,172 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:09:19,172 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [945906099] [2022-04-08 06:09:19,172 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:09:19,172 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:09:19,173 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:09:19,176 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-08 06:09:19,198 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-08 06:09:19,287 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:09:19,287 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:09:19,289 INFO L263 TraceCheckSpWp]: Trace formula consists of 473 conjuncts, 43 conjunts are in the unsatisfiable core [2022-04-08 06:09:19,322 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:09:19,330 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:09:20,366 INFO L272 TraceCheckUtils]: 0: Hoare triple {26210#true} call ULTIMATE.init(); {26210#true} is VALID [2022-04-08 06:09:20,367 INFO L290 TraceCheckUtils]: 1: Hoare triple {26210#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,367 INFO L290 TraceCheckUtils]: 2: Hoare triple {26218#(<= ~counter~0 0)} assume true; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,367 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26218#(<= ~counter~0 0)} {26210#true} #67#return; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,368 INFO L272 TraceCheckUtils]: 4: Hoare triple {26218#(<= ~counter~0 0)} call #t~ret7 := main(); {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,368 INFO L290 TraceCheckUtils]: 5: Hoare triple {26218#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,368 INFO L272 TraceCheckUtils]: 6: Hoare triple {26218#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,369 INFO L290 TraceCheckUtils]: 7: Hoare triple {26218#(<= ~counter~0 0)} ~cond := #in~cond; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,369 INFO L290 TraceCheckUtils]: 8: Hoare triple {26218#(<= ~counter~0 0)} assume !(0 == ~cond); {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,369 INFO L290 TraceCheckUtils]: 9: Hoare triple {26218#(<= ~counter~0 0)} assume true; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,369 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26218#(<= ~counter~0 0)} {26218#(<= ~counter~0 0)} #59#return; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,370 INFO L272 TraceCheckUtils]: 11: Hoare triple {26218#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,370 INFO L290 TraceCheckUtils]: 12: Hoare triple {26218#(<= ~counter~0 0)} ~cond := #in~cond; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,370 INFO L290 TraceCheckUtils]: 13: Hoare triple {26218#(<= ~counter~0 0)} assume !(0 == ~cond); {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,371 INFO L290 TraceCheckUtils]: 14: Hoare triple {26218#(<= ~counter~0 0)} assume true; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,371 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {26218#(<= ~counter~0 0)} {26218#(<= ~counter~0 0)} #61#return; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,371 INFO L290 TraceCheckUtils]: 16: Hoare triple {26218#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:20,372 INFO L290 TraceCheckUtils]: 17: Hoare triple {26218#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26267#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:20,372 INFO L290 TraceCheckUtils]: 18: Hoare triple {26267#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {26267#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:20,373 INFO L272 TraceCheckUtils]: 19: Hoare triple {26267#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26267#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:20,373 INFO L290 TraceCheckUtils]: 20: Hoare triple {26267#(<= ~counter~0 1)} ~cond := #in~cond; {26267#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:20,373 INFO L290 TraceCheckUtils]: 21: Hoare triple {26267#(<= ~counter~0 1)} assume !(0 == ~cond); {26267#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:20,374 INFO L290 TraceCheckUtils]: 22: Hoare triple {26267#(<= ~counter~0 1)} assume true; {26267#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:20,374 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {26267#(<= ~counter~0 1)} {26267#(<= ~counter~0 1)} #63#return; {26267#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:20,374 INFO L290 TraceCheckUtils]: 24: Hoare triple {26267#(<= ~counter~0 1)} assume !!(0 != ~r~0); {26267#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:20,375 INFO L290 TraceCheckUtils]: 25: Hoare triple {26267#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26267#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:20,375 INFO L290 TraceCheckUtils]: 26: Hoare triple {26267#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26295#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:20,375 INFO L290 TraceCheckUtils]: 27: Hoare triple {26295#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {26295#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:20,376 INFO L272 TraceCheckUtils]: 28: Hoare triple {26295#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26295#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:20,376 INFO L290 TraceCheckUtils]: 29: Hoare triple {26295#(<= ~counter~0 2)} ~cond := #in~cond; {26295#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:20,377 INFO L290 TraceCheckUtils]: 30: Hoare triple {26295#(<= ~counter~0 2)} assume !(0 == ~cond); {26295#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:20,377 INFO L290 TraceCheckUtils]: 31: Hoare triple {26295#(<= ~counter~0 2)} assume true; {26295#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:20,377 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {26295#(<= ~counter~0 2)} {26295#(<= ~counter~0 2)} #63#return; {26295#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:20,378 INFO L290 TraceCheckUtils]: 33: Hoare triple {26295#(<= ~counter~0 2)} assume !!(0 != ~r~0); {26295#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:20,378 INFO L290 TraceCheckUtils]: 34: Hoare triple {26295#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26295#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:20,378 INFO L290 TraceCheckUtils]: 35: Hoare triple {26295#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26323#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:20,379 INFO L290 TraceCheckUtils]: 36: Hoare triple {26323#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {26323#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:20,379 INFO L272 TraceCheckUtils]: 37: Hoare triple {26323#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26323#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:20,379 INFO L290 TraceCheckUtils]: 38: Hoare triple {26323#(<= ~counter~0 3)} ~cond := #in~cond; {26323#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:20,380 INFO L290 TraceCheckUtils]: 39: Hoare triple {26323#(<= ~counter~0 3)} assume !(0 == ~cond); {26323#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:20,380 INFO L290 TraceCheckUtils]: 40: Hoare triple {26323#(<= ~counter~0 3)} assume true; {26323#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:20,392 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {26323#(<= ~counter~0 3)} {26323#(<= ~counter~0 3)} #63#return; {26323#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:20,392 INFO L290 TraceCheckUtils]: 42: Hoare triple {26323#(<= ~counter~0 3)} assume !!(0 != ~r~0); {26323#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:20,393 INFO L290 TraceCheckUtils]: 43: Hoare triple {26323#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26323#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:20,394 INFO L290 TraceCheckUtils]: 44: Hoare triple {26323#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26351#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:20,394 INFO L290 TraceCheckUtils]: 45: Hoare triple {26351#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {26351#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:20,395 INFO L272 TraceCheckUtils]: 46: Hoare triple {26351#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26351#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:20,396 INFO L290 TraceCheckUtils]: 47: Hoare triple {26351#(<= ~counter~0 4)} ~cond := #in~cond; {26351#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:20,396 INFO L290 TraceCheckUtils]: 48: Hoare triple {26351#(<= ~counter~0 4)} assume !(0 == ~cond); {26351#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:20,397 INFO L290 TraceCheckUtils]: 49: Hoare triple {26351#(<= ~counter~0 4)} assume true; {26351#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:20,397 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {26351#(<= ~counter~0 4)} {26351#(<= ~counter~0 4)} #63#return; {26351#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:20,397 INFO L290 TraceCheckUtils]: 51: Hoare triple {26351#(<= ~counter~0 4)} assume !!(0 != ~r~0); {26351#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:20,398 INFO L290 TraceCheckUtils]: 52: Hoare triple {26351#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26351#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:20,398 INFO L290 TraceCheckUtils]: 53: Hoare triple {26351#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26379#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:20,399 INFO L290 TraceCheckUtils]: 54: Hoare triple {26379#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {26379#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:20,399 INFO L272 TraceCheckUtils]: 55: Hoare triple {26379#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26379#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:20,399 INFO L290 TraceCheckUtils]: 56: Hoare triple {26379#(<= ~counter~0 5)} ~cond := #in~cond; {26379#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:20,400 INFO L290 TraceCheckUtils]: 57: Hoare triple {26379#(<= ~counter~0 5)} assume !(0 == ~cond); {26379#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:20,400 INFO L290 TraceCheckUtils]: 58: Hoare triple {26379#(<= ~counter~0 5)} assume true; {26379#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:20,400 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {26379#(<= ~counter~0 5)} {26379#(<= ~counter~0 5)} #63#return; {26379#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:20,401 INFO L290 TraceCheckUtils]: 60: Hoare triple {26379#(<= ~counter~0 5)} assume !!(0 != ~r~0); {26379#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:20,401 INFO L290 TraceCheckUtils]: 61: Hoare triple {26379#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26379#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:20,401 INFO L290 TraceCheckUtils]: 62: Hoare triple {26379#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26407#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:20,402 INFO L290 TraceCheckUtils]: 63: Hoare triple {26407#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {26407#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:20,402 INFO L272 TraceCheckUtils]: 64: Hoare triple {26407#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26407#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:20,402 INFO L290 TraceCheckUtils]: 65: Hoare triple {26407#(<= ~counter~0 6)} ~cond := #in~cond; {26407#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:20,403 INFO L290 TraceCheckUtils]: 66: Hoare triple {26407#(<= ~counter~0 6)} assume !(0 == ~cond); {26407#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:20,403 INFO L290 TraceCheckUtils]: 67: Hoare triple {26407#(<= ~counter~0 6)} assume true; {26407#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:20,403 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {26407#(<= ~counter~0 6)} {26407#(<= ~counter~0 6)} #63#return; {26407#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:20,404 INFO L290 TraceCheckUtils]: 69: Hoare triple {26407#(<= ~counter~0 6)} assume !!(0 != ~r~0); {26407#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:20,404 INFO L290 TraceCheckUtils]: 70: Hoare triple {26407#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26407#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:20,404 INFO L290 TraceCheckUtils]: 71: Hoare triple {26407#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26435#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:20,405 INFO L290 TraceCheckUtils]: 72: Hoare triple {26435#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {26435#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:20,405 INFO L272 TraceCheckUtils]: 73: Hoare triple {26435#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26435#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:20,405 INFO L290 TraceCheckUtils]: 74: Hoare triple {26435#(<= ~counter~0 7)} ~cond := #in~cond; {26435#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:20,406 INFO L290 TraceCheckUtils]: 75: Hoare triple {26435#(<= ~counter~0 7)} assume !(0 == ~cond); {26435#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:20,406 INFO L290 TraceCheckUtils]: 76: Hoare triple {26435#(<= ~counter~0 7)} assume true; {26435#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:20,406 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {26435#(<= ~counter~0 7)} {26435#(<= ~counter~0 7)} #63#return; {26435#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:20,407 INFO L290 TraceCheckUtils]: 78: Hoare triple {26435#(<= ~counter~0 7)} assume !!(0 != ~r~0); {26435#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:20,407 INFO L290 TraceCheckUtils]: 79: Hoare triple {26435#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26435#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:20,408 INFO L290 TraceCheckUtils]: 80: Hoare triple {26435#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26463#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:20,408 INFO L290 TraceCheckUtils]: 81: Hoare triple {26463#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {26463#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:20,408 INFO L272 TraceCheckUtils]: 82: Hoare triple {26463#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26463#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:20,409 INFO L290 TraceCheckUtils]: 83: Hoare triple {26463#(<= ~counter~0 8)} ~cond := #in~cond; {26463#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:20,411 INFO L290 TraceCheckUtils]: 84: Hoare triple {26463#(<= ~counter~0 8)} assume !(0 == ~cond); {26463#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:20,411 INFO L290 TraceCheckUtils]: 85: Hoare triple {26463#(<= ~counter~0 8)} assume true; {26463#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:20,412 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {26463#(<= ~counter~0 8)} {26463#(<= ~counter~0 8)} #63#return; {26463#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:20,413 INFO L290 TraceCheckUtils]: 87: Hoare triple {26463#(<= ~counter~0 8)} assume !!(0 != ~r~0); {26463#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:20,413 INFO L290 TraceCheckUtils]: 88: Hoare triple {26463#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26463#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:20,414 INFO L290 TraceCheckUtils]: 89: Hoare triple {26463#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26491#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:20,414 INFO L290 TraceCheckUtils]: 90: Hoare triple {26491#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {26491#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:20,415 INFO L272 TraceCheckUtils]: 91: Hoare triple {26491#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26491#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:20,415 INFO L290 TraceCheckUtils]: 92: Hoare triple {26491#(<= ~counter~0 9)} ~cond := #in~cond; {26491#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:20,416 INFO L290 TraceCheckUtils]: 93: Hoare triple {26491#(<= ~counter~0 9)} assume !(0 == ~cond); {26491#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:20,416 INFO L290 TraceCheckUtils]: 94: Hoare triple {26491#(<= ~counter~0 9)} assume true; {26491#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:20,417 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {26491#(<= ~counter~0 9)} {26491#(<= ~counter~0 9)} #63#return; {26491#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:20,417 INFO L290 TraceCheckUtils]: 96: Hoare triple {26491#(<= ~counter~0 9)} assume !!(0 != ~r~0); {26491#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:20,417 INFO L290 TraceCheckUtils]: 97: Hoare triple {26491#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26491#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:20,418 INFO L290 TraceCheckUtils]: 98: Hoare triple {26491#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26519#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:20,418 INFO L290 TraceCheckUtils]: 99: Hoare triple {26519#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {26519#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:20,419 INFO L272 TraceCheckUtils]: 100: Hoare triple {26519#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26519#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:20,419 INFO L290 TraceCheckUtils]: 101: Hoare triple {26519#(<= ~counter~0 10)} ~cond := #in~cond; {26519#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:20,420 INFO L290 TraceCheckUtils]: 102: Hoare triple {26519#(<= ~counter~0 10)} assume !(0 == ~cond); {26519#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:20,420 INFO L290 TraceCheckUtils]: 103: Hoare triple {26519#(<= ~counter~0 10)} assume true; {26519#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:20,421 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {26519#(<= ~counter~0 10)} {26519#(<= ~counter~0 10)} #63#return; {26519#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:20,421 INFO L290 TraceCheckUtils]: 105: Hoare triple {26519#(<= ~counter~0 10)} assume !!(0 != ~r~0); {26519#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:20,421 INFO L290 TraceCheckUtils]: 106: Hoare triple {26519#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26519#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:20,422 INFO L290 TraceCheckUtils]: 107: Hoare triple {26519#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26547#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:20,422 INFO L290 TraceCheckUtils]: 108: Hoare triple {26547#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {26547#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:20,423 INFO L272 TraceCheckUtils]: 109: Hoare triple {26547#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26547#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:20,423 INFO L290 TraceCheckUtils]: 110: Hoare triple {26547#(<= ~counter~0 11)} ~cond := #in~cond; {26547#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:20,424 INFO L290 TraceCheckUtils]: 111: Hoare triple {26547#(<= ~counter~0 11)} assume !(0 == ~cond); {26547#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:20,424 INFO L290 TraceCheckUtils]: 112: Hoare triple {26547#(<= ~counter~0 11)} assume true; {26547#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:20,425 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {26547#(<= ~counter~0 11)} {26547#(<= ~counter~0 11)} #63#return; {26547#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:20,425 INFO L290 TraceCheckUtils]: 114: Hoare triple {26547#(<= ~counter~0 11)} assume !!(0 != ~r~0); {26547#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:20,425 INFO L290 TraceCheckUtils]: 115: Hoare triple {26547#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26547#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:20,426 INFO L290 TraceCheckUtils]: 116: Hoare triple {26547#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26575#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:20,426 INFO L290 TraceCheckUtils]: 117: Hoare triple {26575#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {26575#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:20,427 INFO L272 TraceCheckUtils]: 118: Hoare triple {26575#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26575#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:20,427 INFO L290 TraceCheckUtils]: 119: Hoare triple {26575#(<= ~counter~0 12)} ~cond := #in~cond; {26575#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:20,428 INFO L290 TraceCheckUtils]: 120: Hoare triple {26575#(<= ~counter~0 12)} assume !(0 == ~cond); {26575#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:20,428 INFO L290 TraceCheckUtils]: 121: Hoare triple {26575#(<= ~counter~0 12)} assume true; {26575#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:20,429 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {26575#(<= ~counter~0 12)} {26575#(<= ~counter~0 12)} #63#return; {26575#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:20,429 INFO L290 TraceCheckUtils]: 123: Hoare triple {26575#(<= ~counter~0 12)} assume !!(0 != ~r~0); {26575#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:20,429 INFO L290 TraceCheckUtils]: 124: Hoare triple {26575#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26575#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:20,430 INFO L290 TraceCheckUtils]: 125: Hoare triple {26575#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26603#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:20,430 INFO L290 TraceCheckUtils]: 126: Hoare triple {26603#(<= ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {26603#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:20,431 INFO L272 TraceCheckUtils]: 127: Hoare triple {26603#(<= ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26603#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:20,431 INFO L290 TraceCheckUtils]: 128: Hoare triple {26603#(<= ~counter~0 13)} ~cond := #in~cond; {26603#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:20,432 INFO L290 TraceCheckUtils]: 129: Hoare triple {26603#(<= ~counter~0 13)} assume !(0 == ~cond); {26603#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:20,432 INFO L290 TraceCheckUtils]: 130: Hoare triple {26603#(<= ~counter~0 13)} assume true; {26603#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:20,433 INFO L284 TraceCheckUtils]: 131: Hoare quadruple {26603#(<= ~counter~0 13)} {26603#(<= ~counter~0 13)} #63#return; {26603#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:20,433 INFO L290 TraceCheckUtils]: 132: Hoare triple {26603#(<= ~counter~0 13)} assume !!(0 != ~r~0); {26603#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:20,434 INFO L290 TraceCheckUtils]: 133: Hoare triple {26603#(<= ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26603#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:20,434 INFO L290 TraceCheckUtils]: 134: Hoare triple {26603#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26631#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:20,435 INFO L290 TraceCheckUtils]: 135: Hoare triple {26631#(<= ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {26631#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:20,435 INFO L272 TraceCheckUtils]: 136: Hoare triple {26631#(<= ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26631#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:20,436 INFO L290 TraceCheckUtils]: 137: Hoare triple {26631#(<= ~counter~0 14)} ~cond := #in~cond; {26631#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:20,436 INFO L290 TraceCheckUtils]: 138: Hoare triple {26631#(<= ~counter~0 14)} assume !(0 == ~cond); {26631#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:20,436 INFO L290 TraceCheckUtils]: 139: Hoare triple {26631#(<= ~counter~0 14)} assume true; {26631#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:20,437 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {26631#(<= ~counter~0 14)} {26631#(<= ~counter~0 14)} #63#return; {26631#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:20,437 INFO L290 TraceCheckUtils]: 141: Hoare triple {26631#(<= ~counter~0 14)} assume !!(0 != ~r~0); {26631#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:20,438 INFO L290 TraceCheckUtils]: 142: Hoare triple {26631#(<= ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26631#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:20,438 INFO L290 TraceCheckUtils]: 143: Hoare triple {26631#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26659#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:20,438 INFO L290 TraceCheckUtils]: 144: Hoare triple {26659#(<= ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {26659#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:20,439 INFO L272 TraceCheckUtils]: 145: Hoare triple {26659#(<= ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26659#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:20,439 INFO L290 TraceCheckUtils]: 146: Hoare triple {26659#(<= ~counter~0 15)} ~cond := #in~cond; {26659#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:20,440 INFO L290 TraceCheckUtils]: 147: Hoare triple {26659#(<= ~counter~0 15)} assume !(0 == ~cond); {26659#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:20,440 INFO L290 TraceCheckUtils]: 148: Hoare triple {26659#(<= ~counter~0 15)} assume true; {26659#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:20,441 INFO L284 TraceCheckUtils]: 149: Hoare quadruple {26659#(<= ~counter~0 15)} {26659#(<= ~counter~0 15)} #63#return; {26659#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:20,441 INFO L290 TraceCheckUtils]: 150: Hoare triple {26659#(<= ~counter~0 15)} assume !!(0 != ~r~0); {26659#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:20,441 INFO L290 TraceCheckUtils]: 151: Hoare triple {26659#(<= ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26659#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:20,442 INFO L290 TraceCheckUtils]: 152: Hoare triple {26659#(<= ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26687#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:20,442 INFO L290 TraceCheckUtils]: 153: Hoare triple {26687#(<= ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {26687#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:20,443 INFO L272 TraceCheckUtils]: 154: Hoare triple {26687#(<= ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26687#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:20,443 INFO L290 TraceCheckUtils]: 155: Hoare triple {26687#(<= ~counter~0 16)} ~cond := #in~cond; {26687#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:20,444 INFO L290 TraceCheckUtils]: 156: Hoare triple {26687#(<= ~counter~0 16)} assume !(0 == ~cond); {26687#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:20,444 INFO L290 TraceCheckUtils]: 157: Hoare triple {26687#(<= ~counter~0 16)} assume true; {26687#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:20,445 INFO L284 TraceCheckUtils]: 158: Hoare quadruple {26687#(<= ~counter~0 16)} {26687#(<= ~counter~0 16)} #63#return; {26687#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:20,445 INFO L290 TraceCheckUtils]: 159: Hoare triple {26687#(<= ~counter~0 16)} assume !!(0 != ~r~0); {26687#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:20,445 INFO L290 TraceCheckUtils]: 160: Hoare triple {26687#(<= ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26687#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:20,446 INFO L290 TraceCheckUtils]: 161: Hoare triple {26687#(<= ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26715#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:20,446 INFO L290 TraceCheckUtils]: 162: Hoare triple {26715#(<= ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {26715#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:20,447 INFO L272 TraceCheckUtils]: 163: Hoare triple {26715#(<= ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26715#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:20,447 INFO L290 TraceCheckUtils]: 164: Hoare triple {26715#(<= ~counter~0 17)} ~cond := #in~cond; {26715#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:20,448 INFO L290 TraceCheckUtils]: 165: Hoare triple {26715#(<= ~counter~0 17)} assume !(0 == ~cond); {26715#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:20,448 INFO L290 TraceCheckUtils]: 166: Hoare triple {26715#(<= ~counter~0 17)} assume true; {26715#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:20,449 INFO L284 TraceCheckUtils]: 167: Hoare quadruple {26715#(<= ~counter~0 17)} {26715#(<= ~counter~0 17)} #63#return; {26715#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:20,449 INFO L290 TraceCheckUtils]: 168: Hoare triple {26715#(<= ~counter~0 17)} assume !!(0 != ~r~0); {26715#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:20,449 INFO L290 TraceCheckUtils]: 169: Hoare triple {26715#(<= ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26715#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:20,450 INFO L290 TraceCheckUtils]: 170: Hoare triple {26715#(<= ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26743#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:20,450 INFO L290 TraceCheckUtils]: 171: Hoare triple {26743#(<= ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {26743#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:20,451 INFO L272 TraceCheckUtils]: 172: Hoare triple {26743#(<= ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26743#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:20,451 INFO L290 TraceCheckUtils]: 173: Hoare triple {26743#(<= ~counter~0 18)} ~cond := #in~cond; {26743#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:20,452 INFO L290 TraceCheckUtils]: 174: Hoare triple {26743#(<= ~counter~0 18)} assume !(0 == ~cond); {26743#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:20,452 INFO L290 TraceCheckUtils]: 175: Hoare triple {26743#(<= ~counter~0 18)} assume true; {26743#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:20,453 INFO L284 TraceCheckUtils]: 176: Hoare quadruple {26743#(<= ~counter~0 18)} {26743#(<= ~counter~0 18)} #63#return; {26743#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:20,453 INFO L290 TraceCheckUtils]: 177: Hoare triple {26743#(<= ~counter~0 18)} assume !!(0 != ~r~0); {26743#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:20,453 INFO L290 TraceCheckUtils]: 178: Hoare triple {26743#(<= ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26743#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:20,454 INFO L290 TraceCheckUtils]: 179: Hoare triple {26743#(<= ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26771#(<= ~counter~0 19)} is VALID [2022-04-08 06:09:20,454 INFO L290 TraceCheckUtils]: 180: Hoare triple {26771#(<= ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {26771#(<= ~counter~0 19)} is VALID [2022-04-08 06:09:20,455 INFO L272 TraceCheckUtils]: 181: Hoare triple {26771#(<= ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26771#(<= ~counter~0 19)} is VALID [2022-04-08 06:09:20,455 INFO L290 TraceCheckUtils]: 182: Hoare triple {26771#(<= ~counter~0 19)} ~cond := #in~cond; {26771#(<= ~counter~0 19)} is VALID [2022-04-08 06:09:20,456 INFO L290 TraceCheckUtils]: 183: Hoare triple {26771#(<= ~counter~0 19)} assume !(0 == ~cond); {26771#(<= ~counter~0 19)} is VALID [2022-04-08 06:09:20,456 INFO L290 TraceCheckUtils]: 184: Hoare triple {26771#(<= ~counter~0 19)} assume true; {26771#(<= ~counter~0 19)} is VALID [2022-04-08 06:09:20,457 INFO L284 TraceCheckUtils]: 185: Hoare quadruple {26771#(<= ~counter~0 19)} {26771#(<= ~counter~0 19)} #63#return; {26771#(<= ~counter~0 19)} is VALID [2022-04-08 06:09:20,457 INFO L290 TraceCheckUtils]: 186: Hoare triple {26771#(<= ~counter~0 19)} assume !!(0 != ~r~0); {26771#(<= ~counter~0 19)} is VALID [2022-04-08 06:09:20,457 INFO L290 TraceCheckUtils]: 187: Hoare triple {26771#(<= ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26771#(<= ~counter~0 19)} is VALID [2022-04-08 06:09:20,458 INFO L290 TraceCheckUtils]: 188: Hoare triple {26771#(<= ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26799#(<= |main_#t~post6| 19)} is VALID [2022-04-08 06:09:20,458 INFO L290 TraceCheckUtils]: 189: Hoare triple {26799#(<= |main_#t~post6| 19)} assume !(#t~post6 < 20);havoc #t~post6; {26211#false} is VALID [2022-04-08 06:09:20,458 INFO L272 TraceCheckUtils]: 190: Hoare triple {26211#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26211#false} is VALID [2022-04-08 06:09:20,458 INFO L290 TraceCheckUtils]: 191: Hoare triple {26211#false} ~cond := #in~cond; {26211#false} is VALID [2022-04-08 06:09:20,458 INFO L290 TraceCheckUtils]: 192: Hoare triple {26211#false} assume 0 == ~cond; {26211#false} is VALID [2022-04-08 06:09:20,459 INFO L290 TraceCheckUtils]: 193: Hoare triple {26211#false} assume !false; {26211#false} is VALID [2022-04-08 06:09:20,460 INFO L134 CoverageAnalysis]: Checked inductivity of 1619 backedges. 38 proven. 1577 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:09:20,460 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:09:21,546 INFO L290 TraceCheckUtils]: 193: Hoare triple {26211#false} assume !false; {26211#false} is VALID [2022-04-08 06:09:21,546 INFO L290 TraceCheckUtils]: 192: Hoare triple {26211#false} assume 0 == ~cond; {26211#false} is VALID [2022-04-08 06:09:21,546 INFO L290 TraceCheckUtils]: 191: Hoare triple {26211#false} ~cond := #in~cond; {26211#false} is VALID [2022-04-08 06:09:21,547 INFO L272 TraceCheckUtils]: 190: Hoare triple {26211#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26211#false} is VALID [2022-04-08 06:09:21,547 INFO L290 TraceCheckUtils]: 189: Hoare triple {26799#(<= |main_#t~post6| 19)} assume !(#t~post6 < 20);havoc #t~post6; {26211#false} is VALID [2022-04-08 06:09:21,547 INFO L290 TraceCheckUtils]: 188: Hoare triple {26771#(<= ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26799#(<= |main_#t~post6| 19)} is VALID [2022-04-08 06:09:21,548 INFO L290 TraceCheckUtils]: 187: Hoare triple {26771#(<= ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26771#(<= ~counter~0 19)} is VALID [2022-04-08 06:09:21,548 INFO L290 TraceCheckUtils]: 186: Hoare triple {26771#(<= ~counter~0 19)} assume !!(0 != ~r~0); {26771#(<= ~counter~0 19)} is VALID [2022-04-08 06:09:21,549 INFO L284 TraceCheckUtils]: 185: Hoare quadruple {26210#true} {26771#(<= ~counter~0 19)} #63#return; {26771#(<= ~counter~0 19)} is VALID [2022-04-08 06:09:21,549 INFO L290 TraceCheckUtils]: 184: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,549 INFO L290 TraceCheckUtils]: 183: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,549 INFO L290 TraceCheckUtils]: 182: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,549 INFO L272 TraceCheckUtils]: 181: Hoare triple {26771#(<= ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,549 INFO L290 TraceCheckUtils]: 180: Hoare triple {26771#(<= ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {26771#(<= ~counter~0 19)} is VALID [2022-04-08 06:09:21,550 INFO L290 TraceCheckUtils]: 179: Hoare triple {26743#(<= ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26771#(<= ~counter~0 19)} is VALID [2022-04-08 06:09:21,550 INFO L290 TraceCheckUtils]: 178: Hoare triple {26743#(<= ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26743#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:21,551 INFO L290 TraceCheckUtils]: 177: Hoare triple {26743#(<= ~counter~0 18)} assume !!(0 != ~r~0); {26743#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:21,551 INFO L284 TraceCheckUtils]: 176: Hoare quadruple {26210#true} {26743#(<= ~counter~0 18)} #63#return; {26743#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:21,551 INFO L290 TraceCheckUtils]: 175: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,551 INFO L290 TraceCheckUtils]: 174: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,551 INFO L290 TraceCheckUtils]: 173: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,551 INFO L272 TraceCheckUtils]: 172: Hoare triple {26743#(<= ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,551 INFO L290 TraceCheckUtils]: 171: Hoare triple {26743#(<= ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {26743#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:21,552 INFO L290 TraceCheckUtils]: 170: Hoare triple {26715#(<= ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26743#(<= ~counter~0 18)} is VALID [2022-04-08 06:09:21,552 INFO L290 TraceCheckUtils]: 169: Hoare triple {26715#(<= ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26715#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:21,552 INFO L290 TraceCheckUtils]: 168: Hoare triple {26715#(<= ~counter~0 17)} assume !!(0 != ~r~0); {26715#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:21,553 INFO L284 TraceCheckUtils]: 167: Hoare quadruple {26210#true} {26715#(<= ~counter~0 17)} #63#return; {26715#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:21,553 INFO L290 TraceCheckUtils]: 166: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,553 INFO L290 TraceCheckUtils]: 165: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,553 INFO L290 TraceCheckUtils]: 164: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,553 INFO L272 TraceCheckUtils]: 163: Hoare triple {26715#(<= ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,553 INFO L290 TraceCheckUtils]: 162: Hoare triple {26715#(<= ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {26715#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:21,554 INFO L290 TraceCheckUtils]: 161: Hoare triple {26687#(<= ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26715#(<= ~counter~0 17)} is VALID [2022-04-08 06:09:21,554 INFO L290 TraceCheckUtils]: 160: Hoare triple {26687#(<= ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26687#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:21,554 INFO L290 TraceCheckUtils]: 159: Hoare triple {26687#(<= ~counter~0 16)} assume !!(0 != ~r~0); {26687#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:21,555 INFO L284 TraceCheckUtils]: 158: Hoare quadruple {26210#true} {26687#(<= ~counter~0 16)} #63#return; {26687#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:21,555 INFO L290 TraceCheckUtils]: 157: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,555 INFO L290 TraceCheckUtils]: 156: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,555 INFO L290 TraceCheckUtils]: 155: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,555 INFO L272 TraceCheckUtils]: 154: Hoare triple {26687#(<= ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,555 INFO L290 TraceCheckUtils]: 153: Hoare triple {26687#(<= ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {26687#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:21,556 INFO L290 TraceCheckUtils]: 152: Hoare triple {26659#(<= ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26687#(<= ~counter~0 16)} is VALID [2022-04-08 06:09:21,556 INFO L290 TraceCheckUtils]: 151: Hoare triple {26659#(<= ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26659#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:21,556 INFO L290 TraceCheckUtils]: 150: Hoare triple {26659#(<= ~counter~0 15)} assume !!(0 != ~r~0); {26659#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:21,557 INFO L284 TraceCheckUtils]: 149: Hoare quadruple {26210#true} {26659#(<= ~counter~0 15)} #63#return; {26659#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:21,557 INFO L290 TraceCheckUtils]: 148: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,557 INFO L290 TraceCheckUtils]: 147: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,557 INFO L290 TraceCheckUtils]: 146: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,557 INFO L272 TraceCheckUtils]: 145: Hoare triple {26659#(<= ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,557 INFO L290 TraceCheckUtils]: 144: Hoare triple {26659#(<= ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {26659#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:21,558 INFO L290 TraceCheckUtils]: 143: Hoare triple {26631#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26659#(<= ~counter~0 15)} is VALID [2022-04-08 06:09:21,558 INFO L290 TraceCheckUtils]: 142: Hoare triple {26631#(<= ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26631#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:21,558 INFO L290 TraceCheckUtils]: 141: Hoare triple {26631#(<= ~counter~0 14)} assume !!(0 != ~r~0); {26631#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:21,559 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {26210#true} {26631#(<= ~counter~0 14)} #63#return; {26631#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:21,559 INFO L290 TraceCheckUtils]: 139: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,559 INFO L290 TraceCheckUtils]: 138: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,559 INFO L290 TraceCheckUtils]: 137: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,559 INFO L272 TraceCheckUtils]: 136: Hoare triple {26631#(<= ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,559 INFO L290 TraceCheckUtils]: 135: Hoare triple {26631#(<= ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {26631#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:21,560 INFO L290 TraceCheckUtils]: 134: Hoare triple {26603#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26631#(<= ~counter~0 14)} is VALID [2022-04-08 06:09:21,560 INFO L290 TraceCheckUtils]: 133: Hoare triple {26603#(<= ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26603#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:21,560 INFO L290 TraceCheckUtils]: 132: Hoare triple {26603#(<= ~counter~0 13)} assume !!(0 != ~r~0); {26603#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:21,561 INFO L284 TraceCheckUtils]: 131: Hoare quadruple {26210#true} {26603#(<= ~counter~0 13)} #63#return; {26603#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:21,561 INFO L290 TraceCheckUtils]: 130: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,561 INFO L290 TraceCheckUtils]: 129: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,561 INFO L290 TraceCheckUtils]: 128: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,561 INFO L272 TraceCheckUtils]: 127: Hoare triple {26603#(<= ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,561 INFO L290 TraceCheckUtils]: 126: Hoare triple {26603#(<= ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {26603#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:21,562 INFO L290 TraceCheckUtils]: 125: Hoare triple {26575#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26603#(<= ~counter~0 13)} is VALID [2022-04-08 06:09:21,562 INFO L290 TraceCheckUtils]: 124: Hoare triple {26575#(<= ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26575#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:21,562 INFO L290 TraceCheckUtils]: 123: Hoare triple {26575#(<= ~counter~0 12)} assume !!(0 != ~r~0); {26575#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:21,563 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {26210#true} {26575#(<= ~counter~0 12)} #63#return; {26575#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:21,563 INFO L290 TraceCheckUtils]: 121: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,563 INFO L290 TraceCheckUtils]: 120: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,563 INFO L290 TraceCheckUtils]: 119: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,563 INFO L272 TraceCheckUtils]: 118: Hoare triple {26575#(<= ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,563 INFO L290 TraceCheckUtils]: 117: Hoare triple {26575#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {26575#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:21,564 INFO L290 TraceCheckUtils]: 116: Hoare triple {26547#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26575#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:21,564 INFO L290 TraceCheckUtils]: 115: Hoare triple {26547#(<= ~counter~0 11)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26547#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:21,564 INFO L290 TraceCheckUtils]: 114: Hoare triple {26547#(<= ~counter~0 11)} assume !!(0 != ~r~0); {26547#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:21,565 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {26210#true} {26547#(<= ~counter~0 11)} #63#return; {26547#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:21,565 INFO L290 TraceCheckUtils]: 112: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,565 INFO L290 TraceCheckUtils]: 111: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,565 INFO L290 TraceCheckUtils]: 110: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,565 INFO L272 TraceCheckUtils]: 109: Hoare triple {26547#(<= ~counter~0 11)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,565 INFO L290 TraceCheckUtils]: 108: Hoare triple {26547#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {26547#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:21,566 INFO L290 TraceCheckUtils]: 107: Hoare triple {26519#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26547#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:21,566 INFO L290 TraceCheckUtils]: 106: Hoare triple {26519#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26519#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:21,566 INFO L290 TraceCheckUtils]: 105: Hoare triple {26519#(<= ~counter~0 10)} assume !!(0 != ~r~0); {26519#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:21,567 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {26210#true} {26519#(<= ~counter~0 10)} #63#return; {26519#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:21,567 INFO L290 TraceCheckUtils]: 103: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,567 INFO L290 TraceCheckUtils]: 102: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,567 INFO L290 TraceCheckUtils]: 101: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,567 INFO L272 TraceCheckUtils]: 100: Hoare triple {26519#(<= ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,567 INFO L290 TraceCheckUtils]: 99: Hoare triple {26519#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {26519#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:21,568 INFO L290 TraceCheckUtils]: 98: Hoare triple {26491#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26519#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:21,568 INFO L290 TraceCheckUtils]: 97: Hoare triple {26491#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26491#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:21,568 INFO L290 TraceCheckUtils]: 96: Hoare triple {26491#(<= ~counter~0 9)} assume !!(0 != ~r~0); {26491#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:21,569 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {26210#true} {26491#(<= ~counter~0 9)} #63#return; {26491#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:21,569 INFO L290 TraceCheckUtils]: 94: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,569 INFO L290 TraceCheckUtils]: 93: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,569 INFO L290 TraceCheckUtils]: 92: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,569 INFO L272 TraceCheckUtils]: 91: Hoare triple {26491#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,569 INFO L290 TraceCheckUtils]: 90: Hoare triple {26491#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {26491#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:21,570 INFO L290 TraceCheckUtils]: 89: Hoare triple {26463#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26491#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:21,570 INFO L290 TraceCheckUtils]: 88: Hoare triple {26463#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26463#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:21,570 INFO L290 TraceCheckUtils]: 87: Hoare triple {26463#(<= ~counter~0 8)} assume !!(0 != ~r~0); {26463#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:21,571 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {26210#true} {26463#(<= ~counter~0 8)} #63#return; {26463#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:21,571 INFO L290 TraceCheckUtils]: 85: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,571 INFO L290 TraceCheckUtils]: 84: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,571 INFO L290 TraceCheckUtils]: 83: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,571 INFO L272 TraceCheckUtils]: 82: Hoare triple {26463#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,571 INFO L290 TraceCheckUtils]: 81: Hoare triple {26463#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {26463#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:21,572 INFO L290 TraceCheckUtils]: 80: Hoare triple {26435#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26463#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:21,572 INFO L290 TraceCheckUtils]: 79: Hoare triple {26435#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26435#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:21,572 INFO L290 TraceCheckUtils]: 78: Hoare triple {26435#(<= ~counter~0 7)} assume !!(0 != ~r~0); {26435#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:21,573 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {26210#true} {26435#(<= ~counter~0 7)} #63#return; {26435#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:21,573 INFO L290 TraceCheckUtils]: 76: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,573 INFO L290 TraceCheckUtils]: 75: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,573 INFO L290 TraceCheckUtils]: 74: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,573 INFO L272 TraceCheckUtils]: 73: Hoare triple {26435#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,573 INFO L290 TraceCheckUtils]: 72: Hoare triple {26435#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {26435#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:21,574 INFO L290 TraceCheckUtils]: 71: Hoare triple {26407#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26435#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:21,574 INFO L290 TraceCheckUtils]: 70: Hoare triple {26407#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26407#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:21,574 INFO L290 TraceCheckUtils]: 69: Hoare triple {26407#(<= ~counter~0 6)} assume !!(0 != ~r~0); {26407#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:21,575 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {26210#true} {26407#(<= ~counter~0 6)} #63#return; {26407#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:21,575 INFO L290 TraceCheckUtils]: 67: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,575 INFO L290 TraceCheckUtils]: 66: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,575 INFO L290 TraceCheckUtils]: 65: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,575 INFO L272 TraceCheckUtils]: 64: Hoare triple {26407#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,575 INFO L290 TraceCheckUtils]: 63: Hoare triple {26407#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {26407#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:21,576 INFO L290 TraceCheckUtils]: 62: Hoare triple {26379#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26407#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:21,576 INFO L290 TraceCheckUtils]: 61: Hoare triple {26379#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26379#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:21,576 INFO L290 TraceCheckUtils]: 60: Hoare triple {26379#(<= ~counter~0 5)} assume !!(0 != ~r~0); {26379#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:21,577 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {26210#true} {26379#(<= ~counter~0 5)} #63#return; {26379#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:21,577 INFO L290 TraceCheckUtils]: 58: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,577 INFO L290 TraceCheckUtils]: 57: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,577 INFO L290 TraceCheckUtils]: 56: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,577 INFO L272 TraceCheckUtils]: 55: Hoare triple {26379#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,577 INFO L290 TraceCheckUtils]: 54: Hoare triple {26379#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {26379#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:21,578 INFO L290 TraceCheckUtils]: 53: Hoare triple {26351#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26379#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:21,578 INFO L290 TraceCheckUtils]: 52: Hoare triple {26351#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26351#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:21,578 INFO L290 TraceCheckUtils]: 51: Hoare triple {26351#(<= ~counter~0 4)} assume !!(0 != ~r~0); {26351#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:21,579 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {26210#true} {26351#(<= ~counter~0 4)} #63#return; {26351#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:21,579 INFO L290 TraceCheckUtils]: 49: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,579 INFO L290 TraceCheckUtils]: 48: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,579 INFO L290 TraceCheckUtils]: 47: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,579 INFO L272 TraceCheckUtils]: 46: Hoare triple {26351#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,579 INFO L290 TraceCheckUtils]: 45: Hoare triple {26351#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {26351#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:21,580 INFO L290 TraceCheckUtils]: 44: Hoare triple {26323#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26351#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:21,580 INFO L290 TraceCheckUtils]: 43: Hoare triple {26323#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26323#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:21,580 INFO L290 TraceCheckUtils]: 42: Hoare triple {26323#(<= ~counter~0 3)} assume !!(0 != ~r~0); {26323#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:21,581 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {26210#true} {26323#(<= ~counter~0 3)} #63#return; {26323#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:21,581 INFO L290 TraceCheckUtils]: 40: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,581 INFO L290 TraceCheckUtils]: 39: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,581 INFO L290 TraceCheckUtils]: 38: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,581 INFO L272 TraceCheckUtils]: 37: Hoare triple {26323#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,581 INFO L290 TraceCheckUtils]: 36: Hoare triple {26323#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {26323#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:21,582 INFO L290 TraceCheckUtils]: 35: Hoare triple {26295#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26323#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:21,582 INFO L290 TraceCheckUtils]: 34: Hoare triple {26295#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26295#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:21,582 INFO L290 TraceCheckUtils]: 33: Hoare triple {26295#(<= ~counter~0 2)} assume !!(0 != ~r~0); {26295#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:21,583 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {26210#true} {26295#(<= ~counter~0 2)} #63#return; {26295#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:21,583 INFO L290 TraceCheckUtils]: 31: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,583 INFO L290 TraceCheckUtils]: 30: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,583 INFO L290 TraceCheckUtils]: 29: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,583 INFO L272 TraceCheckUtils]: 28: Hoare triple {26295#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,583 INFO L290 TraceCheckUtils]: 27: Hoare triple {26295#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {26295#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:21,584 INFO L290 TraceCheckUtils]: 26: Hoare triple {26267#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26295#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:21,584 INFO L290 TraceCheckUtils]: 25: Hoare triple {26267#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26267#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:21,584 INFO L290 TraceCheckUtils]: 24: Hoare triple {26267#(<= ~counter~0 1)} assume !!(0 != ~r~0); {26267#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:21,585 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {26210#true} {26267#(<= ~counter~0 1)} #63#return; {26267#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:21,585 INFO L290 TraceCheckUtils]: 22: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,585 INFO L290 TraceCheckUtils]: 21: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,585 INFO L290 TraceCheckUtils]: 20: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,585 INFO L272 TraceCheckUtils]: 19: Hoare triple {26267#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,585 INFO L290 TraceCheckUtils]: 18: Hoare triple {26267#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {26267#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:21,586 INFO L290 TraceCheckUtils]: 17: Hoare triple {26218#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26267#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:21,586 INFO L290 TraceCheckUtils]: 16: Hoare triple {26218#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:21,586 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {26210#true} {26218#(<= ~counter~0 0)} #61#return; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:21,586 INFO L290 TraceCheckUtils]: 14: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,586 INFO L290 TraceCheckUtils]: 13: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,586 INFO L290 TraceCheckUtils]: 12: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,586 INFO L272 TraceCheckUtils]: 11: Hoare triple {26218#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,587 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26210#true} {26218#(<= ~counter~0 0)} #59#return; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:21,587 INFO L290 TraceCheckUtils]: 9: Hoare triple {26210#true} assume true; {26210#true} is VALID [2022-04-08 06:09:21,587 INFO L290 TraceCheckUtils]: 8: Hoare triple {26210#true} assume !(0 == ~cond); {26210#true} is VALID [2022-04-08 06:09:21,587 INFO L290 TraceCheckUtils]: 7: Hoare triple {26210#true} ~cond := #in~cond; {26210#true} is VALID [2022-04-08 06:09:21,587 INFO L272 TraceCheckUtils]: 6: Hoare triple {26218#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {26210#true} is VALID [2022-04-08 06:09:21,587 INFO L290 TraceCheckUtils]: 5: Hoare triple {26218#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:21,588 INFO L272 TraceCheckUtils]: 4: Hoare triple {26218#(<= ~counter~0 0)} call #t~ret7 := main(); {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:21,588 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26218#(<= ~counter~0 0)} {26210#true} #67#return; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:21,588 INFO L290 TraceCheckUtils]: 2: Hoare triple {26218#(<= ~counter~0 0)} assume true; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:21,589 INFO L290 TraceCheckUtils]: 1: Hoare triple {26210#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {26218#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:21,589 INFO L272 TraceCheckUtils]: 0: Hoare triple {26210#true} call ULTIMATE.init(); {26210#true} is VALID [2022-04-08 06:09:21,589 INFO L134 CoverageAnalysis]: Checked inductivity of 1619 backedges. 38 proven. 893 refuted. 0 times theorem prover too weak. 688 trivial. 0 not checked. [2022-04-08 06:09:21,589 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:09:21,590 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [296748894] [2022-04-08 06:09:21,590 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:09:21,590 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [945906099] [2022-04-08 06:09:21,590 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [945906099] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:09:21,590 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:09:21,590 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 23] total 23 [2022-04-08 06:09:21,590 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:09:21,590 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [843738173] [2022-04-08 06:09:21,590 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [843738173] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:09:21,590 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:09:21,590 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [23] imperfect sequences [] total 23 [2022-04-08 06:09:21,590 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [646580337] [2022-04-08 06:09:21,590 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:09:21,591 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 6.304347826086956) internal successors, (145), 22 states have internal predecessors, (145), 22 states have call successors, (24), 22 states have call predecessors, (24), 20 states have return successors, (22), 20 states have call predecessors, (22), 21 states have call successors, (22) Word has length 194 [2022-04-08 06:09:21,591 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:09:21,591 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 23 states, 23 states have (on average 6.304347826086956) internal successors, (145), 22 states have internal predecessors, (145), 22 states have call successors, (24), 22 states have call predecessors, (24), 20 states have return successors, (22), 20 states have call predecessors, (22), 21 states have call successors, (22) [2022-04-08 06:09:21,769 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 191 edges. 191 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:21,770 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-04-08 06:09:21,770 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:09:21,770 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-04-08 06:09:21,770 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=233, Invalid=273, Unknown=0, NotChecked=0, Total=506 [2022-04-08 06:09:21,771 INFO L87 Difference]: Start difference. First operand 191 states and 211 transitions. Second operand has 23 states, 23 states have (on average 6.304347826086956) internal successors, (145), 22 states have internal predecessors, (145), 22 states have call successors, (24), 22 states have call predecessors, (24), 20 states have return successors, (22), 20 states have call predecessors, (22), 21 states have call successors, (22) [2022-04-08 06:09:22,829 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:22,829 INFO L93 Difference]: Finished difference Result 205 states and 226 transitions. [2022-04-08 06:09:22,829 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 42 states. [2022-04-08 06:09:22,830 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 6.304347826086956) internal successors, (145), 22 states have internal predecessors, (145), 22 states have call successors, (24), 22 states have call predecessors, (24), 20 states have return successors, (22), 20 states have call predecessors, (22), 21 states have call successors, (22) Word has length 194 [2022-04-08 06:09:22,830 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:09:22,830 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 6.304347826086956) internal successors, (145), 22 states have internal predecessors, (145), 22 states have call successors, (24), 22 states have call predecessors, (24), 20 states have return successors, (22), 20 states have call predecessors, (22), 21 states have call successors, (22) [2022-04-08 06:09:22,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 225 transitions. [2022-04-08 06:09:22,835 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 6.304347826086956) internal successors, (145), 22 states have internal predecessors, (145), 22 states have call successors, (24), 22 states have call predecessors, (24), 20 states have return successors, (22), 20 states have call predecessors, (22), 21 states have call successors, (22) [2022-04-08 06:09:22,840 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 225 transitions. [2022-04-08 06:09:22,840 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 42 states and 225 transitions. [2022-04-08 06:09:23,034 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 225 edges. 225 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:23,038 INFO L225 Difference]: With dead ends: 205 [2022-04-08 06:09:23,038 INFO L226 Difference]: Without dead ends: 200 [2022-04-08 06:09:23,038 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 406 GetRequests, 365 SyntacticMatches, 1 SemanticMatches, 40 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 209 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=651, Invalid=1071, Unknown=0, NotChecked=0, Total=1722 [2022-04-08 06:09:23,039 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 50 mSDsluCounter, 219 mSDsCounter, 0 mSdLazyCounter, 151 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 264 SdHoareTripleChecker+Invalid, 172 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 151 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 06:09:23,039 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 264 Invalid, 172 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 151 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 06:09:23,039 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 200 states. [2022-04-08 06:09:23,371 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 200 to 200. [2022-04-08 06:09:23,371 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:09:23,372 INFO L82 GeneralOperation]: Start isEquivalent. First operand 200 states. Second operand has 200 states, 152 states have (on average 1.138157894736842) internal successors, (173), 152 states have internal predecessors, (173), 25 states have call successors, (25), 24 states have call predecessors, (25), 22 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:09:23,372 INFO L74 IsIncluded]: Start isIncluded. First operand 200 states. Second operand has 200 states, 152 states have (on average 1.138157894736842) internal successors, (173), 152 states have internal predecessors, (173), 25 states have call successors, (25), 24 states have call predecessors, (25), 22 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:09:23,372 INFO L87 Difference]: Start difference. First operand 200 states. Second operand has 200 states, 152 states have (on average 1.138157894736842) internal successors, (173), 152 states have internal predecessors, (173), 25 states have call successors, (25), 24 states have call predecessors, (25), 22 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:09:23,376 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:23,376 INFO L93 Difference]: Finished difference Result 200 states and 221 transitions. [2022-04-08 06:09:23,376 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 221 transitions. [2022-04-08 06:09:23,377 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:09:23,377 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:09:23,377 INFO L74 IsIncluded]: Start isIncluded. First operand has 200 states, 152 states have (on average 1.138157894736842) internal successors, (173), 152 states have internal predecessors, (173), 25 states have call successors, (25), 24 states have call predecessors, (25), 22 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 200 states. [2022-04-08 06:09:23,377 INFO L87 Difference]: Start difference. First operand has 200 states, 152 states have (on average 1.138157894736842) internal successors, (173), 152 states have internal predecessors, (173), 25 states have call successors, (25), 24 states have call predecessors, (25), 22 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 200 states. [2022-04-08 06:09:23,382 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:23,382 INFO L93 Difference]: Finished difference Result 200 states and 221 transitions. [2022-04-08 06:09:23,382 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 221 transitions. [2022-04-08 06:09:23,383 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:09:23,383 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:09:23,383 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:09:23,383 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:09:23,383 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 200 states, 152 states have (on average 1.138157894736842) internal successors, (173), 152 states have internal predecessors, (173), 25 states have call successors, (25), 24 states have call predecessors, (25), 22 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:09:23,388 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 200 states to 200 states and 221 transitions. [2022-04-08 06:09:23,388 INFO L78 Accepts]: Start accepts. Automaton has 200 states and 221 transitions. Word has length 194 [2022-04-08 06:09:23,388 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:09:23,388 INFO L478 AbstractCegarLoop]: Abstraction has 200 states and 221 transitions. [2022-04-08 06:09:23,389 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 23 states have (on average 6.304347826086956) internal successors, (145), 22 states have internal predecessors, (145), 22 states have call successors, (24), 22 states have call predecessors, (24), 20 states have return successors, (22), 20 states have call predecessors, (22), 21 states have call successors, (22) [2022-04-08 06:09:23,389 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 200 states and 221 transitions. [2022-04-08 06:09:24,890 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 221 edges. 221 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:24,890 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 221 transitions. [2022-04-08 06:09:24,892 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 204 [2022-04-08 06:09:24,892 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:09:24,893 INFO L499 BasicCegarLoop]: trace histogram [21, 21, 20, 20, 20, 20, 20, 20, 20, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:09:24,897 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Ended with exit code 0 [2022-04-08 06:09:25,093 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:09:25,093 INFO L403 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:09:25,093 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:09:25,093 INFO L85 PathProgramCache]: Analyzing trace with hash 1934081686, now seen corresponding path program 39 times [2022-04-08 06:09:25,094 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:09:25,094 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1851678329] [2022-04-08 06:09:25,094 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:09:25,094 INFO L85 PathProgramCache]: Analyzing trace with hash 1934081686, now seen corresponding path program 40 times [2022-04-08 06:09:25,094 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:09:25,094 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [845959023] [2022-04-08 06:09:25,094 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:09:25,094 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:09:25,114 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:09:25,114 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1703738715] [2022-04-08 06:09:25,114 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:09:25,114 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:09:25,114 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:09:25,115 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-08 06:09:25,116 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-08 06:09:25,297 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:09:25,297 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-08 06:09:25,297 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-08 06:09:25,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-08 06:09:25,543 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-08 06:09:25,543 INFO L130 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found a feasible trace [2022-04-08 06:09:25,543 INFO L618 BasicCegarLoop]: Counterexample is feasible [2022-04-08 06:09:25,547 INFO L788 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-08 06:09:25,555 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-08 06:09:25,755 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,25 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:09:25,759 INFO L719 BasicCegarLoop]: Path program histogram: [40, 2, 2, 2, 2] [2022-04-08 06:09:25,762 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-08 06:09:25,791 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-08 06:09:25,791 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-08 06:09:25,791 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-08 06:09:25,791 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: L9-2 has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: L26-1 has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: L26-1 has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-08 06:09:25,792 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: L38-2 has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: L38-2 has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: L48 has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: L34-3 has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: L34-3 has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-08 06:09:25,793 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-08 06:09:25,793 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-08 06:09:25,794 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 06:09:25 BoogieIcfgContainer [2022-04-08 06:09:25,794 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-08 06:09:25,795 INFO L158 Benchmark]: Toolchain (without parser) took 140745.06ms. Allocated memory was 173.0MB in the beginning and 207.6MB in the end (delta: 34.6MB). Free memory was 124.0MB in the beginning and 160.1MB in the end (delta: -36.0MB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-08 06:09:25,795 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 173.0MB. Free memory was 140.5MB in the beginning and 140.4MB in the end (delta: 140.0kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-08 06:09:25,795 INFO L158 Benchmark]: CACSL2BoogieTranslator took 219.33ms. Allocated memory is still 173.0MB. Free memory was 123.9MB in the beginning and 148.1MB in the end (delta: -24.2MB). Peak memory consumption was 10.9MB. Max. memory is 8.0GB. [2022-04-08 06:09:25,796 INFO L158 Benchmark]: Boogie Preprocessor took 30.14ms. Allocated memory is still 173.0MB. Free memory was 148.1MB in the beginning and 146.4MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-08 06:09:25,796 INFO L158 Benchmark]: RCFGBuilder took 298.81ms. Allocated memory is still 173.0MB. Free memory was 146.4MB in the beginning and 135.3MB in the end (delta: 11.2MB). Peak memory consumption was 10.5MB. Max. memory is 8.0GB. [2022-04-08 06:09:25,796 INFO L158 Benchmark]: TraceAbstraction took 140192.52ms. Allocated memory was 173.0MB in the beginning and 207.6MB in the end (delta: 34.6MB). Free memory was 134.9MB in the beginning and 160.1MB in the end (delta: -25.2MB). Peak memory consumption was 10.3MB. Max. memory is 8.0GB. [2022-04-08 06:09:25,797 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.11ms. Allocated memory is still 173.0MB. Free memory was 140.5MB in the beginning and 140.4MB in the end (delta: 140.0kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 219.33ms. Allocated memory is still 173.0MB. Free memory was 123.9MB in the beginning and 148.1MB in the end (delta: -24.2MB). Peak memory consumption was 10.9MB. Max. memory is 8.0GB. * Boogie Preprocessor took 30.14ms. Allocated memory is still 173.0MB. Free memory was 148.1MB in the beginning and 146.4MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 298.81ms. Allocated memory is still 173.0MB. Free memory was 146.4MB in the beginning and 135.3MB in the end (delta: 11.2MB). Peak memory consumption was 10.5MB. Max. memory is 8.0GB. * TraceAbstraction took 140192.52ms. Allocated memory was 173.0MB in the beginning and 207.6MB in the end (delta: 34.6MB). Free memory was 134.9MB in the beginning and 160.1MB in the end (delta: -25.2MB). Peak memory consumption was 10.3MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - CounterExampleResult [Line: 14]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L19] int counter = 0; [L21] int A, R; [L22] long long u, v, r; [L23] A = __VERIFIER_nondet_int() [L24] R = __VERIFIER_nondet_int() [L26] CALL assume_abort_if_not(((long long) R - 1) * ((long long) R - 1) < A) [L9] COND FALSE !(!cond) [L26] RET assume_abort_if_not(((long long) R - 1) * ((long long) R - 1) < A) [L28] CALL assume_abort_if_not(A % 2 == 1) [L9] COND FALSE !(!cond) [L28] RET assume_abort_if_not(A % 2 == 1) [L30] u = ((long long) 2 * R) + 1 [L31] v = 1 [L32] r = ((long long) R * R) - A [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND FALSE !(counter++<20) [L48] CALL __VERIFIER_assert(((long long) 4*A) == u*u - v*v - 2*u + 2*v) [L12] COND TRUE !(cond) [L14] reach_error() - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 33 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 140.1s, OverallIterations: 24, TraceHistogramMax: 21, PathProgramHistogramMax: 40, EmptinessCheckTime: 0.0s, AutomataDifference: 23.9s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 739 SdHoareTripleChecker+Valid, 5.7s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 738 mSDsluCounter, 3313 SdHoareTripleChecker+Invalid, 5.7s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 2523 mSDsCounter, 343 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1303 IncrementalHoareTripleChecker+Invalid, 1646 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 343 mSolverCounterUnsat, 790 mSDtfsCounter, 1303 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 4591 GetRequests, 4028 SyntacticMatches, 11 SemanticMatches, 552 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1674 ImplicationChecksByTransitivity, 4.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=200occurred in iteration=23, InterpolantAutomatonStates: 475, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 3.2s AutomataMinimizationTime, 23 MinimizatonAttempts, 10 StatesRemovedByMinimization, 2 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: No data available, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2022-04-08 06:09:25,815 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...