/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/fermat1-ll_unwindbound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 06:01:24,533 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 06:01:24,535 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 06:01:24,575 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 06:01:24,575 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 06:01:24,576 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 06:01:24,578 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 06:01:24,580 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 06:01:24,581 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 06:01:24,585 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 06:01:24,585 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 06:01:24,587 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 06:01:24,588 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 06:01:24,589 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 06:01:24,590 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 06:01:24,592 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 06:01:24,592 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 06:01:24,593 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 06:01:24,594 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 06:01:24,596 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 06:01:24,597 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 06:01:24,598 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 06:01:24,598 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 06:01:24,599 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 06:01:24,600 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 06:01:24,605 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 06:01:24,606 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 06:01:24,606 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 06:01:24,606 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 06:01:24,606 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 06:01:24,607 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 06:01:24,608 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 06:01:24,609 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 06:01:24,609 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 06:01:24,609 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 06:01:24,610 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 06:01:24,610 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 06:01:24,611 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 06:01:24,611 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 06:01:24,611 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 06:01:24,611 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 06:01:24,613 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 06:01:24,613 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:01:24,621 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 06:01:24,621 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 06:01:24,622 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 06:01:24,622 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-08 06:01:24,622 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 06:01:24,623 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-08 06:01:24,623 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 06:01:24,623 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 06:01:24,623 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 06:01:24,623 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 06:01:24,623 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-08 06:01:24,624 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 06:01:24,624 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 06:01:24,624 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 06:01:24,624 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 06:01:24,624 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 06:01:24,624 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 06:01:24,624 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 06:01:24,624 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 06:01:24,624 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 06:01:24,624 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 06:01:24,624 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 06:01:24,625 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 06:01:24,625 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 06:01:24,625 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-08 06:01:24,625 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:01:24,855 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 06:01:24,876 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 06:01:24,878 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 06:01:24,879 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 06:01:24,879 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 06:01:24,880 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_unwindbound20.c [2022-04-08 06:01:24,938 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b4ebb8ea8/df184194c2af4b6d85cca62bca8b32da/FLAG0f2a0125d [2022-04-08 06:01:25,314 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 06:01:25,314 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_unwindbound20.c [2022-04-08 06:01:25,322 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b4ebb8ea8/df184194c2af4b6d85cca62bca8b32da/FLAG0f2a0125d [2022-04-08 06:01:25,337 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/b4ebb8ea8/df184194c2af4b6d85cca62bca8b32da [2022-04-08 06:01:25,339 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 06:01:25,340 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 06:01:25,342 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 06:01:25,342 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 06:01:25,345 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 06:01:25,346 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 06:01:25" (1/1) ... [2022-04-08 06:01:25,347 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2f752c2d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:01:25, skipping insertion in model container [2022-04-08 06:01:25,347 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 06:01:25" (1/1) ... [2022-04-08 06:01:25,352 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 06:01:25,362 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 06:01:25,513 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/fermat1-ll_unwindbound20.c[535,548] [2022-04-08 06:01:25,547 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 06:01:25,552 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 06:01:25,568 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/fermat1-ll_unwindbound20.c[535,548] [2022-04-08 06:01:25,577 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 06:01:25,585 INFO L208 MainTranslator]: Completed translation [2022-04-08 06:01:25,586 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:01:25 WrapperNode [2022-04-08 06:01:25,587 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 06:01:25,587 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 06:01:25,587 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 06:01:25,587 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 06:01:25,594 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:01:25" (1/1) ... [2022-04-08 06:01:25,594 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:01:25" (1/1) ... [2022-04-08 06:01:25,606 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:01:25" (1/1) ... [2022-04-08 06:01:25,607 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:01:25" (1/1) ... [2022-04-08 06:01:25,621 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:01:25" (1/1) ... [2022-04-08 06:01:25,624 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:01:25" (1/1) ... [2022-04-08 06:01:25,624 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:01:25" (1/1) ... [2022-04-08 06:01:25,626 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 06:01:25,626 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 06:01:25,626 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 06:01:25,626 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 06:01:25,628 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:01:25" (1/1) ... [2022-04-08 06:01:25,644 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 06:01:25,651 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:01:25,662 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:01:25,668 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:01:25,699 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 06:01:25,700 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 06:01:25,700 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 06:01:25,700 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 06:01:25,700 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 06:01:25,700 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 06:01:25,700 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 06:01:25,700 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 06:01:25,700 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 06:01:25,701 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 06:01:25,701 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 06:01:25,701 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 06:01:25,702 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 06:01:25,702 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 06:01:25,702 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 06:01:25,702 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 06:01:25,702 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 06:01:25,702 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 06:01:25,702 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 06:01:25,702 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 06:01:25,743 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 06:01:25,744 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 06:01:25,942 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 06:01:25,947 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 06:01:25,947 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-08 06:01:25,948 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 06:01:25 BoogieIcfgContainer [2022-04-08 06:01:25,948 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 06:01:25,949 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 06:01:25,949 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 06:01:25,956 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 06:01:25,956 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 06:01:25" (1/3) ... [2022-04-08 06:01:25,957 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5f127579 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 06:01:25, skipping insertion in model container [2022-04-08 06:01:25,957 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:01:25" (2/3) ... [2022-04-08 06:01:25,957 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5f127579 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 06:01:25, skipping insertion in model container [2022-04-08 06:01:25,957 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 06:01:25" (3/3) ... [2022-04-08 06:01:25,958 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat1-ll_unwindbound20.c [2022-04-08 06:01:25,961 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 06:01:25,961 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 06:01:25,997 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 06:01:26,004 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:01:26,004 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 06:01:26,020 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 8 states have call successors, (8), 4 states have call predecessors, (8), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 06:01:26,024 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-08 06:01:26,025 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:01:26,025 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:01:26,026 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:01:26,030 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:01:26,030 INFO L85 PathProgramCache]: Analyzing trace with hash 928708300, now seen corresponding path program 1 times [2022-04-08 06:01:26,036 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:01:26,036 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [841420956] [2022-04-08 06:01:26,044 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:01:26,044 INFO L85 PathProgramCache]: Analyzing trace with hash 928708300, now seen corresponding path program 2 times [2022-04-08 06:01:26,047 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:01:26,047 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [62309765] [2022-04-08 06:01:26,048 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:01:26,048 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:01:26,144 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:01:26,145 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [471528064] [2022-04-08 06:01:26,145 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:01:26,145 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:01:26,146 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:01:26,148 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:01:26,187 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:01:26,237 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 06:01:26,238 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:01:26,239 INFO L263 TraceCheckSpWp]: Trace formula consists of 80 conjuncts, 1 conjunts are in the unsatisfiable core [2022-04-08 06:01:26,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:01:26,253 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:01:26,374 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} call ULTIMATE.init(); {40#true} is VALID [2022-04-08 06:01:26,374 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {40#true} is VALID [2022-04-08 06:01:26,375 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-08 06:01:26,375 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #102#return; {40#true} is VALID [2022-04-08 06:01:26,375 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret9 := main(); {40#true} is VALID [2022-04-08 06:01:26,375 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#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; {40#true} is VALID [2022-04-08 06:01:26,375 INFO L272 TraceCheckUtils]: 6: Hoare triple {40#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {40#true} is VALID [2022-04-08 06:01:26,375 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-08 06:01:26,376 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume 0 == ~cond;assume false; {40#true} is VALID [2022-04-08 06:01:26,376 INFO L290 TraceCheckUtils]: 9: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-08 06:01:26,376 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {40#true} {40#true} #90#return; {40#true} is VALID [2022-04-08 06:01:26,376 INFO L272 TraceCheckUtils]: 11: Hoare triple {40#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)); {40#true} is VALID [2022-04-08 06:01:26,376 INFO L290 TraceCheckUtils]: 12: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-08 06:01:26,392 INFO L290 TraceCheckUtils]: 13: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-08 06:01:26,392 INFO L290 TraceCheckUtils]: 14: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-08 06:01:26,392 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41#false} {40#true} #92#return; {41#false} is VALID [2022-04-08 06:01:26,392 INFO L290 TraceCheckUtils]: 16: Hoare triple {41#false} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {41#false} is VALID [2022-04-08 06:01:26,393 INFO L290 TraceCheckUtils]: 17: Hoare triple {41#false} assume !true; {41#false} is VALID [2022-04-08 06:01:26,393 INFO L272 TraceCheckUtils]: 18: Hoare triple {41#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)); {41#false} is VALID [2022-04-08 06:01:26,393 INFO L290 TraceCheckUtils]: 19: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-08 06:01:26,393 INFO L290 TraceCheckUtils]: 20: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-08 06:01:26,393 INFO L290 TraceCheckUtils]: 21: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-08 06:01:26,394 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:01:26,394 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 06:01:26,395 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:01:26,403 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [62309765] [2022-04-08 06:01:26,403 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:01:26,403 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [471528064] [2022-04-08 06:01:26,404 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [471528064] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:01:26,404 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:01:26,404 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-04-08 06:01:26,407 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:01:26,407 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [841420956] [2022-04-08 06:01:26,407 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [841420956] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:01:26,407 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:01:26,407 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-04-08 06:01:26,407 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1093830027] [2022-04-08 06:01:26,408 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:01:26,412 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:01:26,413 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:01:26,415 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:01:26,457 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:01:26,458 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-04-08 06:01:26,458 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:01:26,471 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-04-08 06:01:26,472 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-04-08 06:01:26,474 INFO L87 Difference]: Start difference. First operand has 37 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 8 states have call successors, (8), 4 states have call predecessors, (8), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) 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:01:26,558 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:01:26,559 INFO L93 Difference]: Finished difference Result 67 states and 100 transitions. [2022-04-08 06:01:26,559 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-04-08 06:01:26,559 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:01:26,560 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:01:26,561 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:01:26,575 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 100 transitions. [2022-04-08 06:01:26,576 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:01:26,585 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 100 transitions. [2022-04-08 06:01:26,585 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2 states and 100 transitions. [2022-04-08 06:01:26,707 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:01:26,714 INFO L225 Difference]: With dead ends: 67 [2022-04-08 06:01:26,715 INFO L226 Difference]: Without dead ends: 32 [2022-04-08 06:01:26,717 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:01:26,722 INFO L913 BasicCegarLoop]: 46 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, 46 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:01:26,723 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:01:26,735 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-08 06:01:26,749 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-08 06:01:26,749 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:01:26,750 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 06:01:26,751 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 06:01:26,752 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 06:01:26,757 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:01:26,759 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-08 06:01:26,759 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-08 06:01:26,764 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:01:26,764 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:01:26,765 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 32 states. [2022-04-08 06:01:26,766 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 32 states. [2022-04-08 06:01:26,770 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:01:26,770 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-08 06:01:26,770 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-08 06:01:26,771 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:01:26,771 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:01:26,771 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:01:26,771 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:01:26,772 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 06:01:26,776 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 41 transitions. [2022-04-08 06:01:26,777 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 41 transitions. Word has length 22 [2022-04-08 06:01:26,778 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:01:26,778 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 41 transitions. [2022-04-08 06:01:26,778 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:01:26,778 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 41 transitions. [2022-04-08 06:01:26,809 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:01:26,809 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-08 06:01:26,810 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-08 06:01:26,810 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:01:26,810 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:01:26,841 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-08 06:01:27,024 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:01:27,025 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:01:27,025 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:01:27,025 INFO L85 PathProgramCache]: Analyzing trace with hash -155606603, now seen corresponding path program 1 times [2022-04-08 06:01:27,026 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:01:27,026 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1374647435] [2022-04-08 06:01:27,026 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:01:27,026 INFO L85 PathProgramCache]: Analyzing trace with hash -155606603, now seen corresponding path program 2 times [2022-04-08 06:01:27,026 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:01:27,027 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [166459880] [2022-04-08 06:01:27,027 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:01:27,027 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:01:27,046 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:01:27,047 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [283668911] [2022-04-08 06:01:27,047 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:01:27,047 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:01:27,048 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:01:27,060 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:01:27,061 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:01:27,110 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 06:01:27,110 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:01:27,112 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 06:01:27,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:01:27,124 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:01:27,311 INFO L272 TraceCheckUtils]: 0: Hoare triple {369#true} call ULTIMATE.init(); {369#true} is VALID [2022-04-08 06:01:27,313 INFO L290 TraceCheckUtils]: 1: Hoare triple {369#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,314 INFO L290 TraceCheckUtils]: 2: Hoare triple {377#(<= ~counter~0 0)} assume true; {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,314 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {377#(<= ~counter~0 0)} {369#true} #102#return; {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,315 INFO L272 TraceCheckUtils]: 4: Hoare triple {377#(<= ~counter~0 0)} call #t~ret9 := main(); {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,315 INFO L290 TraceCheckUtils]: 5: Hoare triple {377#(<= ~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; {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,316 INFO L272 TraceCheckUtils]: 6: Hoare triple {377#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,316 INFO L290 TraceCheckUtils]: 7: Hoare triple {377#(<= ~counter~0 0)} ~cond := #in~cond; {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,317 INFO L290 TraceCheckUtils]: 8: Hoare triple {377#(<= ~counter~0 0)} assume !(0 == ~cond); {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,317 INFO L290 TraceCheckUtils]: 9: Hoare triple {377#(<= ~counter~0 0)} assume true; {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,317 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {377#(<= ~counter~0 0)} {377#(<= ~counter~0 0)} #90#return; {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,318 INFO L272 TraceCheckUtils]: 11: Hoare triple {377#(<= ~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)); {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,318 INFO L290 TraceCheckUtils]: 12: Hoare triple {377#(<= ~counter~0 0)} ~cond := #in~cond; {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,320 INFO L290 TraceCheckUtils]: 13: Hoare triple {377#(<= ~counter~0 0)} assume !(0 == ~cond); {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,320 INFO L290 TraceCheckUtils]: 14: Hoare triple {377#(<= ~counter~0 0)} assume true; {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,320 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {377#(<= ~counter~0 0)} {377#(<= ~counter~0 0)} #92#return; {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,324 INFO L290 TraceCheckUtils]: 16: Hoare triple {377#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {377#(<= ~counter~0 0)} is VALID [2022-04-08 06:01:27,324 INFO L290 TraceCheckUtils]: 17: Hoare triple {377#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {426#(<= |main_#t~post6| 0)} is VALID [2022-04-08 06:01:27,325 INFO L290 TraceCheckUtils]: 18: Hoare triple {426#(<= |main_#t~post6| 0)} assume !(#t~post6 < 20);havoc #t~post6; {370#false} is VALID [2022-04-08 06:01:27,325 INFO L272 TraceCheckUtils]: 19: Hoare triple {370#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)); {370#false} is VALID [2022-04-08 06:01:27,325 INFO L290 TraceCheckUtils]: 20: Hoare triple {370#false} ~cond := #in~cond; {370#false} is VALID [2022-04-08 06:01:27,325 INFO L290 TraceCheckUtils]: 21: Hoare triple {370#false} assume 0 == ~cond; {370#false} is VALID [2022-04-08 06:01:27,325 INFO L290 TraceCheckUtils]: 22: Hoare triple {370#false} assume !false; {370#false} is VALID [2022-04-08 06:01:27,326 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:01:27,326 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 06:01:27,326 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:01:27,326 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [166459880] [2022-04-08 06:01:27,326 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:01:27,326 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [283668911] [2022-04-08 06:01:27,327 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [283668911] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:01:27,327 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:01:27,327 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 06:01:27,327 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:01:27,327 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1374647435] [2022-04-08 06:01:27,327 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1374647435] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:01:27,327 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:01:27,327 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 06:01:27,328 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [459887598] [2022-04-08 06:01:27,328 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:01:27,328 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:01:27,329 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:01:27,329 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:01:27,344 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:01:27,344 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 06:01:27,344 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:01:27,345 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 06:01:27,345 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 06:01:27,345 INFO L87 Difference]: Start difference. First operand 32 states and 41 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:01:27,432 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:01:27,433 INFO L93 Difference]: Finished difference Result 41 states and 50 transitions. [2022-04-08 06:01:27,433 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 06:01:27,433 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:01:27,434 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:01:27,434 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:01:27,438 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2022-04-08 06:01:27,438 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:01:27,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2022-04-08 06:01:27,440 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 50 transitions. [2022-04-08 06:01:27,476 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:01:27,479 INFO L225 Difference]: With dead ends: 41 [2022-04-08 06:01:27,479 INFO L226 Difference]: Without dead ends: 34 [2022-04-08 06:01:27,479 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:01:27,484 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 0 mSDsluCounter, 62 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 101 SdHoareTripleChecker+Invalid, 9 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:01:27,485 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 101 Invalid, 9 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:01:27,487 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-08 06:01:27,502 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-08 06:01:27,502 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:01:27,503 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 06:01:27,503 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 06:01:27,504 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 06:01:27,507 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:01:27,507 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-08 06:01:27,507 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 06:01:27,508 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:01:27,508 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:01:27,508 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 34 states. [2022-04-08 06:01:27,508 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 34 states. [2022-04-08 06:01:27,510 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:01:27,510 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-08 06:01:27,510 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 06:01:27,510 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:01:27,510 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:01:27,510 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:01:27,510 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:01:27,511 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 06:01:27,512 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 43 transitions. [2022-04-08 06:01:27,512 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 43 transitions. Word has length 23 [2022-04-08 06:01:27,512 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:01:27,512 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 43 transitions. [2022-04-08 06:01:27,512 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:01:27,512 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 43 transitions. [2022-04-08 06:01:27,551 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:01:27,551 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 06:01:27,552 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-08 06:01:27,552 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:01:27,552 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:01:27,569 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:01:27,759 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:01:27,760 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:01:27,760 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:01:27,760 INFO L85 PathProgramCache]: Analyzing trace with hash -153938307, now seen corresponding path program 1 times [2022-04-08 06:01:27,760 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:01:27,760 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [579593397] [2022-04-08 06:01:27,761 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:01:27,761 INFO L85 PathProgramCache]: Analyzing trace with hash -153938307, now seen corresponding path program 2 times [2022-04-08 06:01:27,761 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:01:27,761 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1663773920] [2022-04-08 06:01:27,761 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:01:27,761 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:01:27,773 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:01:27,773 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1592683058] [2022-04-08 06:01:27,773 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:01:27,773 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:01:27,773 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:01:27,774 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:01:27,775 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:01:27,813 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 06:01:27,813 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:01:27,814 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 06:01:27,824 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:01:27,824 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:01:28,056 INFO L272 TraceCheckUtils]: 0: Hoare triple {659#true} call ULTIMATE.init(); {659#true} is VALID [2022-04-08 06:01:28,056 INFO L290 TraceCheckUtils]: 1: Hoare triple {659#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {659#true} is VALID [2022-04-08 06:01:28,057 INFO L290 TraceCheckUtils]: 2: Hoare triple {659#true} assume true; {659#true} is VALID [2022-04-08 06:01:28,057 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {659#true} {659#true} #102#return; {659#true} is VALID [2022-04-08 06:01:28,057 INFO L272 TraceCheckUtils]: 4: Hoare triple {659#true} call #t~ret9 := main(); {659#true} is VALID [2022-04-08 06:01:28,057 INFO L290 TraceCheckUtils]: 5: Hoare triple {659#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; {659#true} is VALID [2022-04-08 06:01:28,057 INFO L272 TraceCheckUtils]: 6: Hoare triple {659#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {659#true} is VALID [2022-04-08 06:01:28,057 INFO L290 TraceCheckUtils]: 7: Hoare triple {659#true} ~cond := #in~cond; {659#true} is VALID [2022-04-08 06:01:28,057 INFO L290 TraceCheckUtils]: 8: Hoare triple {659#true} assume !(0 == ~cond); {659#true} is VALID [2022-04-08 06:01:28,057 INFO L290 TraceCheckUtils]: 9: Hoare triple {659#true} assume true; {659#true} is VALID [2022-04-08 06:01:28,058 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {659#true} {659#true} #90#return; {659#true} is VALID [2022-04-08 06:01:28,058 INFO L272 TraceCheckUtils]: 11: Hoare triple {659#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)); {659#true} is VALID [2022-04-08 06:01:28,058 INFO L290 TraceCheckUtils]: 12: Hoare triple {659#true} ~cond := #in~cond; {659#true} is VALID [2022-04-08 06:01:28,058 INFO L290 TraceCheckUtils]: 13: Hoare triple {659#true} assume !(0 == ~cond); {659#true} is VALID [2022-04-08 06:01:28,058 INFO L290 TraceCheckUtils]: 14: Hoare triple {659#true} assume true; {659#true} is VALID [2022-04-08 06:01:28,058 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {659#true} {659#true} #92#return; {659#true} is VALID [2022-04-08 06:01:29,826 INFO L290 TraceCheckUtils]: 16: Hoare triple {659#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {712#(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:01:29,827 INFO L290 TraceCheckUtils]: 17: Hoare triple {712#(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; {712#(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:01:29,828 INFO L290 TraceCheckUtils]: 18: Hoare triple {712#(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; {712#(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:01:30,067 INFO L272 TraceCheckUtils]: 19: Hoare triple {712#(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)); {722#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:01:30,068 INFO L290 TraceCheckUtils]: 20: Hoare triple {722#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {726#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:01:30,068 INFO L290 TraceCheckUtils]: 21: Hoare triple {726#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {660#false} is VALID [2022-04-08 06:01:30,068 INFO L290 TraceCheckUtils]: 22: Hoare triple {660#false} assume !false; {660#false} is VALID [2022-04-08 06:01:30,069 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:01:30,069 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 06:01:30,069 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:01:30,069 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1663773920] [2022-04-08 06:01:30,069 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:01:30,069 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1592683058] [2022-04-08 06:01:30,069 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1592683058] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:01:30,069 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:01:30,069 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:01:30,070 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:01:30,070 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [579593397] [2022-04-08 06:01:30,070 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [579593397] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:01:30,070 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:01:30,070 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:01:30,070 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [172533653] [2022-04-08 06:01:30,070 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:01:30,071 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:01:30,071 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:01:30,071 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:01:32,716 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 19 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:01:32,717 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 06:01:32,717 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:01:32,717 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 06:01:32,717 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 06:01:32,718 INFO L87 Difference]: Start difference. First operand 34 states and 43 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:01:39,757 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.97s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 06:01:42,049 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.15s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 06:01:44,051 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 06:01:52,385 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.42s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 06:01:52,415 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:01:52,415 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-08 06:01:52,415 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 06:01:52,415 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:01:52,416 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:01:52,416 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:01:52,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 68 transitions. [2022-04-08 06:01:52,419 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:01:52,421 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 68 transitions. [2022-04-08 06:01:52,421 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 68 transitions. [2022-04-08 06:01:57,190 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 67 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:01:57,191 INFO L225 Difference]: With dead ends: 53 [2022-04-08 06:01:57,191 INFO L226 Difference]: Without dead ends: 51 [2022-04-08 06:01:57,192 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:01:57,192 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 16 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 53 mSolverCounterSat, 2 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 10.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 119 SdHoareTripleChecker+Invalid, 56 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 53 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 10.4s IncrementalHoareTripleChecker+Time [2022-04-08 06:01:57,193 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 119 Invalid, 56 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 53 Invalid, 1 Unknown, 0 Unchecked, 10.4s Time] [2022-04-08 06:01:57,193 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-08 06:01:57,219 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-08 06:01:57,220 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:01:57,220 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 06:01:57,220 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 06:01:57,221 INFO L87 Difference]: Start difference. First operand 51 states. Second operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 06:01:57,223 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:01:57,223 INFO L93 Difference]: Finished difference Result 51 states and 68 transitions. [2022-04-08 06:01:57,223 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 68 transitions. [2022-04-08 06:01:57,223 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:01:57,223 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:01:57,224 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 51 states. [2022-04-08 06:01:57,224 INFO L87 Difference]: Start difference. First operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 51 states. [2022-04-08 06:01:57,226 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:01:57,226 INFO L93 Difference]: Finished difference Result 51 states and 68 transitions. [2022-04-08 06:01:57,226 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 68 transitions. [2022-04-08 06:01:57,227 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:01:57,227 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:01:57,227 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:01:57,227 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:01:57,227 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 06:01:57,229 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 67 transitions. [2022-04-08 06:01:57,229 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 67 transitions. Word has length 23 [2022-04-08 06:01:57,229 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:01:57,229 INFO L478 AbstractCegarLoop]: Abstraction has 50 states and 67 transitions. [2022-04-08 06:01:57,229 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:01:57,229 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 50 states and 67 transitions. [2022-04-08 06:02:04,008 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 66 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:04,009 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 67 transitions. [2022-04-08 06:02:04,009 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-08 06:02:04,009 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:02:04,009 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:02:04,031 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:02:04,210 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:02:04,210 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:02:04,211 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:02:04,211 INFO L85 PathProgramCache]: Analyzing trace with hash -1676885497, now seen corresponding path program 1 times [2022-04-08 06:02:04,211 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:04,211 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1160398209] [2022-04-08 06:02:04,211 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:02:04,211 INFO L85 PathProgramCache]: Analyzing trace with hash -1676885497, now seen corresponding path program 2 times [2022-04-08 06:02:04,212 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:02:04,212 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1893610472] [2022-04-08 06:02:04,212 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:02:04,212 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:02:04,226 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:02:04,226 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [825143885] [2022-04-08 06:02:04,226 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:02:04,226 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:02:04,227 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:02:04,236 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:02:04,237 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:02:04,287 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:02:04,287 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:02:04,288 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-08 06:02:04,298 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:02:04,298 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:02:04,485 INFO L272 TraceCheckUtils]: 0: Hoare triple {1042#true} call ULTIMATE.init(); {1042#true} is VALID [2022-04-08 06:02:04,486 INFO L290 TraceCheckUtils]: 1: Hoare triple {1042#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {1042#true} is VALID [2022-04-08 06:02:04,486 INFO L290 TraceCheckUtils]: 2: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-08 06:02:04,486 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1042#true} {1042#true} #102#return; {1042#true} is VALID [2022-04-08 06:02:04,486 INFO L272 TraceCheckUtils]: 4: Hoare triple {1042#true} call #t~ret9 := main(); {1042#true} is VALID [2022-04-08 06:02:04,486 INFO L290 TraceCheckUtils]: 5: Hoare triple {1042#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; {1042#true} is VALID [2022-04-08 06:02:04,486 INFO L272 TraceCheckUtils]: 6: Hoare triple {1042#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1042#true} is VALID [2022-04-08 06:02:04,487 INFO L290 TraceCheckUtils]: 7: Hoare triple {1042#true} ~cond := #in~cond; {1042#true} is VALID [2022-04-08 06:02:04,487 INFO L290 TraceCheckUtils]: 8: Hoare triple {1042#true} assume !(0 == ~cond); {1042#true} is VALID [2022-04-08 06:02:04,487 INFO L290 TraceCheckUtils]: 9: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-08 06:02:04,487 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1042#true} {1042#true} #90#return; {1042#true} is VALID [2022-04-08 06:02:04,487 INFO L272 TraceCheckUtils]: 11: Hoare triple {1042#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)); {1042#true} is VALID [2022-04-08 06:02:04,487 INFO L290 TraceCheckUtils]: 12: Hoare triple {1042#true} ~cond := #in~cond; {1042#true} is VALID [2022-04-08 06:02:04,487 INFO L290 TraceCheckUtils]: 13: Hoare triple {1042#true} assume !(0 == ~cond); {1042#true} is VALID [2022-04-08 06:02:04,488 INFO L290 TraceCheckUtils]: 14: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-08 06:02:04,488 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1042#true} {1042#true} #92#return; {1042#true} is VALID [2022-04-08 06:02:04,488 INFO L290 TraceCheckUtils]: 16: Hoare triple {1042#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1042#true} is VALID [2022-04-08 06:02:04,488 INFO L290 TraceCheckUtils]: 17: Hoare triple {1042#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1042#true} is VALID [2022-04-08 06:02:04,488 INFO L290 TraceCheckUtils]: 18: Hoare triple {1042#true} assume !!(#t~post6 < 20);havoc #t~post6; {1042#true} is VALID [2022-04-08 06:02:04,488 INFO L272 TraceCheckUtils]: 19: Hoare triple {1042#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)); {1042#true} is VALID [2022-04-08 06:02:04,490 INFO L290 TraceCheckUtils]: 20: Hoare triple {1042#true} ~cond := #in~cond; {1107#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:02:04,490 INFO L290 TraceCheckUtils]: 21: Hoare triple {1107#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:04,491 INFO L290 TraceCheckUtils]: 22: Hoare triple {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:04,492 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} {1042#true} #94#return; {1118#(= (+ (* 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:02:04,492 INFO L290 TraceCheckUtils]: 24: Hoare triple {1118#(= (+ (* 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); {1122#(= (+ (* 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:02:04,493 INFO L272 TraceCheckUtils]: 25: Hoare triple {1122#(= (+ (* 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)); {1126#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:02:04,493 INFO L290 TraceCheckUtils]: 26: Hoare triple {1126#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1130#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:02:04,494 INFO L290 TraceCheckUtils]: 27: Hoare triple {1130#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1043#false} is VALID [2022-04-08 06:02:04,494 INFO L290 TraceCheckUtils]: 28: Hoare triple {1043#false} assume !false; {1043#false} is VALID [2022-04-08 06:02:04,494 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:02:04,494 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:02:04,897 INFO L290 TraceCheckUtils]: 28: Hoare triple {1043#false} assume !false; {1043#false} is VALID [2022-04-08 06:02:04,897 INFO L290 TraceCheckUtils]: 27: Hoare triple {1130#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1043#false} is VALID [2022-04-08 06:02:04,898 INFO L290 TraceCheckUtils]: 26: Hoare triple {1126#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1130#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:02:04,898 INFO L272 TraceCheckUtils]: 25: Hoare triple {1122#(= (+ (* 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)); {1126#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:02:04,899 INFO L290 TraceCheckUtils]: 24: Hoare triple {1149#(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); {1122#(= (+ (* 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:02:04,900 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} {1042#true} #94#return; {1149#(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:02:04,906 INFO L290 TraceCheckUtils]: 22: Hoare triple {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:04,906 INFO L290 TraceCheckUtils]: 21: Hoare triple {1162#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:04,907 INFO L290 TraceCheckUtils]: 20: Hoare triple {1042#true} ~cond := #in~cond; {1162#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:02:04,907 INFO L272 TraceCheckUtils]: 19: Hoare triple {1042#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)); {1042#true} is VALID [2022-04-08 06:02:04,907 INFO L290 TraceCheckUtils]: 18: Hoare triple {1042#true} assume !!(#t~post6 < 20);havoc #t~post6; {1042#true} is VALID [2022-04-08 06:02:04,907 INFO L290 TraceCheckUtils]: 17: Hoare triple {1042#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1042#true} is VALID [2022-04-08 06:02:04,907 INFO L290 TraceCheckUtils]: 16: Hoare triple {1042#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1042#true} is VALID [2022-04-08 06:02:04,908 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1042#true} {1042#true} #92#return; {1042#true} is VALID [2022-04-08 06:02:04,908 INFO L290 TraceCheckUtils]: 14: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-08 06:02:04,908 INFO L290 TraceCheckUtils]: 13: Hoare triple {1042#true} assume !(0 == ~cond); {1042#true} is VALID [2022-04-08 06:02:04,908 INFO L290 TraceCheckUtils]: 12: Hoare triple {1042#true} ~cond := #in~cond; {1042#true} is VALID [2022-04-08 06:02:04,908 INFO L272 TraceCheckUtils]: 11: Hoare triple {1042#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)); {1042#true} is VALID [2022-04-08 06:02:04,908 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1042#true} {1042#true} #90#return; {1042#true} is VALID [2022-04-08 06:02:04,908 INFO L290 TraceCheckUtils]: 9: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-08 06:02:04,908 INFO L290 TraceCheckUtils]: 8: Hoare triple {1042#true} assume !(0 == ~cond); {1042#true} is VALID [2022-04-08 06:02:04,908 INFO L290 TraceCheckUtils]: 7: Hoare triple {1042#true} ~cond := #in~cond; {1042#true} is VALID [2022-04-08 06:02:04,909 INFO L272 TraceCheckUtils]: 6: Hoare triple {1042#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1042#true} is VALID [2022-04-08 06:02:04,909 INFO L290 TraceCheckUtils]: 5: Hoare triple {1042#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; {1042#true} is VALID [2022-04-08 06:02:04,909 INFO L272 TraceCheckUtils]: 4: Hoare triple {1042#true} call #t~ret9 := main(); {1042#true} is VALID [2022-04-08 06:02:04,909 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1042#true} {1042#true} #102#return; {1042#true} is VALID [2022-04-08 06:02:04,909 INFO L290 TraceCheckUtils]: 2: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-08 06:02:04,909 INFO L290 TraceCheckUtils]: 1: Hoare triple {1042#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {1042#true} is VALID [2022-04-08 06:02:04,909 INFO L272 TraceCheckUtils]: 0: Hoare triple {1042#true} call ULTIMATE.init(); {1042#true} is VALID [2022-04-08 06:02:04,909 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:02:04,910 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:02:04,910 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1893610472] [2022-04-08 06:02:04,910 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:02:04,910 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [825143885] [2022-04-08 06:02:04,910 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [825143885] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:02:04,910 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:02:04,910 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-08 06:02:04,910 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:02:04,910 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1160398209] [2022-04-08 06:02:04,911 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1160398209] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:02:04,911 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:02:04,911 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 06:02:04,911 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1842633397] [2022-04-08 06:02:04,911 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:02:04,911 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:02:04,911 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:02:04,912 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:02:04,931 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:02:04,932 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 06:02:04,932 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:04,932 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 06:02:04,932 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-08 06:02:04,933 INFO L87 Difference]: Start difference. First operand 50 states and 67 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:02:05,311 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:05,311 INFO L93 Difference]: Finished difference Result 57 states and 73 transitions. [2022-04-08 06:02:05,311 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 06:02:05,312 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:02:05,312 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:02:05,312 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:02:05,313 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-08 06:02:05,313 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:02:05,314 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-08 06:02:05,314 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-08 06:02:05,355 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:02:05,356 INFO L225 Difference]: With dead ends: 57 [2022-04-08 06:02:05,356 INFO L226 Difference]: Without dead ends: 52 [2022-04-08 06:02:05,357 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:02:05,357 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 25 mSDsluCounter, 106 mSDsCounter, 0 mSdLazyCounter, 83 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 135 SdHoareTripleChecker+Invalid, 93 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 83 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:02:05,357 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 135 Invalid, 93 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 83 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:02:05,358 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-04-08 06:02:05,376 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 52. [2022-04-08 06:02:05,377 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:02:05,377 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand has 52 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 36 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 06:02:05,377 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand has 52 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 36 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 06:02:05,377 INFO L87 Difference]: Start difference. First operand 52 states. Second operand has 52 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 36 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 06:02:05,379 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:05,379 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-08 06:02:05,379 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 66 transitions. [2022-04-08 06:02:05,380 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:05,380 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:05,380 INFO L74 IsIncluded]: Start isIncluded. First operand has 52 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 36 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 52 states. [2022-04-08 06:02:05,380 INFO L87 Difference]: Start difference. First operand has 52 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 36 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 52 states. [2022-04-08 06:02:05,382 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:05,382 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-08 06:02:05,382 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 66 transitions. [2022-04-08 06:02:05,382 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:05,382 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:05,383 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:02:05,383 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:02:05,383 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 52 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 36 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 06:02:05,395 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 66 transitions. [2022-04-08 06:02:05,395 INFO L78 Accepts]: Start accepts. Automaton has 52 states and 66 transitions. Word has length 29 [2022-04-08 06:02:05,395 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:02:05,395 INFO L478 AbstractCegarLoop]: Abstraction has 52 states and 66 transitions. [2022-04-08 06:02:05,395 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:02:05,396 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 52 states and 66 transitions. [2022-04-08 06:02:05,784 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:05,784 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 66 transitions. [2022-04-08 06:02:05,784 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-08 06:02:05,785 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:02:05,785 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, 1, 1, 1] [2022-04-08 06:02:05,803 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:02:05,999 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:02:06,000 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:02:06,000 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:02:06,000 INFO L85 PathProgramCache]: Analyzing trace with hash 1154059858, now seen corresponding path program 1 times [2022-04-08 06:02:06,000 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:06,000 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1162044625] [2022-04-08 06:02:06,001 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:02:06,001 INFO L85 PathProgramCache]: Analyzing trace with hash 1154059858, now seen corresponding path program 2 times [2022-04-08 06:02:06,001 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:02:06,001 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [376367890] [2022-04-08 06:02:06,001 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:02:06,001 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:02:06,015 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:02:06,015 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [451232647] [2022-04-08 06:02:06,015 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:02:06,015 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:02:06,015 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:02:06,016 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:02:06,017 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:02:06,186 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:02:06,186 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:02:06,188 INFO L263 TraceCheckSpWp]: Trace formula consists of 118 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 06:02:06,197 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:02:06,198 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:02:06,368 INFO L272 TraceCheckUtils]: 0: Hoare triple {1553#true} call ULTIMATE.init(); {1553#true} is VALID [2022-04-08 06:02:06,369 INFO L290 TraceCheckUtils]: 1: Hoare triple {1553#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,369 INFO L290 TraceCheckUtils]: 2: Hoare triple {1561#(<= ~counter~0 0)} assume true; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,370 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1561#(<= ~counter~0 0)} {1553#true} #102#return; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,370 INFO L272 TraceCheckUtils]: 4: Hoare triple {1561#(<= ~counter~0 0)} call #t~ret9 := main(); {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,370 INFO L290 TraceCheckUtils]: 5: Hoare triple {1561#(<= ~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; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,371 INFO L272 TraceCheckUtils]: 6: Hoare triple {1561#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,371 INFO L290 TraceCheckUtils]: 7: Hoare triple {1561#(<= ~counter~0 0)} ~cond := #in~cond; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,371 INFO L290 TraceCheckUtils]: 8: Hoare triple {1561#(<= ~counter~0 0)} assume !(0 == ~cond); {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,372 INFO L290 TraceCheckUtils]: 9: Hoare triple {1561#(<= ~counter~0 0)} assume true; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,372 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1561#(<= ~counter~0 0)} {1561#(<= ~counter~0 0)} #90#return; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,373 INFO L272 TraceCheckUtils]: 11: Hoare triple {1561#(<= ~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)); {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,373 INFO L290 TraceCheckUtils]: 12: Hoare triple {1561#(<= ~counter~0 0)} ~cond := #in~cond; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,373 INFO L290 TraceCheckUtils]: 13: Hoare triple {1561#(<= ~counter~0 0)} assume !(0 == ~cond); {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,374 INFO L290 TraceCheckUtils]: 14: Hoare triple {1561#(<= ~counter~0 0)} assume true; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,374 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1561#(<= ~counter~0 0)} {1561#(<= ~counter~0 0)} #92#return; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,374 INFO L290 TraceCheckUtils]: 16: Hoare triple {1561#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:06,375 INFO L290 TraceCheckUtils]: 17: Hoare triple {1561#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1610#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:06,375 INFO L290 TraceCheckUtils]: 18: Hoare triple {1610#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {1610#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:06,387 INFO L272 TraceCheckUtils]: 19: Hoare triple {1610#(<= ~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)); {1610#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:06,388 INFO L290 TraceCheckUtils]: 20: Hoare triple {1610#(<= ~counter~0 1)} ~cond := #in~cond; {1610#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:06,388 INFO L290 TraceCheckUtils]: 21: Hoare triple {1610#(<= ~counter~0 1)} assume !(0 == ~cond); {1610#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:06,388 INFO L290 TraceCheckUtils]: 22: Hoare triple {1610#(<= ~counter~0 1)} assume true; {1610#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:06,389 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1610#(<= ~counter~0 1)} {1610#(<= ~counter~0 1)} #94#return; {1610#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:06,389 INFO L290 TraceCheckUtils]: 24: Hoare triple {1610#(<= ~counter~0 1)} assume !!(0 != ~r~0); {1610#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:06,390 INFO L290 TraceCheckUtils]: 25: Hoare triple {1610#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1635#(<= |main_#t~post7| 1)} is VALID [2022-04-08 06:02:06,390 INFO L290 TraceCheckUtils]: 26: Hoare triple {1635#(<= |main_#t~post7| 1)} assume !(#t~post7 < 20);havoc #t~post7; {1554#false} is VALID [2022-04-08 06:02:06,390 INFO L290 TraceCheckUtils]: 27: Hoare triple {1554#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {1554#false} is VALID [2022-04-08 06:02:06,390 INFO L290 TraceCheckUtils]: 28: Hoare triple {1554#false} assume !(#t~post8 < 20);havoc #t~post8; {1554#false} is VALID [2022-04-08 06:02:06,390 INFO L290 TraceCheckUtils]: 29: Hoare triple {1554#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1554#false} is VALID [2022-04-08 06:02:06,391 INFO L290 TraceCheckUtils]: 30: Hoare triple {1554#false} assume !(#t~post6 < 20);havoc #t~post6; {1554#false} is VALID [2022-04-08 06:02:06,391 INFO L272 TraceCheckUtils]: 31: Hoare triple {1554#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)); {1554#false} is VALID [2022-04-08 06:02:06,391 INFO L290 TraceCheckUtils]: 32: Hoare triple {1554#false} ~cond := #in~cond; {1554#false} is VALID [2022-04-08 06:02:06,391 INFO L290 TraceCheckUtils]: 33: Hoare triple {1554#false} assume 0 == ~cond; {1554#false} is VALID [2022-04-08 06:02:06,391 INFO L290 TraceCheckUtils]: 34: Hoare triple {1554#false} assume !false; {1554#false} is VALID [2022-04-08 06:02:06,391 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:02:06,391 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 06:02:06,391 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:02:06,392 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [376367890] [2022-04-08 06:02:06,392 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:02:06,392 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [451232647] [2022-04-08 06:02:06,392 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [451232647] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:02:06,392 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:02:06,392 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:02:06,392 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:02:06,392 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1162044625] [2022-04-08 06:02:06,392 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1162044625] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:02:06,392 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:02:06,392 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:02:06,393 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1553772751] [2022-04-08 06:02:06,393 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:02:06,393 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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 35 [2022-04-08 06:02:06,393 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:02:06,393 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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:02:06,416 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:06,416 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 06:02:06,417 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:06,417 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 06:02:06,417 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 06:02:06,417 INFO L87 Difference]: Start difference. First operand 52 states and 66 transitions. Second operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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:02:06,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:06,533 INFO L93 Difference]: Finished difference Result 97 states and 125 transitions. [2022-04-08 06:02:06,533 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 06:02:06,533 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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 35 [2022-04-08 06:02:06,533 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:02:06,533 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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:02:06,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 77 transitions. [2022-04-08 06:02:06,535 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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:02:06,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 77 transitions. [2022-04-08 06:02:06,536 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 77 transitions. [2022-04-08 06:02:06,592 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:06,594 INFO L225 Difference]: With dead ends: 97 [2022-04-08 06:02:06,594 INFO L226 Difference]: Without dead ends: 60 [2022-04-08 06:02:06,594 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 31 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 06:02:06,595 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 6 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 14 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 103 SdHoareTripleChecker+Invalid, 21 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 14 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:02:06,595 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 103 Invalid, 21 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 14 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:02:06,596 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-04-08 06:02:06,627 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 60. [2022-04-08 06:02:06,627 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:02:06,628 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand has 60 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 42 states have internal predecessors, (52), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:02:06,628 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand has 60 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 42 states have internal predecessors, (52), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:02:06,629 INFO L87 Difference]: Start difference. First operand 60 states. Second operand has 60 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 42 states have internal predecessors, (52), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:02:06,631 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:06,631 INFO L93 Difference]: Finished difference Result 60 states and 74 transitions. [2022-04-08 06:02:06,631 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 74 transitions. [2022-04-08 06:02:06,631 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:06,631 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:06,631 INFO L74 IsIncluded]: Start isIncluded. First operand has 60 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 42 states have internal predecessors, (52), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 60 states. [2022-04-08 06:02:06,632 INFO L87 Difference]: Start difference. First operand has 60 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 42 states have internal predecessors, (52), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 60 states. [2022-04-08 06:02:06,634 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:06,634 INFO L93 Difference]: Finished difference Result 60 states and 74 transitions. [2022-04-08 06:02:06,634 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 74 transitions. [2022-04-08 06:02:06,634 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:06,635 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:06,635 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:02:06,635 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:02:06,635 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 60 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 42 states have internal predecessors, (52), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 06:02:06,637 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 74 transitions. [2022-04-08 06:02:06,637 INFO L78 Accepts]: Start accepts. Automaton has 60 states and 74 transitions. Word has length 35 [2022-04-08 06:02:06,637 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:02:06,637 INFO L478 AbstractCegarLoop]: Abstraction has 60 states and 74 transitions. [2022-04-08 06:02:06,637 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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:02:06,637 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 60 states and 74 transitions. [2022-04-08 06:02:08,444 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:02:08,444 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 74 transitions. [2022-04-08 06:02:08,444 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-08 06:02:08,444 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:02:08,445 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:02:08,453 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:02:08,645 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:02:08,645 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:02:08,646 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:02:08,646 INFO L85 PathProgramCache]: Analyzing trace with hash -174895632, now seen corresponding path program 1 times [2022-04-08 06:02:08,646 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:08,646 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [426590733] [2022-04-08 06:02:08,646 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:02:08,647 INFO L85 PathProgramCache]: Analyzing trace with hash -174895632, now seen corresponding path program 2 times [2022-04-08 06:02:08,647 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:02:08,647 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [532317215] [2022-04-08 06:02:08,647 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:02:08,647 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:02:08,660 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:02:08,660 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1462009448] [2022-04-08 06:02:08,661 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:02:08,661 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:02:08,661 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:02:08,662 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:02:08,663 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:02:08,708 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:02:08,708 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:02:08,709 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 06:02:08,718 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:02:08,719 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:02:08,924 INFO L272 TraceCheckUtils]: 0: Hoare triple {2096#true} call ULTIMATE.init(); {2096#true} is VALID [2022-04-08 06:02:08,925 INFO L290 TraceCheckUtils]: 1: Hoare triple {2096#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,926 INFO L290 TraceCheckUtils]: 2: Hoare triple {2104#(<= ~counter~0 0)} assume true; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,926 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2104#(<= ~counter~0 0)} {2096#true} #102#return; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,926 INFO L272 TraceCheckUtils]: 4: Hoare triple {2104#(<= ~counter~0 0)} call #t~ret9 := main(); {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,927 INFO L290 TraceCheckUtils]: 5: Hoare triple {2104#(<= ~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; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,928 INFO L272 TraceCheckUtils]: 6: Hoare triple {2104#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,928 INFO L290 TraceCheckUtils]: 7: Hoare triple {2104#(<= ~counter~0 0)} ~cond := #in~cond; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,928 INFO L290 TraceCheckUtils]: 8: Hoare triple {2104#(<= ~counter~0 0)} assume !(0 == ~cond); {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,929 INFO L290 TraceCheckUtils]: 9: Hoare triple {2104#(<= ~counter~0 0)} assume true; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,929 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2104#(<= ~counter~0 0)} {2104#(<= ~counter~0 0)} #90#return; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,930 INFO L272 TraceCheckUtils]: 11: Hoare triple {2104#(<= ~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)); {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,931 INFO L290 TraceCheckUtils]: 12: Hoare triple {2104#(<= ~counter~0 0)} ~cond := #in~cond; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,931 INFO L290 TraceCheckUtils]: 13: Hoare triple {2104#(<= ~counter~0 0)} assume !(0 == ~cond); {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,931 INFO L290 TraceCheckUtils]: 14: Hoare triple {2104#(<= ~counter~0 0)} assume true; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,932 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2104#(<= ~counter~0 0)} {2104#(<= ~counter~0 0)} #92#return; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,932 INFO L290 TraceCheckUtils]: 16: Hoare triple {2104#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:08,933 INFO L290 TraceCheckUtils]: 17: Hoare triple {2104#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2153#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:08,933 INFO L290 TraceCheckUtils]: 18: Hoare triple {2153#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {2153#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:08,934 INFO L272 TraceCheckUtils]: 19: Hoare triple {2153#(<= ~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)); {2153#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:08,935 INFO L290 TraceCheckUtils]: 20: Hoare triple {2153#(<= ~counter~0 1)} ~cond := #in~cond; {2153#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:08,936 INFO L290 TraceCheckUtils]: 21: Hoare triple {2153#(<= ~counter~0 1)} assume !(0 == ~cond); {2153#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:08,936 INFO L290 TraceCheckUtils]: 22: Hoare triple {2153#(<= ~counter~0 1)} assume true; {2153#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:08,937 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2153#(<= ~counter~0 1)} {2153#(<= ~counter~0 1)} #94#return; {2153#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:08,940 INFO L290 TraceCheckUtils]: 24: Hoare triple {2153#(<= ~counter~0 1)} assume !!(0 != ~r~0); {2153#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:08,941 INFO L290 TraceCheckUtils]: 25: Hoare triple {2153#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2178#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:08,941 INFO L290 TraceCheckUtils]: 26: Hoare triple {2178#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {2178#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:08,942 INFO L272 TraceCheckUtils]: 27: Hoare triple {2178#(<= ~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)); {2178#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:08,942 INFO L290 TraceCheckUtils]: 28: Hoare triple {2178#(<= ~counter~0 2)} ~cond := #in~cond; {2178#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:08,942 INFO L290 TraceCheckUtils]: 29: Hoare triple {2178#(<= ~counter~0 2)} assume !(0 == ~cond); {2178#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:08,943 INFO L290 TraceCheckUtils]: 30: Hoare triple {2178#(<= ~counter~0 2)} assume true; {2178#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:08,943 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2178#(<= ~counter~0 2)} {2178#(<= ~counter~0 2)} #96#return; {2178#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:08,943 INFO L290 TraceCheckUtils]: 32: Hoare triple {2178#(<= ~counter~0 2)} assume !(~r~0 > 0); {2178#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:08,944 INFO L290 TraceCheckUtils]: 33: Hoare triple {2178#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {2203#(<= |main_#t~post8| 2)} is VALID [2022-04-08 06:02:08,944 INFO L290 TraceCheckUtils]: 34: Hoare triple {2203#(<= |main_#t~post8| 2)} assume !(#t~post8 < 20);havoc #t~post8; {2097#false} is VALID [2022-04-08 06:02:08,944 INFO L290 TraceCheckUtils]: 35: Hoare triple {2097#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2097#false} is VALID [2022-04-08 06:02:08,945 INFO L290 TraceCheckUtils]: 36: Hoare triple {2097#false} assume !(#t~post6 < 20);havoc #t~post6; {2097#false} is VALID [2022-04-08 06:02:08,945 INFO L272 TraceCheckUtils]: 37: Hoare triple {2097#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)); {2097#false} is VALID [2022-04-08 06:02:08,945 INFO L290 TraceCheckUtils]: 38: Hoare triple {2097#false} ~cond := #in~cond; {2097#false} is VALID [2022-04-08 06:02:08,945 INFO L290 TraceCheckUtils]: 39: Hoare triple {2097#false} assume 0 == ~cond; {2097#false} is VALID [2022-04-08 06:02:08,945 INFO L290 TraceCheckUtils]: 40: Hoare triple {2097#false} assume !false; {2097#false} is VALID [2022-04-08 06:02:08,945 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 6 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:02:08,945 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:02:09,154 INFO L290 TraceCheckUtils]: 40: Hoare triple {2097#false} assume !false; {2097#false} is VALID [2022-04-08 06:02:09,155 INFO L290 TraceCheckUtils]: 39: Hoare triple {2097#false} assume 0 == ~cond; {2097#false} is VALID [2022-04-08 06:02:09,155 INFO L290 TraceCheckUtils]: 38: Hoare triple {2097#false} ~cond := #in~cond; {2097#false} is VALID [2022-04-08 06:02:09,155 INFO L272 TraceCheckUtils]: 37: Hoare triple {2097#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)); {2097#false} is VALID [2022-04-08 06:02:09,155 INFO L290 TraceCheckUtils]: 36: Hoare triple {2097#false} assume !(#t~post6 < 20);havoc #t~post6; {2097#false} is VALID [2022-04-08 06:02:09,155 INFO L290 TraceCheckUtils]: 35: Hoare triple {2097#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2097#false} is VALID [2022-04-08 06:02:09,155 INFO L290 TraceCheckUtils]: 34: Hoare triple {2243#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {2097#false} is VALID [2022-04-08 06:02:09,156 INFO L290 TraceCheckUtils]: 33: Hoare triple {2247#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {2243#(< |main_#t~post8| 20)} is VALID [2022-04-08 06:02:09,156 INFO L290 TraceCheckUtils]: 32: Hoare triple {2247#(< ~counter~0 20)} assume !(~r~0 > 0); {2247#(< ~counter~0 20)} is VALID [2022-04-08 06:02:09,157 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2096#true} {2247#(< ~counter~0 20)} #96#return; {2247#(< ~counter~0 20)} is VALID [2022-04-08 06:02:09,157 INFO L290 TraceCheckUtils]: 30: Hoare triple {2096#true} assume true; {2096#true} is VALID [2022-04-08 06:02:09,157 INFO L290 TraceCheckUtils]: 29: Hoare triple {2096#true} assume !(0 == ~cond); {2096#true} is VALID [2022-04-08 06:02:09,157 INFO L290 TraceCheckUtils]: 28: Hoare triple {2096#true} ~cond := #in~cond; {2096#true} is VALID [2022-04-08 06:02:09,157 INFO L272 TraceCheckUtils]: 27: Hoare triple {2247#(< ~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)); {2096#true} is VALID [2022-04-08 06:02:09,157 INFO L290 TraceCheckUtils]: 26: Hoare triple {2247#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {2247#(< ~counter~0 20)} is VALID [2022-04-08 06:02:09,158 INFO L290 TraceCheckUtils]: 25: Hoare triple {2272#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2247#(< ~counter~0 20)} is VALID [2022-04-08 06:02:09,158 INFO L290 TraceCheckUtils]: 24: Hoare triple {2272#(< ~counter~0 19)} assume !!(0 != ~r~0); {2272#(< ~counter~0 19)} is VALID [2022-04-08 06:02:09,159 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2096#true} {2272#(< ~counter~0 19)} #94#return; {2272#(< ~counter~0 19)} is VALID [2022-04-08 06:02:09,159 INFO L290 TraceCheckUtils]: 22: Hoare triple {2096#true} assume true; {2096#true} is VALID [2022-04-08 06:02:09,159 INFO L290 TraceCheckUtils]: 21: Hoare triple {2096#true} assume !(0 == ~cond); {2096#true} is VALID [2022-04-08 06:02:09,159 INFO L290 TraceCheckUtils]: 20: Hoare triple {2096#true} ~cond := #in~cond; {2096#true} is VALID [2022-04-08 06:02:09,159 INFO L272 TraceCheckUtils]: 19: Hoare triple {2272#(< ~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)); {2096#true} is VALID [2022-04-08 06:02:09,160 INFO L290 TraceCheckUtils]: 18: Hoare triple {2272#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {2272#(< ~counter~0 19)} is VALID [2022-04-08 06:02:09,160 INFO L290 TraceCheckUtils]: 17: Hoare triple {2297#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2272#(< ~counter~0 19)} is VALID [2022-04-08 06:02:09,161 INFO L290 TraceCheckUtils]: 16: Hoare triple {2297#(< ~counter~0 18)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {2297#(< ~counter~0 18)} is VALID [2022-04-08 06:02:09,161 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2096#true} {2297#(< ~counter~0 18)} #92#return; {2297#(< ~counter~0 18)} is VALID [2022-04-08 06:02:09,161 INFO L290 TraceCheckUtils]: 14: Hoare triple {2096#true} assume true; {2096#true} is VALID [2022-04-08 06:02:09,161 INFO L290 TraceCheckUtils]: 13: Hoare triple {2096#true} assume !(0 == ~cond); {2096#true} is VALID [2022-04-08 06:02:09,161 INFO L290 TraceCheckUtils]: 12: Hoare triple {2096#true} ~cond := #in~cond; {2096#true} is VALID [2022-04-08 06:02:09,162 INFO L272 TraceCheckUtils]: 11: Hoare triple {2297#(< ~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)); {2096#true} is VALID [2022-04-08 06:02:09,162 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2096#true} {2297#(< ~counter~0 18)} #90#return; {2297#(< ~counter~0 18)} is VALID [2022-04-08 06:02:09,162 INFO L290 TraceCheckUtils]: 9: Hoare triple {2096#true} assume true; {2096#true} is VALID [2022-04-08 06:02:09,162 INFO L290 TraceCheckUtils]: 8: Hoare triple {2096#true} assume !(0 == ~cond); {2096#true} is VALID [2022-04-08 06:02:09,162 INFO L290 TraceCheckUtils]: 7: Hoare triple {2096#true} ~cond := #in~cond; {2096#true} is VALID [2022-04-08 06:02:09,162 INFO L272 TraceCheckUtils]: 6: Hoare triple {2297#(< ~counter~0 18)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2096#true} is VALID [2022-04-08 06:02:09,163 INFO L290 TraceCheckUtils]: 5: Hoare triple {2297#(< ~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; {2297#(< ~counter~0 18)} is VALID [2022-04-08 06:02:09,163 INFO L272 TraceCheckUtils]: 4: Hoare triple {2297#(< ~counter~0 18)} call #t~ret9 := main(); {2297#(< ~counter~0 18)} is VALID [2022-04-08 06:02:09,164 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2297#(< ~counter~0 18)} {2096#true} #102#return; {2297#(< ~counter~0 18)} is VALID [2022-04-08 06:02:09,164 INFO L290 TraceCheckUtils]: 2: Hoare triple {2297#(< ~counter~0 18)} assume true; {2297#(< ~counter~0 18)} is VALID [2022-04-08 06:02:09,164 INFO L290 TraceCheckUtils]: 1: Hoare triple {2096#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {2297#(< ~counter~0 18)} is VALID [2022-04-08 06:02:09,165 INFO L272 TraceCheckUtils]: 0: Hoare triple {2096#true} call ULTIMATE.init(); {2096#true} is VALID [2022-04-08 06:02:09,165 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-08 06:02:09,165 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:02:09,165 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [532317215] [2022-04-08 06:02:09,165 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:02:09,165 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1462009448] [2022-04-08 06:02:09,165 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1462009448] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 06:02:09,165 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 06:02:09,166 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [6] total 10 [2022-04-08 06:02:09,166 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:02:09,166 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [426590733] [2022-04-08 06:02:09,166 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [426590733] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:02:09,166 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:02:09,166 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 06:02:09,166 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [39367554] [2022-04-08 06:02:09,166 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:02:09,167 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 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:02:09,167 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:02:09,167 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 06:02:09,193 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:02:09,193 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 06:02:09,193 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:09,194 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 06:02:09,194 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 06:02:09,194 INFO L87 Difference]: Start difference. First operand 60 states and 74 transitions. Second operand has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 06:02:09,351 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:09,351 INFO L93 Difference]: Finished difference Result 106 states and 135 transitions. [2022-04-08 06:02:09,351 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 06:02:09,352 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 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:02:09,352 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:02:09,352 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 06:02:09,354 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 87 transitions. [2022-04-08 06:02:09,354 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 06:02:09,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 87 transitions. [2022-04-08 06:02:09,355 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 87 transitions. [2022-04-08 06:02:09,409 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:09,411 INFO L225 Difference]: With dead ends: 106 [2022-04-08 06:02:09,411 INFO L226 Difference]: Without dead ends: 69 [2022-04-08 06:02:09,412 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 81 GetRequests, 73 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 06:02:09,412 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 31 mSDsluCounter, 71 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 109 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:02:09,412 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 109 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:02:09,413 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2022-04-08 06:02:09,459 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 68. [2022-04-08 06:02:09,459 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:02:09,459 INFO L82 GeneralOperation]: Start isEquivalent. First operand 69 states. Second operand has 68 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 48 states have internal predecessors, (59), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 06:02:09,460 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand has 68 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 48 states have internal predecessors, (59), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 06:02:09,460 INFO L87 Difference]: Start difference. First operand 69 states. Second operand has 68 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 48 states have internal predecessors, (59), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 06:02:09,462 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:09,462 INFO L93 Difference]: Finished difference Result 69 states and 84 transitions. [2022-04-08 06:02:09,462 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 84 transitions. [2022-04-08 06:02:09,463 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:09,463 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:09,463 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 48 states have internal predecessors, (59), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 69 states. [2022-04-08 06:02:09,463 INFO L87 Difference]: Start difference. First operand has 68 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 48 states have internal predecessors, (59), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 69 states. [2022-04-08 06:02:09,466 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:09,466 INFO L93 Difference]: Finished difference Result 69 states and 84 transitions. [2022-04-08 06:02:09,466 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 84 transitions. [2022-04-08 06:02:09,466 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:09,466 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:09,466 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:02:09,466 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:02:09,467 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 48 states have internal predecessors, (59), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 06:02:09,468 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 83 transitions. [2022-04-08 06:02:09,469 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 83 transitions. Word has length 41 [2022-04-08 06:02:09,469 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:02:09,469 INFO L478 AbstractCegarLoop]: Abstraction has 68 states and 83 transitions. [2022-04-08 06:02:09,469 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 06:02:09,469 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 83 transitions. [2022-04-08 06:02:12,668 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 82 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:12,669 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 83 transitions. [2022-04-08 06:02:12,669 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-08 06:02:12,669 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:02:12,669 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:02:12,686 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-08 06:02:12,870 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:02:12,870 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:02:12,870 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:02:12,870 INFO L85 PathProgramCache]: Analyzing trace with hash -1292932747, now seen corresponding path program 1 times [2022-04-08 06:02:12,870 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:12,870 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [143483564] [2022-04-08 06:02:12,871 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:02:12,871 INFO L85 PathProgramCache]: Analyzing trace with hash -1292932747, now seen corresponding path program 2 times [2022-04-08 06:02:12,871 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:02:12,871 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [163985342] [2022-04-08 06:02:12,871 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:02:12,871 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:02:12,892 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:02:12,892 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1856039187] [2022-04-08 06:02:12,892 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:02:12,892 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:02:12,892 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:02:12,893 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:02:12,894 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:02:12,951 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:02:12,952 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:02:12,952 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 06:02:12,972 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:02:12,975 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:02:13,175 INFO L272 TraceCheckUtils]: 0: Hoare triple {2837#true} call ULTIMATE.init(); {2837#true} is VALID [2022-04-08 06:02:13,177 INFO L290 TraceCheckUtils]: 1: Hoare triple {2837#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,178 INFO L290 TraceCheckUtils]: 2: Hoare triple {2845#(<= ~counter~0 0)} assume true; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,180 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2845#(<= ~counter~0 0)} {2837#true} #102#return; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,185 INFO L272 TraceCheckUtils]: 4: Hoare triple {2845#(<= ~counter~0 0)} call #t~ret9 := main(); {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,187 INFO L290 TraceCheckUtils]: 5: Hoare triple {2845#(<= ~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; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,188 INFO L272 TraceCheckUtils]: 6: Hoare triple {2845#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,188 INFO L290 TraceCheckUtils]: 7: Hoare triple {2845#(<= ~counter~0 0)} ~cond := #in~cond; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,188 INFO L290 TraceCheckUtils]: 8: Hoare triple {2845#(<= ~counter~0 0)} assume !(0 == ~cond); {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,189 INFO L290 TraceCheckUtils]: 9: Hoare triple {2845#(<= ~counter~0 0)} assume true; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,190 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2845#(<= ~counter~0 0)} {2845#(<= ~counter~0 0)} #90#return; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,191 INFO L272 TraceCheckUtils]: 11: Hoare triple {2845#(<= ~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)); {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,194 INFO L290 TraceCheckUtils]: 12: Hoare triple {2845#(<= ~counter~0 0)} ~cond := #in~cond; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,195 INFO L290 TraceCheckUtils]: 13: Hoare triple {2845#(<= ~counter~0 0)} assume !(0 == ~cond); {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,195 INFO L290 TraceCheckUtils]: 14: Hoare triple {2845#(<= ~counter~0 0)} assume true; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,196 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2845#(<= ~counter~0 0)} {2845#(<= ~counter~0 0)} #92#return; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,196 INFO L290 TraceCheckUtils]: 16: Hoare triple {2845#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:13,197 INFO L290 TraceCheckUtils]: 17: Hoare triple {2845#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2894#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:13,197 INFO L290 TraceCheckUtils]: 18: Hoare triple {2894#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {2894#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:13,198 INFO L272 TraceCheckUtils]: 19: Hoare triple {2894#(<= ~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)); {2894#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:13,198 INFO L290 TraceCheckUtils]: 20: Hoare triple {2894#(<= ~counter~0 1)} ~cond := #in~cond; {2894#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:13,198 INFO L290 TraceCheckUtils]: 21: Hoare triple {2894#(<= ~counter~0 1)} assume !(0 == ~cond); {2894#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:13,199 INFO L290 TraceCheckUtils]: 22: Hoare triple {2894#(<= ~counter~0 1)} assume true; {2894#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:13,199 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2894#(<= ~counter~0 1)} {2894#(<= ~counter~0 1)} #94#return; {2894#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:13,200 INFO L290 TraceCheckUtils]: 24: Hoare triple {2894#(<= ~counter~0 1)} assume !!(0 != ~r~0); {2894#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:13,200 INFO L290 TraceCheckUtils]: 25: Hoare triple {2894#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2919#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:13,200 INFO L290 TraceCheckUtils]: 26: Hoare triple {2919#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {2919#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:13,201 INFO L272 TraceCheckUtils]: 27: Hoare triple {2919#(<= ~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)); {2919#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:13,201 INFO L290 TraceCheckUtils]: 28: Hoare triple {2919#(<= ~counter~0 2)} ~cond := #in~cond; {2919#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:13,202 INFO L290 TraceCheckUtils]: 29: Hoare triple {2919#(<= ~counter~0 2)} assume !(0 == ~cond); {2919#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:13,202 INFO L290 TraceCheckUtils]: 30: Hoare triple {2919#(<= ~counter~0 2)} assume true; {2919#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:13,202 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2919#(<= ~counter~0 2)} {2919#(<= ~counter~0 2)} #96#return; {2919#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:13,203 INFO L290 TraceCheckUtils]: 32: Hoare triple {2919#(<= ~counter~0 2)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2919#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:13,203 INFO L290 TraceCheckUtils]: 33: Hoare triple {2919#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2944#(<= |main_#t~post7| 2)} is VALID [2022-04-08 06:02:13,204 INFO L290 TraceCheckUtils]: 34: Hoare triple {2944#(<= |main_#t~post7| 2)} assume !(#t~post7 < 20);havoc #t~post7; {2838#false} is VALID [2022-04-08 06:02:13,204 INFO L290 TraceCheckUtils]: 35: Hoare triple {2838#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {2838#false} is VALID [2022-04-08 06:02:13,204 INFO L290 TraceCheckUtils]: 36: Hoare triple {2838#false} assume !(#t~post8 < 20);havoc #t~post8; {2838#false} is VALID [2022-04-08 06:02:13,204 INFO L290 TraceCheckUtils]: 37: Hoare triple {2838#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2838#false} is VALID [2022-04-08 06:02:13,204 INFO L290 TraceCheckUtils]: 38: Hoare triple {2838#false} assume !(#t~post6 < 20);havoc #t~post6; {2838#false} is VALID [2022-04-08 06:02:13,205 INFO L272 TraceCheckUtils]: 39: Hoare triple {2838#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)); {2838#false} is VALID [2022-04-08 06:02:13,205 INFO L290 TraceCheckUtils]: 40: Hoare triple {2838#false} ~cond := #in~cond; {2838#false} is VALID [2022-04-08 06:02:13,205 INFO L290 TraceCheckUtils]: 41: Hoare triple {2838#false} assume 0 == ~cond; {2838#false} is VALID [2022-04-08 06:02:13,205 INFO L290 TraceCheckUtils]: 42: Hoare triple {2838#false} assume !false; {2838#false} is VALID [2022-04-08 06:02:13,206 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:02:13,207 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:02:13,433 INFO L290 TraceCheckUtils]: 42: Hoare triple {2838#false} assume !false; {2838#false} is VALID [2022-04-08 06:02:13,434 INFO L290 TraceCheckUtils]: 41: Hoare triple {2838#false} assume 0 == ~cond; {2838#false} is VALID [2022-04-08 06:02:13,434 INFO L290 TraceCheckUtils]: 40: Hoare triple {2838#false} ~cond := #in~cond; {2838#false} is VALID [2022-04-08 06:02:13,434 INFO L272 TraceCheckUtils]: 39: Hoare triple {2838#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)); {2838#false} is VALID [2022-04-08 06:02:13,434 INFO L290 TraceCheckUtils]: 38: Hoare triple {2838#false} assume !(#t~post6 < 20);havoc #t~post6; {2838#false} is VALID [2022-04-08 06:02:13,434 INFO L290 TraceCheckUtils]: 37: Hoare triple {2838#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2838#false} is VALID [2022-04-08 06:02:13,434 INFO L290 TraceCheckUtils]: 36: Hoare triple {2838#false} assume !(#t~post8 < 20);havoc #t~post8; {2838#false} is VALID [2022-04-08 06:02:13,434 INFO L290 TraceCheckUtils]: 35: Hoare triple {2838#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {2838#false} is VALID [2022-04-08 06:02:13,435 INFO L290 TraceCheckUtils]: 34: Hoare triple {2996#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {2838#false} is VALID [2022-04-08 06:02:13,435 INFO L290 TraceCheckUtils]: 33: Hoare triple {3000#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2996#(< |main_#t~post7| 20)} is VALID [2022-04-08 06:02:13,435 INFO L290 TraceCheckUtils]: 32: Hoare triple {3000#(< ~counter~0 20)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3000#(< ~counter~0 20)} is VALID [2022-04-08 06:02:13,436 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2837#true} {3000#(< ~counter~0 20)} #96#return; {3000#(< ~counter~0 20)} is VALID [2022-04-08 06:02:13,436 INFO L290 TraceCheckUtils]: 30: Hoare triple {2837#true} assume true; {2837#true} is VALID [2022-04-08 06:02:13,436 INFO L290 TraceCheckUtils]: 29: Hoare triple {2837#true} assume !(0 == ~cond); {2837#true} is VALID [2022-04-08 06:02:13,436 INFO L290 TraceCheckUtils]: 28: Hoare triple {2837#true} ~cond := #in~cond; {2837#true} is VALID [2022-04-08 06:02:13,436 INFO L272 TraceCheckUtils]: 27: Hoare triple {3000#(< ~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)); {2837#true} is VALID [2022-04-08 06:02:13,436 INFO L290 TraceCheckUtils]: 26: Hoare triple {3000#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {3000#(< ~counter~0 20)} is VALID [2022-04-08 06:02:13,437 INFO L290 TraceCheckUtils]: 25: Hoare triple {3025#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3000#(< ~counter~0 20)} is VALID [2022-04-08 06:02:13,438 INFO L290 TraceCheckUtils]: 24: Hoare triple {3025#(< ~counter~0 19)} assume !!(0 != ~r~0); {3025#(< ~counter~0 19)} is VALID [2022-04-08 06:02:13,438 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2837#true} {3025#(< ~counter~0 19)} #94#return; {3025#(< ~counter~0 19)} is VALID [2022-04-08 06:02:13,438 INFO L290 TraceCheckUtils]: 22: Hoare triple {2837#true} assume true; {2837#true} is VALID [2022-04-08 06:02:13,438 INFO L290 TraceCheckUtils]: 21: Hoare triple {2837#true} assume !(0 == ~cond); {2837#true} is VALID [2022-04-08 06:02:13,438 INFO L290 TraceCheckUtils]: 20: Hoare triple {2837#true} ~cond := #in~cond; {2837#true} is VALID [2022-04-08 06:02:13,439 INFO L272 TraceCheckUtils]: 19: Hoare triple {3025#(< ~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)); {2837#true} is VALID [2022-04-08 06:02:13,440 INFO L290 TraceCheckUtils]: 18: Hoare triple {3025#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {3025#(< ~counter~0 19)} is VALID [2022-04-08 06:02:13,440 INFO L290 TraceCheckUtils]: 17: Hoare triple {3050#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3025#(< ~counter~0 19)} is VALID [2022-04-08 06:02:13,440 INFO L290 TraceCheckUtils]: 16: Hoare triple {3050#(< ~counter~0 18)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {3050#(< ~counter~0 18)} is VALID [2022-04-08 06:02:13,441 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2837#true} {3050#(< ~counter~0 18)} #92#return; {3050#(< ~counter~0 18)} is VALID [2022-04-08 06:02:13,441 INFO L290 TraceCheckUtils]: 14: Hoare triple {2837#true} assume true; {2837#true} is VALID [2022-04-08 06:02:13,441 INFO L290 TraceCheckUtils]: 13: Hoare triple {2837#true} assume !(0 == ~cond); {2837#true} is VALID [2022-04-08 06:02:13,441 INFO L290 TraceCheckUtils]: 12: Hoare triple {2837#true} ~cond := #in~cond; {2837#true} is VALID [2022-04-08 06:02:13,441 INFO L272 TraceCheckUtils]: 11: Hoare triple {3050#(< ~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)); {2837#true} is VALID [2022-04-08 06:02:13,442 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2837#true} {3050#(< ~counter~0 18)} #90#return; {3050#(< ~counter~0 18)} is VALID [2022-04-08 06:02:13,442 INFO L290 TraceCheckUtils]: 9: Hoare triple {2837#true} assume true; {2837#true} is VALID [2022-04-08 06:02:13,442 INFO L290 TraceCheckUtils]: 8: Hoare triple {2837#true} assume !(0 == ~cond); {2837#true} is VALID [2022-04-08 06:02:13,442 INFO L290 TraceCheckUtils]: 7: Hoare triple {2837#true} ~cond := #in~cond; {2837#true} is VALID [2022-04-08 06:02:13,442 INFO L272 TraceCheckUtils]: 6: Hoare triple {3050#(< ~counter~0 18)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2837#true} is VALID [2022-04-08 06:02:13,442 INFO L290 TraceCheckUtils]: 5: Hoare triple {3050#(< ~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; {3050#(< ~counter~0 18)} is VALID [2022-04-08 06:02:13,443 INFO L272 TraceCheckUtils]: 4: Hoare triple {3050#(< ~counter~0 18)} call #t~ret9 := main(); {3050#(< ~counter~0 18)} is VALID [2022-04-08 06:02:13,443 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3050#(< ~counter~0 18)} {2837#true} #102#return; {3050#(< ~counter~0 18)} is VALID [2022-04-08 06:02:13,444 INFO L290 TraceCheckUtils]: 2: Hoare triple {3050#(< ~counter~0 18)} assume true; {3050#(< ~counter~0 18)} is VALID [2022-04-08 06:02:13,444 INFO L290 TraceCheckUtils]: 1: Hoare triple {2837#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {3050#(< ~counter~0 18)} is VALID [2022-04-08 06:02:13,444 INFO L272 TraceCheckUtils]: 0: Hoare triple {2837#true} call ULTIMATE.init(); {2837#true} is VALID [2022-04-08 06:02:13,444 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-08 06:02:13,445 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:02:13,445 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [163985342] [2022-04-08 06:02:13,445 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:02:13,445 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1856039187] [2022-04-08 06:02:13,445 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1856039187] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:02:13,445 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:02:13,445 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-08 06:02:13,445 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:02:13,445 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [143483564] [2022-04-08 06:02:13,445 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [143483564] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:02:13,445 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:02:13,445 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 06:02:13,445 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [775097580] [2022-04-08 06:02:13,446 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:02:13,446 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 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 43 [2022-04-08 06:02:13,446 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:02:13,446 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 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:02:13,472 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:13,472 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 06:02:13,472 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:13,473 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 06:02:13,473 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 06:02:13,473 INFO L87 Difference]: Start difference. First operand 68 states and 83 transitions. Second operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 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:02:13,691 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:13,692 INFO L93 Difference]: Finished difference Result 91 states and 113 transitions. [2022-04-08 06:02:13,692 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 06:02:13,692 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 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 43 [2022-04-08 06:02:13,692 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:02:13,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 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:02:13,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 87 transitions. [2022-04-08 06:02:13,695 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 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:02:13,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 87 transitions. [2022-04-08 06:02:13,696 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 87 transitions. [2022-04-08 06:02:13,767 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:13,769 INFO L225 Difference]: With dead ends: 91 [2022-04-08 06:02:13,769 INFO L226 Difference]: Without dead ends: 70 [2022-04-08 06:02:13,770 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 86 GetRequests, 77 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=41, Invalid=69, Unknown=0, NotChecked=0, Total=110 [2022-04-08 06:02:13,770 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 9 mSDsluCounter, 103 mSDsCounter, 0 mSdLazyCounter, 27 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 37 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 27 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:02:13,771 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 141 Invalid, 37 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 27 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:02:13,771 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-08 06:02:13,826 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-04-08 06:02:13,827 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:02:13,828 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 50 states have internal predecessors, (61), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 06:02:13,828 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 50 states have internal predecessors, (61), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 06:02:13,829 INFO L87 Difference]: Start difference. First operand 70 states. Second operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 50 states have internal predecessors, (61), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 06:02:13,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:13,830 INFO L93 Difference]: Finished difference Result 70 states and 85 transitions. [2022-04-08 06:02:13,831 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 85 transitions. [2022-04-08 06:02:13,831 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:13,831 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:13,832 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 50 states have internal predecessors, (61), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 70 states. [2022-04-08 06:02:13,832 INFO L87 Difference]: Start difference. First operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 50 states have internal predecessors, (61), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 70 states. [2022-04-08 06:02:13,835 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:13,835 INFO L93 Difference]: Finished difference Result 70 states and 85 transitions. [2022-04-08 06:02:13,835 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 85 transitions. [2022-04-08 06:02:13,836 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:13,836 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:13,836 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:02:13,836 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:02:13,836 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 50 states have internal predecessors, (61), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 06:02:13,838 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 85 transitions. [2022-04-08 06:02:13,838 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 85 transitions. Word has length 43 [2022-04-08 06:02:13,838 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:02:13,838 INFO L478 AbstractCegarLoop]: Abstraction has 70 states and 85 transitions. [2022-04-08 06:02:13,839 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 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:02:13,839 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 70 states and 85 transitions. [2022-04-08 06:02:17,009 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 84 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:17,009 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 85 transitions. [2022-04-08 06:02:17,010 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-08 06:02:17,010 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:02:17,010 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:02:17,026 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:02:17,215 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:02:17,216 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:02:17,216 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:02:17,216 INFO L85 PathProgramCache]: Analyzing trace with hash 1407897436, now seen corresponding path program 1 times [2022-04-08 06:02:17,216 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:17,216 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [599110218] [2022-04-08 06:02:17,217 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:02:17,217 INFO L85 PathProgramCache]: Analyzing trace with hash 1407897436, now seen corresponding path program 2 times [2022-04-08 06:02:17,217 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:02:17,217 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1285618647] [2022-04-08 06:02:17,217 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:02:17,218 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:02:17,233 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:02:17,234 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1509956931] [2022-04-08 06:02:17,234 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:02:17,234 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:02:17,234 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:02:17,235 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:02:17,236 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:02:17,271 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:02:17,271 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:02:17,272 INFO L263 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 3 conjunts are in the unsatisfiable core [2022-04-08 06:02:17,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:02:17,281 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:02:17,438 INFO L272 TraceCheckUtils]: 0: Hoare triple {3568#true} call ULTIMATE.init(); {3568#true} is VALID [2022-04-08 06:02:17,439 INFO L290 TraceCheckUtils]: 1: Hoare triple {3568#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {3568#true} is VALID [2022-04-08 06:02:17,439 INFO L290 TraceCheckUtils]: 2: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-08 06:02:17,439 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3568#true} {3568#true} #102#return; {3568#true} is VALID [2022-04-08 06:02:17,439 INFO L272 TraceCheckUtils]: 4: Hoare triple {3568#true} call #t~ret9 := main(); {3568#true} is VALID [2022-04-08 06:02:17,439 INFO L290 TraceCheckUtils]: 5: Hoare triple {3568#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; {3568#true} is VALID [2022-04-08 06:02:17,439 INFO L272 TraceCheckUtils]: 6: Hoare triple {3568#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {3568#true} is VALID [2022-04-08 06:02:17,439 INFO L290 TraceCheckUtils]: 7: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-08 06:02:17,439 INFO L290 TraceCheckUtils]: 8: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-08 06:02:17,439 INFO L290 TraceCheckUtils]: 9: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-08 06:02:17,440 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3568#true} {3568#true} #90#return; {3568#true} is VALID [2022-04-08 06:02:17,440 INFO L272 TraceCheckUtils]: 11: Hoare triple {3568#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)); {3568#true} is VALID [2022-04-08 06:02:17,440 INFO L290 TraceCheckUtils]: 12: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-08 06:02:17,440 INFO L290 TraceCheckUtils]: 13: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-08 06:02:17,440 INFO L290 TraceCheckUtils]: 14: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-08 06:02:17,440 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3568#true} {3568#true} #92#return; {3568#true} is VALID [2022-04-08 06:02:17,440 INFO L290 TraceCheckUtils]: 16: Hoare triple {3568#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {3568#true} is VALID [2022-04-08 06:02:17,440 INFO L290 TraceCheckUtils]: 17: Hoare triple {3568#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3568#true} is VALID [2022-04-08 06:02:17,440 INFO L290 TraceCheckUtils]: 18: Hoare triple {3568#true} assume !!(#t~post6 < 20);havoc #t~post6; {3568#true} is VALID [2022-04-08 06:02:17,440 INFO L272 TraceCheckUtils]: 19: Hoare triple {3568#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)); {3568#true} is VALID [2022-04-08 06:02:17,440 INFO L290 TraceCheckUtils]: 20: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-08 06:02:17,440 INFO L290 TraceCheckUtils]: 21: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-08 06:02:17,441 INFO L290 TraceCheckUtils]: 22: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-08 06:02:17,441 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3568#true} {3568#true} #94#return; {3568#true} is VALID [2022-04-08 06:02:17,441 INFO L290 TraceCheckUtils]: 24: Hoare triple {3568#true} assume !!(0 != ~r~0); {3645#(not (= main_~r~0 0))} is VALID [2022-04-08 06:02:17,441 INFO L290 TraceCheckUtils]: 25: Hoare triple {3645#(not (= main_~r~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3645#(not (= main_~r~0 0))} is VALID [2022-04-08 06:02:17,442 INFO L290 TraceCheckUtils]: 26: Hoare triple {3645#(not (= main_~r~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {3645#(not (= main_~r~0 0))} is VALID [2022-04-08 06:02:17,442 INFO L272 TraceCheckUtils]: 27: Hoare triple {3645#(not (= main_~r~0 0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3568#true} is VALID [2022-04-08 06:02:17,442 INFO L290 TraceCheckUtils]: 28: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-08 06:02:17,442 INFO L290 TraceCheckUtils]: 29: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-08 06:02:17,442 INFO L290 TraceCheckUtils]: 30: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-08 06:02:17,443 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3568#true} {3645#(not (= main_~r~0 0))} #96#return; {3645#(not (= main_~r~0 0))} is VALID [2022-04-08 06:02:17,443 INFO L290 TraceCheckUtils]: 32: Hoare triple {3645#(not (= main_~r~0 0))} assume !(~r~0 > 0); {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 06:02:17,443 INFO L290 TraceCheckUtils]: 33: Hoare triple {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 06:02:17,444 INFO L290 TraceCheckUtils]: 34: Hoare triple {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} assume !!(#t~post8 < 20);havoc #t~post8; {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 06:02:17,444 INFO L272 TraceCheckUtils]: 35: Hoare triple {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3568#true} is VALID [2022-04-08 06:02:17,444 INFO L290 TraceCheckUtils]: 36: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-08 06:02:17,444 INFO L290 TraceCheckUtils]: 37: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-08 06:02:17,444 INFO L290 TraceCheckUtils]: 38: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-08 06:02:17,445 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {3568#true} {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} #98#return; {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 06:02:17,445 INFO L290 TraceCheckUtils]: 40: Hoare triple {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} assume !(~r~0 < 0); {3569#false} is VALID [2022-04-08 06:02:17,446 INFO L290 TraceCheckUtils]: 41: Hoare triple {3569#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3569#false} is VALID [2022-04-08 06:02:17,446 INFO L290 TraceCheckUtils]: 42: Hoare triple {3569#false} assume !(#t~post6 < 20);havoc #t~post6; {3569#false} is VALID [2022-04-08 06:02:17,446 INFO L272 TraceCheckUtils]: 43: Hoare triple {3569#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)); {3569#false} is VALID [2022-04-08 06:02:17,446 INFO L290 TraceCheckUtils]: 44: Hoare triple {3569#false} ~cond := #in~cond; {3569#false} is VALID [2022-04-08 06:02:17,446 INFO L290 TraceCheckUtils]: 45: Hoare triple {3569#false} assume 0 == ~cond; {3569#false} is VALID [2022-04-08 06:02:17,446 INFO L290 TraceCheckUtils]: 46: Hoare triple {3569#false} assume !false; {3569#false} is VALID [2022-04-08 06:02:17,446 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 06:02:17,446 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 06:02:17,446 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:02:17,446 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1285618647] [2022-04-08 06:02:17,447 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:02:17,447 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1509956931] [2022-04-08 06:02:17,447 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1509956931] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:02:17,447 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:02:17,448 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 06:02:17,448 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:02:17,449 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [599110218] [2022-04-08 06:02:17,449 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [599110218] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:02:17,449 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:02:17,449 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 06:02:17,449 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [757489112] [2022-04-08 06:02:17,449 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:02:17,449 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 47 [2022-04-08 06:02:17,449 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:02:17,450 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 06:02:17,487 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:02:17,488 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 06:02:17,488 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:17,488 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 06:02:17,488 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-08 06:02:17,488 INFO L87 Difference]: Start difference. First operand 70 states and 85 transitions. Second operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 06:02:17,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:17,659 INFO L93 Difference]: Finished difference Result 153 states and 210 transitions. [2022-04-08 06:02:17,659 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 06:02:17,659 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 47 [2022-04-08 06:02:17,660 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:02:17,660 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 06:02:17,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 108 transitions. [2022-04-08 06:02:17,661 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 06:02:17,662 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 108 transitions. [2022-04-08 06:02:17,662 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 108 transitions. [2022-04-08 06:02:17,741 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:17,743 INFO L225 Difference]: With dead ends: 153 [2022-04-08 06:02:17,743 INFO L226 Difference]: Without dead ends: 116 [2022-04-08 06:02:17,744 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 44 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-08 06:02:17,744 INFO L913 BasicCegarLoop]: 60 mSDtfsCounter, 19 mSDsluCounter, 41 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 101 SdHoareTripleChecker+Invalid, 28 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:02:17,744 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 101 Invalid, 28 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 25 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:02:17,744 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 116 states. [2022-04-08 06:02:17,809 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 116 to 98. [2022-04-08 06:02:17,810 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:02:17,810 INFO L82 GeneralOperation]: Start isEquivalent. First operand 116 states. Second operand has 98 states, 71 states have (on average 1.267605633802817) internal successors, (90), 71 states have internal predecessors, (90), 20 states have call successors, (20), 8 states have call predecessors, (20), 6 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 06:02:17,810 INFO L74 IsIncluded]: Start isIncluded. First operand 116 states. Second operand has 98 states, 71 states have (on average 1.267605633802817) internal successors, (90), 71 states have internal predecessors, (90), 20 states have call successors, (20), 8 states have call predecessors, (20), 6 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 06:02:17,811 INFO L87 Difference]: Start difference. First operand 116 states. Second operand has 98 states, 71 states have (on average 1.267605633802817) internal successors, (90), 71 states have internal predecessors, (90), 20 states have call successors, (20), 8 states have call predecessors, (20), 6 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 06:02:17,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:17,815 INFO L93 Difference]: Finished difference Result 116 states and 156 transitions. [2022-04-08 06:02:17,815 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 156 transitions. [2022-04-08 06:02:17,816 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:17,816 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:17,816 INFO L74 IsIncluded]: Start isIncluded. First operand has 98 states, 71 states have (on average 1.267605633802817) internal successors, (90), 71 states have internal predecessors, (90), 20 states have call successors, (20), 8 states have call predecessors, (20), 6 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) Second operand 116 states. [2022-04-08 06:02:17,816 INFO L87 Difference]: Start difference. First operand has 98 states, 71 states have (on average 1.267605633802817) internal successors, (90), 71 states have internal predecessors, (90), 20 states have call successors, (20), 8 states have call predecessors, (20), 6 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) Second operand 116 states. [2022-04-08 06:02:17,820 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:17,820 INFO L93 Difference]: Finished difference Result 116 states and 156 transitions. [2022-04-08 06:02:17,820 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 156 transitions. [2022-04-08 06:02:17,820 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:17,820 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:17,821 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:02:17,821 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:02:17,821 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 98 states, 71 states have (on average 1.267605633802817) internal successors, (90), 71 states have internal predecessors, (90), 20 states have call successors, (20), 8 states have call predecessors, (20), 6 states have return successors, (18), 18 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-08 06:02:17,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 98 states to 98 states and 128 transitions. [2022-04-08 06:02:17,824 INFO L78 Accepts]: Start accepts. Automaton has 98 states and 128 transitions. Word has length 47 [2022-04-08 06:02:17,824 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:02:17,824 INFO L478 AbstractCegarLoop]: Abstraction has 98 states and 128 transitions. [2022-04-08 06:02:17,825 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 06:02:17,825 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 98 states and 128 transitions. [2022-04-08 06:02:21,810 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 128 edges. 127 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:21,810 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 128 transitions. [2022-04-08 06:02:21,810 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-08 06:02:21,810 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:02:21,811 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:02:21,827 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:02:22,011 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:02:22,011 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:02:22,012 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:02:22,012 INFO L85 PathProgramCache]: Analyzing trace with hash 1915058849, now seen corresponding path program 1 times [2022-04-08 06:02:22,012 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:22,012 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1413245762] [2022-04-08 06:02:22,012 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:02:22,012 INFO L85 PathProgramCache]: Analyzing trace with hash 1915058849, now seen corresponding path program 2 times [2022-04-08 06:02:22,012 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:02:22,012 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1927790964] [2022-04-08 06:02:22,012 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:02:22,013 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:02:22,025 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:02:22,026 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [277150298] [2022-04-08 06:02:22,026 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:02:22,026 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:02:22,026 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:02:22,036 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:02:22,037 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:02:22,074 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:02:22,074 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:02:22,075 INFO L263 TraceCheckSpWp]: Trace formula consists of 147 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 06:02:22,083 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:02:22,086 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:02:22,285 INFO L272 TraceCheckUtils]: 0: Hoare triple {4446#true} call ULTIMATE.init(); {4446#true} is VALID [2022-04-08 06:02:22,286 INFO L290 TraceCheckUtils]: 1: Hoare triple {4446#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,287 INFO L290 TraceCheckUtils]: 2: Hoare triple {4454#(<= ~counter~0 0)} assume true; {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,287 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4454#(<= ~counter~0 0)} {4446#true} #102#return; {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,287 INFO L272 TraceCheckUtils]: 4: Hoare triple {4454#(<= ~counter~0 0)} call #t~ret9 := main(); {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,288 INFO L290 TraceCheckUtils]: 5: Hoare triple {4454#(<= ~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; {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,288 INFO L272 TraceCheckUtils]: 6: Hoare triple {4454#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,289 INFO L290 TraceCheckUtils]: 7: Hoare triple {4454#(<= ~counter~0 0)} ~cond := #in~cond; {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,289 INFO L290 TraceCheckUtils]: 8: Hoare triple {4454#(<= ~counter~0 0)} assume !(0 == ~cond); {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,289 INFO L290 TraceCheckUtils]: 9: Hoare triple {4454#(<= ~counter~0 0)} assume true; {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,290 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4454#(<= ~counter~0 0)} {4454#(<= ~counter~0 0)} #90#return; {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,290 INFO L272 TraceCheckUtils]: 11: Hoare triple {4454#(<= ~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)); {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,290 INFO L290 TraceCheckUtils]: 12: Hoare triple {4454#(<= ~counter~0 0)} ~cond := #in~cond; {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,291 INFO L290 TraceCheckUtils]: 13: Hoare triple {4454#(<= ~counter~0 0)} assume !(0 == ~cond); {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,291 INFO L290 TraceCheckUtils]: 14: Hoare triple {4454#(<= ~counter~0 0)} assume true; {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,291 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4454#(<= ~counter~0 0)} {4454#(<= ~counter~0 0)} #92#return; {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,292 INFO L290 TraceCheckUtils]: 16: Hoare triple {4454#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {4454#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:22,292 INFO L290 TraceCheckUtils]: 17: Hoare triple {4454#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4503#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:22,293 INFO L290 TraceCheckUtils]: 18: Hoare triple {4503#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {4503#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:22,293 INFO L272 TraceCheckUtils]: 19: Hoare triple {4503#(<= ~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)); {4503#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:22,294 INFO L290 TraceCheckUtils]: 20: Hoare triple {4503#(<= ~counter~0 1)} ~cond := #in~cond; {4503#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:22,294 INFO L290 TraceCheckUtils]: 21: Hoare triple {4503#(<= ~counter~0 1)} assume !(0 == ~cond); {4503#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:22,294 INFO L290 TraceCheckUtils]: 22: Hoare triple {4503#(<= ~counter~0 1)} assume true; {4503#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:22,295 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4503#(<= ~counter~0 1)} {4503#(<= ~counter~0 1)} #94#return; {4503#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:22,296 INFO L290 TraceCheckUtils]: 24: Hoare triple {4503#(<= ~counter~0 1)} assume !!(0 != ~r~0); {4503#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:22,296 INFO L290 TraceCheckUtils]: 25: Hoare triple {4503#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4528#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:22,297 INFO L290 TraceCheckUtils]: 26: Hoare triple {4528#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {4528#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:22,297 INFO L272 TraceCheckUtils]: 27: Hoare triple {4528#(<= ~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)); {4528#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:22,298 INFO L290 TraceCheckUtils]: 28: Hoare triple {4528#(<= ~counter~0 2)} ~cond := #in~cond; {4528#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:22,298 INFO L290 TraceCheckUtils]: 29: Hoare triple {4528#(<= ~counter~0 2)} assume !(0 == ~cond); {4528#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:22,298 INFO L290 TraceCheckUtils]: 30: Hoare triple {4528#(<= ~counter~0 2)} assume true; {4528#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:22,299 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4528#(<= ~counter~0 2)} {4528#(<= ~counter~0 2)} #96#return; {4528#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:22,299 INFO L290 TraceCheckUtils]: 32: Hoare triple {4528#(<= ~counter~0 2)} assume !(~r~0 > 0); {4528#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:22,300 INFO L290 TraceCheckUtils]: 33: Hoare triple {4528#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4553#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:22,300 INFO L290 TraceCheckUtils]: 34: Hoare triple {4553#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {4553#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:22,301 INFO L272 TraceCheckUtils]: 35: Hoare triple {4553#(<= ~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)); {4553#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:22,301 INFO L290 TraceCheckUtils]: 36: Hoare triple {4553#(<= ~counter~0 3)} ~cond := #in~cond; {4553#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:22,301 INFO L290 TraceCheckUtils]: 37: Hoare triple {4553#(<= ~counter~0 3)} assume !(0 == ~cond); {4553#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:22,302 INFO L290 TraceCheckUtils]: 38: Hoare triple {4553#(<= ~counter~0 3)} assume true; {4553#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:22,303 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4553#(<= ~counter~0 3)} {4553#(<= ~counter~0 3)} #98#return; {4553#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:22,303 INFO L290 TraceCheckUtils]: 40: Hoare triple {4553#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {4553#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:22,303 INFO L290 TraceCheckUtils]: 41: Hoare triple {4553#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4578#(<= |main_#t~post8| 3)} is VALID [2022-04-08 06:02:22,304 INFO L290 TraceCheckUtils]: 42: Hoare triple {4578#(<= |main_#t~post8| 3)} assume !(#t~post8 < 20);havoc #t~post8; {4447#false} is VALID [2022-04-08 06:02:22,304 INFO L290 TraceCheckUtils]: 43: Hoare triple {4447#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4447#false} is VALID [2022-04-08 06:02:22,304 INFO L290 TraceCheckUtils]: 44: Hoare triple {4447#false} assume !(#t~post6 < 20);havoc #t~post6; {4447#false} is VALID [2022-04-08 06:02:22,304 INFO L272 TraceCheckUtils]: 45: Hoare triple {4447#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)); {4447#false} is VALID [2022-04-08 06:02:22,304 INFO L290 TraceCheckUtils]: 46: Hoare triple {4447#false} ~cond := #in~cond; {4447#false} is VALID [2022-04-08 06:02:22,304 INFO L290 TraceCheckUtils]: 47: Hoare triple {4447#false} assume 0 == ~cond; {4447#false} is VALID [2022-04-08 06:02:22,304 INFO L290 TraceCheckUtils]: 48: Hoare triple {4447#false} assume !false; {4447#false} is VALID [2022-04-08 06:02:22,305 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 8 proven. 14 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:02:22,305 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:02:22,574 INFO L290 TraceCheckUtils]: 48: Hoare triple {4447#false} assume !false; {4447#false} is VALID [2022-04-08 06:02:22,574 INFO L290 TraceCheckUtils]: 47: Hoare triple {4447#false} assume 0 == ~cond; {4447#false} is VALID [2022-04-08 06:02:22,574 INFO L290 TraceCheckUtils]: 46: Hoare triple {4447#false} ~cond := #in~cond; {4447#false} is VALID [2022-04-08 06:02:22,574 INFO L272 TraceCheckUtils]: 45: Hoare triple {4447#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)); {4447#false} is VALID [2022-04-08 06:02:22,574 INFO L290 TraceCheckUtils]: 44: Hoare triple {4447#false} assume !(#t~post6 < 20);havoc #t~post6; {4447#false} is VALID [2022-04-08 06:02:22,574 INFO L290 TraceCheckUtils]: 43: Hoare triple {4447#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4447#false} is VALID [2022-04-08 06:02:22,575 INFO L290 TraceCheckUtils]: 42: Hoare triple {4618#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {4447#false} is VALID [2022-04-08 06:02:22,575 INFO L290 TraceCheckUtils]: 41: Hoare triple {4622#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4618#(< |main_#t~post8| 20)} is VALID [2022-04-08 06:02:22,575 INFO L290 TraceCheckUtils]: 40: Hoare triple {4622#(< ~counter~0 20)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {4622#(< ~counter~0 20)} is VALID [2022-04-08 06:02:22,577 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4446#true} {4622#(< ~counter~0 20)} #98#return; {4622#(< ~counter~0 20)} is VALID [2022-04-08 06:02:22,577 INFO L290 TraceCheckUtils]: 38: Hoare triple {4446#true} assume true; {4446#true} is VALID [2022-04-08 06:02:22,577 INFO L290 TraceCheckUtils]: 37: Hoare triple {4446#true} assume !(0 == ~cond); {4446#true} is VALID [2022-04-08 06:02:22,577 INFO L290 TraceCheckUtils]: 36: Hoare triple {4446#true} ~cond := #in~cond; {4446#true} is VALID [2022-04-08 06:02:22,577 INFO L272 TraceCheckUtils]: 35: Hoare triple {4622#(< ~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)); {4446#true} is VALID [2022-04-08 06:02:22,578 INFO L290 TraceCheckUtils]: 34: Hoare triple {4622#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {4622#(< ~counter~0 20)} is VALID [2022-04-08 06:02:22,579 INFO L290 TraceCheckUtils]: 33: Hoare triple {4647#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4622#(< ~counter~0 20)} is VALID [2022-04-08 06:02:22,579 INFO L290 TraceCheckUtils]: 32: Hoare triple {4647#(< ~counter~0 19)} assume !(~r~0 > 0); {4647#(< ~counter~0 19)} is VALID [2022-04-08 06:02:22,580 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4446#true} {4647#(< ~counter~0 19)} #96#return; {4647#(< ~counter~0 19)} is VALID [2022-04-08 06:02:22,580 INFO L290 TraceCheckUtils]: 30: Hoare triple {4446#true} assume true; {4446#true} is VALID [2022-04-08 06:02:22,580 INFO L290 TraceCheckUtils]: 29: Hoare triple {4446#true} assume !(0 == ~cond); {4446#true} is VALID [2022-04-08 06:02:22,580 INFO L290 TraceCheckUtils]: 28: Hoare triple {4446#true} ~cond := #in~cond; {4446#true} is VALID [2022-04-08 06:02:22,580 INFO L272 TraceCheckUtils]: 27: Hoare triple {4647#(< ~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)); {4446#true} is VALID [2022-04-08 06:02:22,580 INFO L290 TraceCheckUtils]: 26: Hoare triple {4647#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {4647#(< ~counter~0 19)} is VALID [2022-04-08 06:02:22,581 INFO L290 TraceCheckUtils]: 25: Hoare triple {4672#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4647#(< ~counter~0 19)} is VALID [2022-04-08 06:02:22,581 INFO L290 TraceCheckUtils]: 24: Hoare triple {4672#(< ~counter~0 18)} assume !!(0 != ~r~0); {4672#(< ~counter~0 18)} is VALID [2022-04-08 06:02:22,582 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4446#true} {4672#(< ~counter~0 18)} #94#return; {4672#(< ~counter~0 18)} is VALID [2022-04-08 06:02:22,582 INFO L290 TraceCheckUtils]: 22: Hoare triple {4446#true} assume true; {4446#true} is VALID [2022-04-08 06:02:22,582 INFO L290 TraceCheckUtils]: 21: Hoare triple {4446#true} assume !(0 == ~cond); {4446#true} is VALID [2022-04-08 06:02:22,582 INFO L290 TraceCheckUtils]: 20: Hoare triple {4446#true} ~cond := #in~cond; {4446#true} is VALID [2022-04-08 06:02:22,582 INFO L272 TraceCheckUtils]: 19: Hoare triple {4672#(< ~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)); {4446#true} is VALID [2022-04-08 06:02:22,583 INFO L290 TraceCheckUtils]: 18: Hoare triple {4672#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {4672#(< ~counter~0 18)} is VALID [2022-04-08 06:02:22,583 INFO L290 TraceCheckUtils]: 17: Hoare triple {4697#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4672#(< ~counter~0 18)} is VALID [2022-04-08 06:02:22,583 INFO L290 TraceCheckUtils]: 16: Hoare triple {4697#(< ~counter~0 17)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {4697#(< ~counter~0 17)} is VALID [2022-04-08 06:02:22,584 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4446#true} {4697#(< ~counter~0 17)} #92#return; {4697#(< ~counter~0 17)} is VALID [2022-04-08 06:02:22,584 INFO L290 TraceCheckUtils]: 14: Hoare triple {4446#true} assume true; {4446#true} is VALID [2022-04-08 06:02:22,584 INFO L290 TraceCheckUtils]: 13: Hoare triple {4446#true} assume !(0 == ~cond); {4446#true} is VALID [2022-04-08 06:02:22,584 INFO L290 TraceCheckUtils]: 12: Hoare triple {4446#true} ~cond := #in~cond; {4446#true} is VALID [2022-04-08 06:02:22,584 INFO L272 TraceCheckUtils]: 11: Hoare triple {4697#(< ~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)); {4446#true} is VALID [2022-04-08 06:02:22,585 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4446#true} {4697#(< ~counter~0 17)} #90#return; {4697#(< ~counter~0 17)} is VALID [2022-04-08 06:02:22,585 INFO L290 TraceCheckUtils]: 9: Hoare triple {4446#true} assume true; {4446#true} is VALID [2022-04-08 06:02:22,585 INFO L290 TraceCheckUtils]: 8: Hoare triple {4446#true} assume !(0 == ~cond); {4446#true} is VALID [2022-04-08 06:02:22,585 INFO L290 TraceCheckUtils]: 7: Hoare triple {4446#true} ~cond := #in~cond; {4446#true} is VALID [2022-04-08 06:02:22,585 INFO L272 TraceCheckUtils]: 6: Hoare triple {4697#(< ~counter~0 17)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {4446#true} is VALID [2022-04-08 06:02:22,586 INFO L290 TraceCheckUtils]: 5: Hoare triple {4697#(< ~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; {4697#(< ~counter~0 17)} is VALID [2022-04-08 06:02:22,586 INFO L272 TraceCheckUtils]: 4: Hoare triple {4697#(< ~counter~0 17)} call #t~ret9 := main(); {4697#(< ~counter~0 17)} is VALID [2022-04-08 06:02:22,586 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4697#(< ~counter~0 17)} {4446#true} #102#return; {4697#(< ~counter~0 17)} is VALID [2022-04-08 06:02:22,587 INFO L290 TraceCheckUtils]: 2: Hoare triple {4697#(< ~counter~0 17)} assume true; {4697#(< ~counter~0 17)} is VALID [2022-04-08 06:02:22,587 INFO L290 TraceCheckUtils]: 1: Hoare triple {4446#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {4697#(< ~counter~0 17)} is VALID [2022-04-08 06:02:22,587 INFO L272 TraceCheckUtils]: 0: Hoare triple {4446#true} call ULTIMATE.init(); {4446#true} is VALID [2022-04-08 06:02:22,588 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 06:02:22,588 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:02:22,588 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1927790964] [2022-04-08 06:02:22,588 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:02:22,588 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [277150298] [2022-04-08 06:02:22,588 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [277150298] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:02:22,588 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:02:22,588 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-08 06:02:22,588 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:02:22,589 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1413245762] [2022-04-08 06:02:22,589 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1413245762] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:02:22,589 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:02:22,589 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 06:02:22,589 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [714097340] [2022-04-08 06:02:22,589 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:02:22,589 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 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 49 [2022-04-08 06:02:22,589 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:02:22,590 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 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:02:22,624 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:22,624 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 06:02:22,624 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:22,624 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 06:02:22,624 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-08 06:02:22,625 INFO L87 Difference]: Start difference. First operand 98 states and 128 transitions. Second operand has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 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:02:22,890 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:22,890 INFO L93 Difference]: Finished difference Result 176 states and 238 transitions. [2022-04-08 06:02:22,890 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 06:02:22,890 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 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 49 [2022-04-08 06:02:22,891 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:02:22,891 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 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:02:22,896 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 101 transitions. [2022-04-08 06:02:22,897 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 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:02:22,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 101 transitions. [2022-04-08 06:02:22,898 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 101 transitions. [2022-04-08 06:02:22,971 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:02:22,972 INFO L225 Difference]: With dead ends: 176 [2022-04-08 06:02:22,973 INFO L226 Difference]: Without dead ends: 111 [2022-04-08 06:02:22,973 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 98 GetRequests, 87 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=59, Invalid=97, Unknown=0, NotChecked=0, Total=156 [2022-04-08 06:02:22,974 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 22 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 30 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 137 SdHoareTripleChecker+Invalid, 51 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 30 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:02:22,974 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 137 Invalid, 51 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 30 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:02:22,974 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 111 states. [2022-04-08 06:02:23,052 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 111 to 110. [2022-04-08 06:02:23,053 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:02:23,053 INFO L82 GeneralOperation]: Start isEquivalent. First operand 111 states. Second operand has 110 states, 80 states have (on average 1.25) internal successors, (100), 80 states have internal predecessors, (100), 22 states have call successors, (22), 9 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-08 06:02:23,053 INFO L74 IsIncluded]: Start isIncluded. First operand 111 states. Second operand has 110 states, 80 states have (on average 1.25) internal successors, (100), 80 states have internal predecessors, (100), 22 states have call successors, (22), 9 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-08 06:02:23,054 INFO L87 Difference]: Start difference. First operand 111 states. Second operand has 110 states, 80 states have (on average 1.25) internal successors, (100), 80 states have internal predecessors, (100), 22 states have call successors, (22), 9 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-08 06:02:23,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:23,058 INFO L93 Difference]: Finished difference Result 111 states and 143 transitions. [2022-04-08 06:02:23,058 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 143 transitions. [2022-04-08 06:02:23,059 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:23,059 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:23,059 INFO L74 IsIncluded]: Start isIncluded. First operand has 110 states, 80 states have (on average 1.25) internal successors, (100), 80 states have internal predecessors, (100), 22 states have call successors, (22), 9 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) Second operand 111 states. [2022-04-08 06:02:23,059 INFO L87 Difference]: Start difference. First operand has 110 states, 80 states have (on average 1.25) internal successors, (100), 80 states have internal predecessors, (100), 22 states have call successors, (22), 9 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) Second operand 111 states. [2022-04-08 06:02:23,062 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:23,062 INFO L93 Difference]: Finished difference Result 111 states and 143 transitions. [2022-04-08 06:02:23,062 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 143 transitions. [2022-04-08 06:02:23,063 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:23,063 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:23,063 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:02:23,063 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:02:23,063 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 110 states, 80 states have (on average 1.25) internal successors, (100), 80 states have internal predecessors, (100), 22 states have call successors, (22), 9 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-08 06:02:23,066 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 110 states to 110 states and 142 transitions. [2022-04-08 06:02:23,066 INFO L78 Accepts]: Start accepts. Automaton has 110 states and 142 transitions. Word has length 49 [2022-04-08 06:02:23,066 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:02:23,066 INFO L478 AbstractCegarLoop]: Abstraction has 110 states and 142 transitions. [2022-04-08 06:02:23,066 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 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:02:23,066 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 110 states and 142 transitions. [2022-04-08 06:02:27,634 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 142 edges. 141 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:27,635 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 142 transitions. [2022-04-08 06:02:27,635 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-08 06:02:27,635 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:02:27,635 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:02:27,652 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:02:27,836 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:02:27,836 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:02:27,836 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:02:27,836 INFO L85 PathProgramCache]: Analyzing trace with hash -60460648, now seen corresponding path program 3 times [2022-04-08 06:02:27,837 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:27,837 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2025853643] [2022-04-08 06:02:27,837 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:02:27,837 INFO L85 PathProgramCache]: Analyzing trace with hash -60460648, now seen corresponding path program 4 times [2022-04-08 06:02:27,837 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:02:27,837 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1344268513] [2022-04-08 06:02:27,837 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:02:27,837 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:02:27,848 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:02:27,848 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [24073345] [2022-04-08 06:02:27,848 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:02:27,848 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:02:27,848 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:02:27,849 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:02:27,851 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:02:27,925 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:02:27,925 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:02:27,926 INFO L263 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 06:02:27,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:02:27,936 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:02:28,169 INFO L272 TraceCheckUtils]: 0: Hoare triple {5547#true} call ULTIMATE.init(); {5547#true} is VALID [2022-04-08 06:02:28,170 INFO L290 TraceCheckUtils]: 1: Hoare triple {5547#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,170 INFO L290 TraceCheckUtils]: 2: Hoare triple {5555#(<= ~counter~0 0)} assume true; {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,171 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5555#(<= ~counter~0 0)} {5547#true} #102#return; {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,171 INFO L272 TraceCheckUtils]: 4: Hoare triple {5555#(<= ~counter~0 0)} call #t~ret9 := main(); {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,171 INFO L290 TraceCheckUtils]: 5: Hoare triple {5555#(<= ~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; {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,172 INFO L272 TraceCheckUtils]: 6: Hoare triple {5555#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,172 INFO L290 TraceCheckUtils]: 7: Hoare triple {5555#(<= ~counter~0 0)} ~cond := #in~cond; {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,173 INFO L290 TraceCheckUtils]: 8: Hoare triple {5555#(<= ~counter~0 0)} assume !(0 == ~cond); {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,173 INFO L290 TraceCheckUtils]: 9: Hoare triple {5555#(<= ~counter~0 0)} assume true; {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,174 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5555#(<= ~counter~0 0)} {5555#(<= ~counter~0 0)} #90#return; {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,174 INFO L272 TraceCheckUtils]: 11: Hoare triple {5555#(<= ~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)); {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,174 INFO L290 TraceCheckUtils]: 12: Hoare triple {5555#(<= ~counter~0 0)} ~cond := #in~cond; {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,175 INFO L290 TraceCheckUtils]: 13: Hoare triple {5555#(<= ~counter~0 0)} assume !(0 == ~cond); {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,175 INFO L290 TraceCheckUtils]: 14: Hoare triple {5555#(<= ~counter~0 0)} assume true; {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,175 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5555#(<= ~counter~0 0)} {5555#(<= ~counter~0 0)} #92#return; {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,176 INFO L290 TraceCheckUtils]: 16: Hoare triple {5555#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {5555#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:28,176 INFO L290 TraceCheckUtils]: 17: Hoare triple {5555#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5604#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:28,176 INFO L290 TraceCheckUtils]: 18: Hoare triple {5604#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {5604#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:28,177 INFO L272 TraceCheckUtils]: 19: Hoare triple {5604#(<= ~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)); {5604#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:28,177 INFO L290 TraceCheckUtils]: 20: Hoare triple {5604#(<= ~counter~0 1)} ~cond := #in~cond; {5604#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:28,178 INFO L290 TraceCheckUtils]: 21: Hoare triple {5604#(<= ~counter~0 1)} assume !(0 == ~cond); {5604#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:28,178 INFO L290 TraceCheckUtils]: 22: Hoare triple {5604#(<= ~counter~0 1)} assume true; {5604#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:28,178 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5604#(<= ~counter~0 1)} {5604#(<= ~counter~0 1)} #94#return; {5604#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:28,179 INFO L290 TraceCheckUtils]: 24: Hoare triple {5604#(<= ~counter~0 1)} assume !!(0 != ~r~0); {5604#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:28,179 INFO L290 TraceCheckUtils]: 25: Hoare triple {5604#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5629#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:28,179 INFO L290 TraceCheckUtils]: 26: Hoare triple {5629#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {5629#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:28,180 INFO L272 TraceCheckUtils]: 27: Hoare triple {5629#(<= ~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)); {5629#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:28,180 INFO L290 TraceCheckUtils]: 28: Hoare triple {5629#(<= ~counter~0 2)} ~cond := #in~cond; {5629#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:28,180 INFO L290 TraceCheckUtils]: 29: Hoare triple {5629#(<= ~counter~0 2)} assume !(0 == ~cond); {5629#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:28,181 INFO L290 TraceCheckUtils]: 30: Hoare triple {5629#(<= ~counter~0 2)} assume true; {5629#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:28,181 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5629#(<= ~counter~0 2)} {5629#(<= ~counter~0 2)} #96#return; {5629#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:28,181 INFO L290 TraceCheckUtils]: 32: Hoare triple {5629#(<= ~counter~0 2)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5629#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:28,182 INFO L290 TraceCheckUtils]: 33: Hoare triple {5629#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5654#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:28,182 INFO L290 TraceCheckUtils]: 34: Hoare triple {5654#(<= ~counter~0 3)} assume !!(#t~post7 < 20);havoc #t~post7; {5654#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:28,183 INFO L272 TraceCheckUtils]: 35: Hoare triple {5654#(<= ~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)); {5654#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:28,183 INFO L290 TraceCheckUtils]: 36: Hoare triple {5654#(<= ~counter~0 3)} ~cond := #in~cond; {5654#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:28,183 INFO L290 TraceCheckUtils]: 37: Hoare triple {5654#(<= ~counter~0 3)} assume !(0 == ~cond); {5654#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:28,183 INFO L290 TraceCheckUtils]: 38: Hoare triple {5654#(<= ~counter~0 3)} assume true; {5654#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:28,184 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {5654#(<= ~counter~0 3)} {5654#(<= ~counter~0 3)} #96#return; {5654#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:28,184 INFO L290 TraceCheckUtils]: 40: Hoare triple {5654#(<= ~counter~0 3)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5654#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:28,185 INFO L290 TraceCheckUtils]: 41: Hoare triple {5654#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5679#(<= |main_#t~post7| 3)} is VALID [2022-04-08 06:02:28,185 INFO L290 TraceCheckUtils]: 42: Hoare triple {5679#(<= |main_#t~post7| 3)} assume !(#t~post7 < 20);havoc #t~post7; {5548#false} is VALID [2022-04-08 06:02:28,185 INFO L290 TraceCheckUtils]: 43: Hoare triple {5548#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {5548#false} is VALID [2022-04-08 06:02:28,185 INFO L290 TraceCheckUtils]: 44: Hoare triple {5548#false} assume !(#t~post8 < 20);havoc #t~post8; {5548#false} is VALID [2022-04-08 06:02:28,185 INFO L290 TraceCheckUtils]: 45: Hoare triple {5548#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5548#false} is VALID [2022-04-08 06:02:28,185 INFO L290 TraceCheckUtils]: 46: Hoare triple {5548#false} assume !(#t~post6 < 20);havoc #t~post6; {5548#false} is VALID [2022-04-08 06:02:28,185 INFO L272 TraceCheckUtils]: 47: Hoare triple {5548#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)); {5548#false} is VALID [2022-04-08 06:02:28,185 INFO L290 TraceCheckUtils]: 48: Hoare triple {5548#false} ~cond := #in~cond; {5548#false} is VALID [2022-04-08 06:02:28,186 INFO L290 TraceCheckUtils]: 49: Hoare triple {5548#false} assume 0 == ~cond; {5548#false} is VALID [2022-04-08 06:02:28,186 INFO L290 TraceCheckUtils]: 50: Hoare triple {5548#false} assume !false; {5548#false} is VALID [2022-04-08 06:02:28,186 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 8 proven. 20 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:02:28,186 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:02:28,429 INFO L290 TraceCheckUtils]: 50: Hoare triple {5548#false} assume !false; {5548#false} is VALID [2022-04-08 06:02:28,429 INFO L290 TraceCheckUtils]: 49: Hoare triple {5548#false} assume 0 == ~cond; {5548#false} is VALID [2022-04-08 06:02:28,429 INFO L290 TraceCheckUtils]: 48: Hoare triple {5548#false} ~cond := #in~cond; {5548#false} is VALID [2022-04-08 06:02:28,430 INFO L272 TraceCheckUtils]: 47: Hoare triple {5548#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)); {5548#false} is VALID [2022-04-08 06:02:28,430 INFO L290 TraceCheckUtils]: 46: Hoare triple {5548#false} assume !(#t~post6 < 20);havoc #t~post6; {5548#false} is VALID [2022-04-08 06:02:28,430 INFO L290 TraceCheckUtils]: 45: Hoare triple {5548#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5548#false} is VALID [2022-04-08 06:02:28,430 INFO L290 TraceCheckUtils]: 44: Hoare triple {5548#false} assume !(#t~post8 < 20);havoc #t~post8; {5548#false} is VALID [2022-04-08 06:02:28,430 INFO L290 TraceCheckUtils]: 43: Hoare triple {5548#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {5548#false} is VALID [2022-04-08 06:02:28,430 INFO L290 TraceCheckUtils]: 42: Hoare triple {5731#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {5548#false} is VALID [2022-04-08 06:02:28,430 INFO L290 TraceCheckUtils]: 41: Hoare triple {5735#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5731#(< |main_#t~post7| 20)} is VALID [2022-04-08 06:02:28,431 INFO L290 TraceCheckUtils]: 40: Hoare triple {5735#(< ~counter~0 20)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5735#(< ~counter~0 20)} is VALID [2022-04-08 06:02:28,431 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {5547#true} {5735#(< ~counter~0 20)} #96#return; {5735#(< ~counter~0 20)} is VALID [2022-04-08 06:02:28,432 INFO L290 TraceCheckUtils]: 38: Hoare triple {5547#true} assume true; {5547#true} is VALID [2022-04-08 06:02:28,432 INFO L290 TraceCheckUtils]: 37: Hoare triple {5547#true} assume !(0 == ~cond); {5547#true} is VALID [2022-04-08 06:02:28,432 INFO L290 TraceCheckUtils]: 36: Hoare triple {5547#true} ~cond := #in~cond; {5547#true} is VALID [2022-04-08 06:02:28,432 INFO L272 TraceCheckUtils]: 35: Hoare triple {5735#(< ~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)); {5547#true} is VALID [2022-04-08 06:02:28,432 INFO L290 TraceCheckUtils]: 34: Hoare triple {5735#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {5735#(< ~counter~0 20)} is VALID [2022-04-08 06:02:28,433 INFO L290 TraceCheckUtils]: 33: Hoare triple {5760#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5735#(< ~counter~0 20)} is VALID [2022-04-08 06:02:28,433 INFO L290 TraceCheckUtils]: 32: Hoare triple {5760#(< ~counter~0 19)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5760#(< ~counter~0 19)} is VALID [2022-04-08 06:02:28,433 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5547#true} {5760#(< ~counter~0 19)} #96#return; {5760#(< ~counter~0 19)} is VALID [2022-04-08 06:02:28,433 INFO L290 TraceCheckUtils]: 30: Hoare triple {5547#true} assume true; {5547#true} is VALID [2022-04-08 06:02:28,434 INFO L290 TraceCheckUtils]: 29: Hoare triple {5547#true} assume !(0 == ~cond); {5547#true} is VALID [2022-04-08 06:02:28,434 INFO L290 TraceCheckUtils]: 28: Hoare triple {5547#true} ~cond := #in~cond; {5547#true} is VALID [2022-04-08 06:02:28,434 INFO L272 TraceCheckUtils]: 27: Hoare triple {5760#(< ~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)); {5547#true} is VALID [2022-04-08 06:02:28,435 INFO L290 TraceCheckUtils]: 26: Hoare triple {5760#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {5760#(< ~counter~0 19)} is VALID [2022-04-08 06:02:28,436 INFO L290 TraceCheckUtils]: 25: Hoare triple {5785#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5760#(< ~counter~0 19)} is VALID [2022-04-08 06:02:28,436 INFO L290 TraceCheckUtils]: 24: Hoare triple {5785#(< ~counter~0 18)} assume !!(0 != ~r~0); {5785#(< ~counter~0 18)} is VALID [2022-04-08 06:02:28,436 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5547#true} {5785#(< ~counter~0 18)} #94#return; {5785#(< ~counter~0 18)} is VALID [2022-04-08 06:02:28,437 INFO L290 TraceCheckUtils]: 22: Hoare triple {5547#true} assume true; {5547#true} is VALID [2022-04-08 06:02:28,437 INFO L290 TraceCheckUtils]: 21: Hoare triple {5547#true} assume !(0 == ~cond); {5547#true} is VALID [2022-04-08 06:02:28,437 INFO L290 TraceCheckUtils]: 20: Hoare triple {5547#true} ~cond := #in~cond; {5547#true} is VALID [2022-04-08 06:02:28,437 INFO L272 TraceCheckUtils]: 19: Hoare triple {5785#(< ~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)); {5547#true} is VALID [2022-04-08 06:02:28,437 INFO L290 TraceCheckUtils]: 18: Hoare triple {5785#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {5785#(< ~counter~0 18)} is VALID [2022-04-08 06:02:28,438 INFO L290 TraceCheckUtils]: 17: Hoare triple {5810#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5785#(< ~counter~0 18)} is VALID [2022-04-08 06:02:28,438 INFO L290 TraceCheckUtils]: 16: Hoare triple {5810#(< ~counter~0 17)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {5810#(< ~counter~0 17)} is VALID [2022-04-08 06:02:28,438 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5547#true} {5810#(< ~counter~0 17)} #92#return; {5810#(< ~counter~0 17)} is VALID [2022-04-08 06:02:28,438 INFO L290 TraceCheckUtils]: 14: Hoare triple {5547#true} assume true; {5547#true} is VALID [2022-04-08 06:02:28,439 INFO L290 TraceCheckUtils]: 13: Hoare triple {5547#true} assume !(0 == ~cond); {5547#true} is VALID [2022-04-08 06:02:28,439 INFO L290 TraceCheckUtils]: 12: Hoare triple {5547#true} ~cond := #in~cond; {5547#true} is VALID [2022-04-08 06:02:28,439 INFO L272 TraceCheckUtils]: 11: Hoare triple {5810#(< ~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)); {5547#true} is VALID [2022-04-08 06:02:28,439 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5547#true} {5810#(< ~counter~0 17)} #90#return; {5810#(< ~counter~0 17)} is VALID [2022-04-08 06:02:28,439 INFO L290 TraceCheckUtils]: 9: Hoare triple {5547#true} assume true; {5547#true} is VALID [2022-04-08 06:02:28,439 INFO L290 TraceCheckUtils]: 8: Hoare triple {5547#true} assume !(0 == ~cond); {5547#true} is VALID [2022-04-08 06:02:28,440 INFO L290 TraceCheckUtils]: 7: Hoare triple {5547#true} ~cond := #in~cond; {5547#true} is VALID [2022-04-08 06:02:28,440 INFO L272 TraceCheckUtils]: 6: Hoare triple {5810#(< ~counter~0 17)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {5547#true} is VALID [2022-04-08 06:02:28,440 INFO L290 TraceCheckUtils]: 5: Hoare triple {5810#(< ~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; {5810#(< ~counter~0 17)} is VALID [2022-04-08 06:02:28,440 INFO L272 TraceCheckUtils]: 4: Hoare triple {5810#(< ~counter~0 17)} call #t~ret9 := main(); {5810#(< ~counter~0 17)} is VALID [2022-04-08 06:02:28,441 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5810#(< ~counter~0 17)} {5547#true} #102#return; {5810#(< ~counter~0 17)} is VALID [2022-04-08 06:02:28,441 INFO L290 TraceCheckUtils]: 2: Hoare triple {5810#(< ~counter~0 17)} assume true; {5810#(< ~counter~0 17)} is VALID [2022-04-08 06:02:28,442 INFO L290 TraceCheckUtils]: 1: Hoare triple {5547#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {5810#(< ~counter~0 17)} is VALID [2022-04-08 06:02:28,442 INFO L272 TraceCheckUtils]: 0: Hoare triple {5547#true} call ULTIMATE.init(); {5547#true} is VALID [2022-04-08 06:02:28,442 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 8 proven. 8 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 06:02:28,442 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:02:28,442 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1344268513] [2022-04-08 06:02:28,442 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:02:28,442 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [24073345] [2022-04-08 06:02:28,442 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [24073345] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:02:28,443 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:02:28,443 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-08 06:02:28,443 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:02:28,444 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2025853643] [2022-04-08 06:02:28,444 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2025853643] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:02:28,444 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:02:28,444 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 06:02:28,444 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [406723614] [2022-04-08 06:02:28,444 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:02:28,447 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 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 51 [2022-04-08 06:02:28,447 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:02:28,447 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 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:02:28,502 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:28,502 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 06:02:28,502 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:28,502 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 06:02:28,503 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-08 06:02:28,503 INFO L87 Difference]: Start difference. First operand 110 states and 142 transitions. Second operand has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 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:02:28,796 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:28,796 INFO L93 Difference]: Finished difference Result 149 states and 197 transitions. [2022-04-08 06:02:28,796 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 06:02:28,796 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 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 51 [2022-04-08 06:02:28,797 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:02:28,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 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:02:28,799 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 101 transitions. [2022-04-08 06:02:28,799 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 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:02:28,801 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 101 transitions. [2022-04-08 06:02:28,802 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 101 transitions. [2022-04-08 06:02:28,872 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:02:28,874 INFO L225 Difference]: With dead ends: 149 [2022-04-08 06:02:28,874 INFO L226 Difference]: Without dead ends: 112 [2022-04-08 06:02:28,874 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 91 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=70, Invalid=112, Unknown=0, NotChecked=0, Total=182 [2022-04-08 06:02:28,875 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 14 mSDsluCounter, 124 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 164 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:02:28,875 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 164 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:02:28,875 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2022-04-08 06:02:28,955 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 112. [2022-04-08 06:02:28,955 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:02:28,955 INFO L82 GeneralOperation]: Start isEquivalent. First operand 112 states. Second operand has 112 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 82 states have internal predecessors, (102), 22 states have call successors, (22), 9 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-08 06:02:28,956 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand has 112 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 82 states have internal predecessors, (102), 22 states have call successors, (22), 9 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-08 06:02:28,956 INFO L87 Difference]: Start difference. First operand 112 states. Second operand has 112 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 82 states have internal predecessors, (102), 22 states have call successors, (22), 9 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-08 06:02:28,958 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:28,959 INFO L93 Difference]: Finished difference Result 112 states and 144 transitions. [2022-04-08 06:02:28,959 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 144 transitions. [2022-04-08 06:02:28,959 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:28,959 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:28,960 INFO L74 IsIncluded]: Start isIncluded. First operand has 112 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 82 states have internal predecessors, (102), 22 states have call successors, (22), 9 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) Second operand 112 states. [2022-04-08 06:02:28,960 INFO L87 Difference]: Start difference. First operand has 112 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 82 states have internal predecessors, (102), 22 states have call successors, (22), 9 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) Second operand 112 states. [2022-04-08 06:02:28,972 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:28,972 INFO L93 Difference]: Finished difference Result 112 states and 144 transitions. [2022-04-08 06:02:28,972 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 144 transitions. [2022-04-08 06:02:28,973 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:28,973 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:28,973 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:02:28,973 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:02:28,973 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 112 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 82 states have internal predecessors, (102), 22 states have call successors, (22), 9 states have call predecessors, (22), 7 states have return successors, (20), 20 states have call predecessors, (20), 20 states have call successors, (20) [2022-04-08 06:02:28,976 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 144 transitions. [2022-04-08 06:02:28,976 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 144 transitions. Word has length 51 [2022-04-08 06:02:28,976 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:02:28,976 INFO L478 AbstractCegarLoop]: Abstraction has 112 states and 144 transitions. [2022-04-08 06:02:28,976 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 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:02:28,976 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 112 states and 144 transitions. [2022-04-08 06:02:33,812 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 144 edges. 143 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:33,812 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 144 transitions. [2022-04-08 06:02:33,813 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-08 06:02:33,813 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:02:33,813 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:02:33,830 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:02:34,020 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:02:34,020 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:02:34,020 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:02:34,020 INFO L85 PathProgramCache]: Analyzing trace with hash -1067781299, now seen corresponding path program 1 times [2022-04-08 06:02:34,020 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:34,021 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1765897643] [2022-04-08 06:02:34,021 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:02:34,021 INFO L85 PathProgramCache]: Analyzing trace with hash -1067781299, now seen corresponding path program 2 times [2022-04-08 06:02:34,022 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:02:34,022 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2140445377] [2022-04-08 06:02:34,022 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:02:34,023 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:02:34,033 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:02:34,033 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1040711724] [2022-04-08 06:02:34,033 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:02:34,033 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:02:34,033 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:02:34,034 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:02:34,035 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:02:34,076 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:02:34,076 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:02:34,076 INFO L263 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 06:02:34,087 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:02:34,087 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:02:34,332 INFO L272 TraceCheckUtils]: 0: Hoare triple {6614#true} call ULTIMATE.init(); {6614#true} is VALID [2022-04-08 06:02:34,333 INFO L290 TraceCheckUtils]: 1: Hoare triple {6614#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,333 INFO L290 TraceCheckUtils]: 2: Hoare triple {6622#(<= ~counter~0 0)} assume true; {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,334 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6622#(<= ~counter~0 0)} {6614#true} #102#return; {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,334 INFO L272 TraceCheckUtils]: 4: Hoare triple {6622#(<= ~counter~0 0)} call #t~ret9 := main(); {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,334 INFO L290 TraceCheckUtils]: 5: Hoare triple {6622#(<= ~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; {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,335 INFO L272 TraceCheckUtils]: 6: Hoare triple {6622#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,335 INFO L290 TraceCheckUtils]: 7: Hoare triple {6622#(<= ~counter~0 0)} ~cond := #in~cond; {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,335 INFO L290 TraceCheckUtils]: 8: Hoare triple {6622#(<= ~counter~0 0)} assume !(0 == ~cond); {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,336 INFO L290 TraceCheckUtils]: 9: Hoare triple {6622#(<= ~counter~0 0)} assume true; {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,336 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6622#(<= ~counter~0 0)} {6622#(<= ~counter~0 0)} #90#return; {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,337 INFO L272 TraceCheckUtils]: 11: Hoare triple {6622#(<= ~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)); {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,337 INFO L290 TraceCheckUtils]: 12: Hoare triple {6622#(<= ~counter~0 0)} ~cond := #in~cond; {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,337 INFO L290 TraceCheckUtils]: 13: Hoare triple {6622#(<= ~counter~0 0)} assume !(0 == ~cond); {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,337 INFO L290 TraceCheckUtils]: 14: Hoare triple {6622#(<= ~counter~0 0)} assume true; {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,338 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6622#(<= ~counter~0 0)} {6622#(<= ~counter~0 0)} #92#return; {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,338 INFO L290 TraceCheckUtils]: 16: Hoare triple {6622#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {6622#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:34,339 INFO L290 TraceCheckUtils]: 17: Hoare triple {6622#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6671#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:34,339 INFO L290 TraceCheckUtils]: 18: Hoare triple {6671#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {6671#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:34,340 INFO L272 TraceCheckUtils]: 19: Hoare triple {6671#(<= ~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)); {6671#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:34,340 INFO L290 TraceCheckUtils]: 20: Hoare triple {6671#(<= ~counter~0 1)} ~cond := #in~cond; {6671#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:34,340 INFO L290 TraceCheckUtils]: 21: Hoare triple {6671#(<= ~counter~0 1)} assume !(0 == ~cond); {6671#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:34,341 INFO L290 TraceCheckUtils]: 22: Hoare triple {6671#(<= ~counter~0 1)} assume true; {6671#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:34,341 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6671#(<= ~counter~0 1)} {6671#(<= ~counter~0 1)} #94#return; {6671#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:34,342 INFO L290 TraceCheckUtils]: 24: Hoare triple {6671#(<= ~counter~0 1)} assume !!(0 != ~r~0); {6671#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:34,342 INFO L290 TraceCheckUtils]: 25: Hoare triple {6671#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6696#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:34,343 INFO L290 TraceCheckUtils]: 26: Hoare triple {6696#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {6696#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:34,343 INFO L272 TraceCheckUtils]: 27: Hoare triple {6696#(<= ~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)); {6696#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:34,344 INFO L290 TraceCheckUtils]: 28: Hoare triple {6696#(<= ~counter~0 2)} ~cond := #in~cond; {6696#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:34,344 INFO L290 TraceCheckUtils]: 29: Hoare triple {6696#(<= ~counter~0 2)} assume !(0 == ~cond); {6696#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:34,344 INFO L290 TraceCheckUtils]: 30: Hoare triple {6696#(<= ~counter~0 2)} assume true; {6696#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:34,345 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6696#(<= ~counter~0 2)} {6696#(<= ~counter~0 2)} #96#return; {6696#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:34,345 INFO L290 TraceCheckUtils]: 32: Hoare triple {6696#(<= ~counter~0 2)} assume !(~r~0 > 0); {6696#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:34,346 INFO L290 TraceCheckUtils]: 33: Hoare triple {6696#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {6721#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:34,346 INFO L290 TraceCheckUtils]: 34: Hoare triple {6721#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {6721#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:34,347 INFO L272 TraceCheckUtils]: 35: Hoare triple {6721#(<= ~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)); {6721#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:34,347 INFO L290 TraceCheckUtils]: 36: Hoare triple {6721#(<= ~counter~0 3)} ~cond := #in~cond; {6721#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:34,347 INFO L290 TraceCheckUtils]: 37: Hoare triple {6721#(<= ~counter~0 3)} assume !(0 == ~cond); {6721#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:34,348 INFO L290 TraceCheckUtils]: 38: Hoare triple {6721#(<= ~counter~0 3)} assume true; {6721#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:34,348 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {6721#(<= ~counter~0 3)} {6721#(<= ~counter~0 3)} #98#return; {6721#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:34,349 INFO L290 TraceCheckUtils]: 40: Hoare triple {6721#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {6721#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:34,349 INFO L290 TraceCheckUtils]: 41: Hoare triple {6721#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {6746#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:34,350 INFO L290 TraceCheckUtils]: 42: Hoare triple {6746#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {6746#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:34,350 INFO L272 TraceCheckUtils]: 43: Hoare triple {6746#(<= ~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)); {6746#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:34,351 INFO L290 TraceCheckUtils]: 44: Hoare triple {6746#(<= ~counter~0 4)} ~cond := #in~cond; {6746#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:34,351 INFO L290 TraceCheckUtils]: 45: Hoare triple {6746#(<= ~counter~0 4)} assume !(0 == ~cond); {6746#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:34,351 INFO L290 TraceCheckUtils]: 46: Hoare triple {6746#(<= ~counter~0 4)} assume true; {6746#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:34,352 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6746#(<= ~counter~0 4)} {6746#(<= ~counter~0 4)} #98#return; {6746#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:34,352 INFO L290 TraceCheckUtils]: 48: Hoare triple {6746#(<= ~counter~0 4)} assume !(~r~0 < 0); {6746#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:34,353 INFO L290 TraceCheckUtils]: 49: Hoare triple {6746#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6771#(<= |main_#t~post6| 4)} is VALID [2022-04-08 06:02:34,353 INFO L290 TraceCheckUtils]: 50: Hoare triple {6771#(<= |main_#t~post6| 4)} assume !(#t~post6 < 20);havoc #t~post6; {6615#false} is VALID [2022-04-08 06:02:34,353 INFO L272 TraceCheckUtils]: 51: Hoare triple {6615#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)); {6615#false} is VALID [2022-04-08 06:02:34,353 INFO L290 TraceCheckUtils]: 52: Hoare triple {6615#false} ~cond := #in~cond; {6615#false} is VALID [2022-04-08 06:02:34,354 INFO L290 TraceCheckUtils]: 53: Hoare triple {6615#false} assume 0 == ~cond; {6615#false} is VALID [2022-04-08 06:02:34,354 INFO L290 TraceCheckUtils]: 54: Hoare triple {6615#false} assume !false; {6615#false} is VALID [2022-04-08 06:02:34,354 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 8 proven. 30 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:02:34,354 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:02:34,665 INFO L290 TraceCheckUtils]: 54: Hoare triple {6615#false} assume !false; {6615#false} is VALID [2022-04-08 06:02:34,665 INFO L290 TraceCheckUtils]: 53: Hoare triple {6615#false} assume 0 == ~cond; {6615#false} is VALID [2022-04-08 06:02:34,665 INFO L290 TraceCheckUtils]: 52: Hoare triple {6615#false} ~cond := #in~cond; {6615#false} is VALID [2022-04-08 06:02:34,665 INFO L272 TraceCheckUtils]: 51: Hoare triple {6615#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)); {6615#false} is VALID [2022-04-08 06:02:34,666 INFO L290 TraceCheckUtils]: 50: Hoare triple {6799#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {6615#false} is VALID [2022-04-08 06:02:34,666 INFO L290 TraceCheckUtils]: 49: Hoare triple {6803#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6799#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:02:34,666 INFO L290 TraceCheckUtils]: 48: Hoare triple {6803#(< ~counter~0 20)} assume !(~r~0 < 0); {6803#(< ~counter~0 20)} is VALID [2022-04-08 06:02:34,667 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6614#true} {6803#(< ~counter~0 20)} #98#return; {6803#(< ~counter~0 20)} is VALID [2022-04-08 06:02:34,667 INFO L290 TraceCheckUtils]: 46: Hoare triple {6614#true} assume true; {6614#true} is VALID [2022-04-08 06:02:34,667 INFO L290 TraceCheckUtils]: 45: Hoare triple {6614#true} assume !(0 == ~cond); {6614#true} is VALID [2022-04-08 06:02:34,667 INFO L290 TraceCheckUtils]: 44: Hoare triple {6614#true} ~cond := #in~cond; {6614#true} is VALID [2022-04-08 06:02:34,667 INFO L272 TraceCheckUtils]: 43: Hoare triple {6803#(< ~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)); {6614#true} is VALID [2022-04-08 06:02:34,667 INFO L290 TraceCheckUtils]: 42: Hoare triple {6803#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {6803#(< ~counter~0 20)} is VALID [2022-04-08 06:02:34,668 INFO L290 TraceCheckUtils]: 41: Hoare triple {6828#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {6803#(< ~counter~0 20)} is VALID [2022-04-08 06:02:34,668 INFO L290 TraceCheckUtils]: 40: Hoare triple {6828#(< ~counter~0 19)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {6828#(< ~counter~0 19)} is VALID [2022-04-08 06:02:34,669 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {6614#true} {6828#(< ~counter~0 19)} #98#return; {6828#(< ~counter~0 19)} is VALID [2022-04-08 06:02:34,669 INFO L290 TraceCheckUtils]: 38: Hoare triple {6614#true} assume true; {6614#true} is VALID [2022-04-08 06:02:34,669 INFO L290 TraceCheckUtils]: 37: Hoare triple {6614#true} assume !(0 == ~cond); {6614#true} is VALID [2022-04-08 06:02:34,669 INFO L290 TraceCheckUtils]: 36: Hoare triple {6614#true} ~cond := #in~cond; {6614#true} is VALID [2022-04-08 06:02:34,669 INFO L272 TraceCheckUtils]: 35: Hoare triple {6828#(< ~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)); {6614#true} is VALID [2022-04-08 06:02:34,669 INFO L290 TraceCheckUtils]: 34: Hoare triple {6828#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {6828#(< ~counter~0 19)} is VALID [2022-04-08 06:02:34,670 INFO L290 TraceCheckUtils]: 33: Hoare triple {6853#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {6828#(< ~counter~0 19)} is VALID [2022-04-08 06:02:34,670 INFO L290 TraceCheckUtils]: 32: Hoare triple {6853#(< ~counter~0 18)} assume !(~r~0 > 0); {6853#(< ~counter~0 18)} is VALID [2022-04-08 06:02:34,670 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6614#true} {6853#(< ~counter~0 18)} #96#return; {6853#(< ~counter~0 18)} is VALID [2022-04-08 06:02:34,670 INFO L290 TraceCheckUtils]: 30: Hoare triple {6614#true} assume true; {6614#true} is VALID [2022-04-08 06:02:34,670 INFO L290 TraceCheckUtils]: 29: Hoare triple {6614#true} assume !(0 == ~cond); {6614#true} is VALID [2022-04-08 06:02:34,670 INFO L290 TraceCheckUtils]: 28: Hoare triple {6614#true} ~cond := #in~cond; {6614#true} is VALID [2022-04-08 06:02:34,671 INFO L272 TraceCheckUtils]: 27: Hoare triple {6853#(< ~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)); {6614#true} is VALID [2022-04-08 06:02:34,671 INFO L290 TraceCheckUtils]: 26: Hoare triple {6853#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {6853#(< ~counter~0 18)} is VALID [2022-04-08 06:02:34,671 INFO L290 TraceCheckUtils]: 25: Hoare triple {6878#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6853#(< ~counter~0 18)} is VALID [2022-04-08 06:02:34,671 INFO L290 TraceCheckUtils]: 24: Hoare triple {6878#(< ~counter~0 17)} assume !!(0 != ~r~0); {6878#(< ~counter~0 17)} is VALID [2022-04-08 06:02:34,672 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6614#true} {6878#(< ~counter~0 17)} #94#return; {6878#(< ~counter~0 17)} is VALID [2022-04-08 06:02:34,672 INFO L290 TraceCheckUtils]: 22: Hoare triple {6614#true} assume true; {6614#true} is VALID [2022-04-08 06:02:34,672 INFO L290 TraceCheckUtils]: 21: Hoare triple {6614#true} assume !(0 == ~cond); {6614#true} is VALID [2022-04-08 06:02:34,672 INFO L290 TraceCheckUtils]: 20: Hoare triple {6614#true} ~cond := #in~cond; {6614#true} is VALID [2022-04-08 06:02:34,672 INFO L272 TraceCheckUtils]: 19: Hoare triple {6878#(< ~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)); {6614#true} is VALID [2022-04-08 06:02:34,672 INFO L290 TraceCheckUtils]: 18: Hoare triple {6878#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {6878#(< ~counter~0 17)} is VALID [2022-04-08 06:02:34,673 INFO L290 TraceCheckUtils]: 17: Hoare triple {6903#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6878#(< ~counter~0 17)} is VALID [2022-04-08 06:02:34,673 INFO L290 TraceCheckUtils]: 16: Hoare triple {6903#(< ~counter~0 16)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {6903#(< ~counter~0 16)} is VALID [2022-04-08 06:02:34,673 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6614#true} {6903#(< ~counter~0 16)} #92#return; {6903#(< ~counter~0 16)} is VALID [2022-04-08 06:02:34,674 INFO L290 TraceCheckUtils]: 14: Hoare triple {6614#true} assume true; {6614#true} is VALID [2022-04-08 06:02:34,674 INFO L290 TraceCheckUtils]: 13: Hoare triple {6614#true} assume !(0 == ~cond); {6614#true} is VALID [2022-04-08 06:02:34,674 INFO L290 TraceCheckUtils]: 12: Hoare triple {6614#true} ~cond := #in~cond; {6614#true} is VALID [2022-04-08 06:02:34,674 INFO L272 TraceCheckUtils]: 11: Hoare triple {6903#(< ~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)); {6614#true} is VALID [2022-04-08 06:02:34,674 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6614#true} {6903#(< ~counter~0 16)} #90#return; {6903#(< ~counter~0 16)} is VALID [2022-04-08 06:02:34,674 INFO L290 TraceCheckUtils]: 9: Hoare triple {6614#true} assume true; {6614#true} is VALID [2022-04-08 06:02:34,674 INFO L290 TraceCheckUtils]: 8: Hoare triple {6614#true} assume !(0 == ~cond); {6614#true} is VALID [2022-04-08 06:02:34,674 INFO L290 TraceCheckUtils]: 7: Hoare triple {6614#true} ~cond := #in~cond; {6614#true} is VALID [2022-04-08 06:02:34,674 INFO L272 TraceCheckUtils]: 6: Hoare triple {6903#(< ~counter~0 16)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {6614#true} is VALID [2022-04-08 06:02:34,675 INFO L290 TraceCheckUtils]: 5: Hoare triple {6903#(< ~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; {6903#(< ~counter~0 16)} is VALID [2022-04-08 06:02:34,675 INFO L272 TraceCheckUtils]: 4: Hoare triple {6903#(< ~counter~0 16)} call #t~ret9 := main(); {6903#(< ~counter~0 16)} is VALID [2022-04-08 06:02:34,675 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6903#(< ~counter~0 16)} {6614#true} #102#return; {6903#(< ~counter~0 16)} is VALID [2022-04-08 06:02:34,676 INFO L290 TraceCheckUtils]: 2: Hoare triple {6903#(< ~counter~0 16)} assume true; {6903#(< ~counter~0 16)} is VALID [2022-04-08 06:02:34,676 INFO L290 TraceCheckUtils]: 1: Hoare triple {6614#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {6903#(< ~counter~0 16)} is VALID [2022-04-08 06:02:34,676 INFO L272 TraceCheckUtils]: 0: Hoare triple {6614#true} call ULTIMATE.init(); {6614#true} is VALID [2022-04-08 06:02:34,676 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 8 proven. 6 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 06:02:34,676 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:02:34,677 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2140445377] [2022-04-08 06:02:34,677 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:02:34,677 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1040711724] [2022-04-08 06:02:34,677 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1040711724] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:02:34,677 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:02:34,677 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-08 06:02:34,677 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:02:34,677 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1765897643] [2022-04-08 06:02:34,677 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1765897643] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:02:34,677 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:02:34,677 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 06:02:34,677 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1708653683] [2022-04-08 06:02:34,677 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:02:34,678 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.5) internal successors, (36), 7 states have internal predecessors, (36), 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 55 [2022-04-08 06:02:34,678 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:02:34,678 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.5) internal successors, (36), 7 states have internal predecessors, (36), 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:02:34,711 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:34,711 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 06:02:34,711 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:34,712 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 06:02:34,712 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 06:02:34,712 INFO L87 Difference]: Start difference. First operand 112 states and 144 transitions. Second operand has 8 states, 8 states have (on average 4.5) internal successors, (36), 7 states have internal predecessors, (36), 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:02:34,984 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:34,984 INFO L93 Difference]: Finished difference Result 134 states and 172 transitions. [2022-04-08 06:02:34,984 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 06:02:34,984 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.5) internal successors, (36), 7 states have internal predecessors, (36), 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 55 [2022-04-08 06:02:34,984 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:02:34,984 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.5) internal successors, (36), 7 states have internal predecessors, (36), 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:02:34,986 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-04-08 06:02:34,986 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.5) internal successors, (36), 7 states have internal predecessors, (36), 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:02:34,987 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-04-08 06:02:34,987 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 95 transitions. [2022-04-08 06:02:35,056 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:02:35,060 INFO L225 Difference]: With dead ends: 134 [2022-04-08 06:02:35,061 INFO L226 Difference]: Without dead ends: 129 [2022-04-08 06:02:35,061 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 110 GetRequests, 97 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=84, Invalid=126, Unknown=0, NotChecked=0, Total=210 [2022-04-08 06:02:35,061 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 22 mSDsluCounter, 131 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 173 SdHoareTripleChecker+Invalid, 62 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:02:35,062 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 173 Invalid, 62 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:02:35,063 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2022-04-08 06:02:35,171 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 125. [2022-04-08 06:02:35,171 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:02:35,172 INFO L82 GeneralOperation]: Start isEquivalent. First operand 129 states. Second operand has 125 states, 91 states have (on average 1.2417582417582418) internal successors, (113), 92 states have internal predecessors, (113), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:02:35,172 INFO L74 IsIncluded]: Start isIncluded. First operand 129 states. Second operand has 125 states, 91 states have (on average 1.2417582417582418) internal successors, (113), 92 states have internal predecessors, (113), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:02:35,178 INFO L87 Difference]: Start difference. First operand 129 states. Second operand has 125 states, 91 states have (on average 1.2417582417582418) internal successors, (113), 92 states have internal predecessors, (113), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:02:35,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:35,183 INFO L93 Difference]: Finished difference Result 129 states and 166 transitions. [2022-04-08 06:02:35,183 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 166 transitions. [2022-04-08 06:02:35,184 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:35,184 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:35,185 INFO L74 IsIncluded]: Start isIncluded. First operand has 125 states, 91 states have (on average 1.2417582417582418) internal successors, (113), 92 states have internal predecessors, (113), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 129 states. [2022-04-08 06:02:35,185 INFO L87 Difference]: Start difference. First operand has 125 states, 91 states have (on average 1.2417582417582418) internal successors, (113), 92 states have internal predecessors, (113), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 129 states. [2022-04-08 06:02:35,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:35,188 INFO L93 Difference]: Finished difference Result 129 states and 166 transitions. [2022-04-08 06:02:35,188 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 166 transitions. [2022-04-08 06:02:35,189 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:35,189 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:35,189 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:02:35,189 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:02:35,190 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 125 states, 91 states have (on average 1.2417582417582418) internal successors, (113), 92 states have internal predecessors, (113), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:02:35,193 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 125 states to 125 states and 161 transitions. [2022-04-08 06:02:35,193 INFO L78 Accepts]: Start accepts. Automaton has 125 states and 161 transitions. Word has length 55 [2022-04-08 06:02:35,193 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:02:35,193 INFO L478 AbstractCegarLoop]: Abstraction has 125 states and 161 transitions. [2022-04-08 06:02:35,194 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.5) internal successors, (36), 7 states have internal predecessors, (36), 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:02:35,194 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 125 states and 161 transitions. [2022-04-08 06:02:41,532 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:02:41,533 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 161 transitions. [2022-04-08 06:02:41,533 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-08 06:02:41,533 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:02:41,533 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:02:41,550 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:02:41,747 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:02:41,747 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:02:41,748 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:02:41,748 INFO L85 PathProgramCache]: Analyzing trace with hash -2095290798, now seen corresponding path program 3 times [2022-04-08 06:02:41,748 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:41,748 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1114669918] [2022-04-08 06:02:41,748 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:02:41,748 INFO L85 PathProgramCache]: Analyzing trace with hash -2095290798, now seen corresponding path program 4 times [2022-04-08 06:02:41,748 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:02:41,749 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [141303829] [2022-04-08 06:02:41,749 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:02:41,749 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:02:41,758 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:02:41,758 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1644848063] [2022-04-08 06:02:41,758 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:02:41,758 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:02:41,758 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:02:41,759 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:02:41,760 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:02:41,807 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:02:41,807 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:02:41,808 INFO L263 TraceCheckSpWp]: Trace formula consists of 166 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 06:02:41,823 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:02:41,824 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:02:42,087 INFO L272 TraceCheckUtils]: 0: Hoare triple {7735#true} call ULTIMATE.init(); {7735#true} is VALID [2022-04-08 06:02:42,088 INFO L290 TraceCheckUtils]: 1: Hoare triple {7735#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,088 INFO L290 TraceCheckUtils]: 2: Hoare triple {7743#(<= ~counter~0 0)} assume true; {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,089 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7743#(<= ~counter~0 0)} {7735#true} #102#return; {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,089 INFO L272 TraceCheckUtils]: 4: Hoare triple {7743#(<= ~counter~0 0)} call #t~ret9 := main(); {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,089 INFO L290 TraceCheckUtils]: 5: Hoare triple {7743#(<= ~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; {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,090 INFO L272 TraceCheckUtils]: 6: Hoare triple {7743#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,090 INFO L290 TraceCheckUtils]: 7: Hoare triple {7743#(<= ~counter~0 0)} ~cond := #in~cond; {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,091 INFO L290 TraceCheckUtils]: 8: Hoare triple {7743#(<= ~counter~0 0)} assume !(0 == ~cond); {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,091 INFO L290 TraceCheckUtils]: 9: Hoare triple {7743#(<= ~counter~0 0)} assume true; {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,092 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7743#(<= ~counter~0 0)} {7743#(<= ~counter~0 0)} #90#return; {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,092 INFO L272 TraceCheckUtils]: 11: Hoare triple {7743#(<= ~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)); {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,092 INFO L290 TraceCheckUtils]: 12: Hoare triple {7743#(<= ~counter~0 0)} ~cond := #in~cond; {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,093 INFO L290 TraceCheckUtils]: 13: Hoare triple {7743#(<= ~counter~0 0)} assume !(0 == ~cond); {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,093 INFO L290 TraceCheckUtils]: 14: Hoare triple {7743#(<= ~counter~0 0)} assume true; {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,093 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7743#(<= ~counter~0 0)} {7743#(<= ~counter~0 0)} #92#return; {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,094 INFO L290 TraceCheckUtils]: 16: Hoare triple {7743#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {7743#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:42,094 INFO L290 TraceCheckUtils]: 17: Hoare triple {7743#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7792#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:42,095 INFO L290 TraceCheckUtils]: 18: Hoare triple {7792#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {7792#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:42,095 INFO L272 TraceCheckUtils]: 19: Hoare triple {7792#(<= ~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)); {7792#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:42,095 INFO L290 TraceCheckUtils]: 20: Hoare triple {7792#(<= ~counter~0 1)} ~cond := #in~cond; {7792#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:42,096 INFO L290 TraceCheckUtils]: 21: Hoare triple {7792#(<= ~counter~0 1)} assume !(0 == ~cond); {7792#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:42,096 INFO L290 TraceCheckUtils]: 22: Hoare triple {7792#(<= ~counter~0 1)} assume true; {7792#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:42,097 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7792#(<= ~counter~0 1)} {7792#(<= ~counter~0 1)} #94#return; {7792#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:42,097 INFO L290 TraceCheckUtils]: 24: Hoare triple {7792#(<= ~counter~0 1)} assume !!(0 != ~r~0); {7792#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:42,097 INFO L290 TraceCheckUtils]: 25: Hoare triple {7792#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7817#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:42,098 INFO L290 TraceCheckUtils]: 26: Hoare triple {7817#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {7817#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:42,098 INFO L272 TraceCheckUtils]: 27: Hoare triple {7817#(<= ~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)); {7817#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:42,099 INFO L290 TraceCheckUtils]: 28: Hoare triple {7817#(<= ~counter~0 2)} ~cond := #in~cond; {7817#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:42,099 INFO L290 TraceCheckUtils]: 29: Hoare triple {7817#(<= ~counter~0 2)} assume !(0 == ~cond); {7817#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:42,099 INFO L290 TraceCheckUtils]: 30: Hoare triple {7817#(<= ~counter~0 2)} assume true; {7817#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:42,100 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7817#(<= ~counter~0 2)} {7817#(<= ~counter~0 2)} #96#return; {7817#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:42,100 INFO L290 TraceCheckUtils]: 32: Hoare triple {7817#(<= ~counter~0 2)} assume !(~r~0 > 0); {7817#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:42,100 INFO L290 TraceCheckUtils]: 33: Hoare triple {7817#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7842#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:42,101 INFO L290 TraceCheckUtils]: 34: Hoare triple {7842#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {7842#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:42,101 INFO L272 TraceCheckUtils]: 35: Hoare triple {7842#(<= ~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)); {7842#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:42,101 INFO L290 TraceCheckUtils]: 36: Hoare triple {7842#(<= ~counter~0 3)} ~cond := #in~cond; {7842#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:42,102 INFO L290 TraceCheckUtils]: 37: Hoare triple {7842#(<= ~counter~0 3)} assume !(0 == ~cond); {7842#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:42,102 INFO L290 TraceCheckUtils]: 38: Hoare triple {7842#(<= ~counter~0 3)} assume true; {7842#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:42,103 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {7842#(<= ~counter~0 3)} {7842#(<= ~counter~0 3)} #98#return; {7842#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:42,103 INFO L290 TraceCheckUtils]: 40: Hoare triple {7842#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {7842#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:42,103 INFO L290 TraceCheckUtils]: 41: Hoare triple {7842#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7867#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:42,104 INFO L290 TraceCheckUtils]: 42: Hoare triple {7867#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {7867#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:42,104 INFO L272 TraceCheckUtils]: 43: Hoare triple {7867#(<= ~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)); {7867#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:42,104 INFO L290 TraceCheckUtils]: 44: Hoare triple {7867#(<= ~counter~0 4)} ~cond := #in~cond; {7867#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:42,105 INFO L290 TraceCheckUtils]: 45: Hoare triple {7867#(<= ~counter~0 4)} assume !(0 == ~cond); {7867#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:42,105 INFO L290 TraceCheckUtils]: 46: Hoare triple {7867#(<= ~counter~0 4)} assume true; {7867#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:42,106 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7867#(<= ~counter~0 4)} {7867#(<= ~counter~0 4)} #98#return; {7867#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:42,106 INFO L290 TraceCheckUtils]: 48: Hoare triple {7867#(<= ~counter~0 4)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {7867#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:42,106 INFO L290 TraceCheckUtils]: 49: Hoare triple {7867#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7892#(<= |main_#t~post8| 4)} is VALID [2022-04-08 06:02:42,107 INFO L290 TraceCheckUtils]: 50: Hoare triple {7892#(<= |main_#t~post8| 4)} assume !(#t~post8 < 20);havoc #t~post8; {7736#false} is VALID [2022-04-08 06:02:42,107 INFO L290 TraceCheckUtils]: 51: Hoare triple {7736#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7736#false} is VALID [2022-04-08 06:02:42,107 INFO L290 TraceCheckUtils]: 52: Hoare triple {7736#false} assume !(#t~post6 < 20);havoc #t~post6; {7736#false} is VALID [2022-04-08 06:02:42,107 INFO L272 TraceCheckUtils]: 53: Hoare triple {7736#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)); {7736#false} is VALID [2022-04-08 06:02:42,107 INFO L290 TraceCheckUtils]: 54: Hoare triple {7736#false} ~cond := #in~cond; {7736#false} is VALID [2022-04-08 06:02:42,107 INFO L290 TraceCheckUtils]: 55: Hoare triple {7736#false} assume 0 == ~cond; {7736#false} is VALID [2022-04-08 06:02:42,107 INFO L290 TraceCheckUtils]: 56: Hoare triple {7736#false} assume !false; {7736#false} is VALID [2022-04-08 06:02:42,107 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 10 proven. 32 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:02:42,107 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:02:42,379 INFO L290 TraceCheckUtils]: 56: Hoare triple {7736#false} assume !false; {7736#false} is VALID [2022-04-08 06:02:42,379 INFO L290 TraceCheckUtils]: 55: Hoare triple {7736#false} assume 0 == ~cond; {7736#false} is VALID [2022-04-08 06:02:42,380 INFO L290 TraceCheckUtils]: 54: Hoare triple {7736#false} ~cond := #in~cond; {7736#false} is VALID [2022-04-08 06:02:42,380 INFO L272 TraceCheckUtils]: 53: Hoare triple {7736#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)); {7736#false} is VALID [2022-04-08 06:02:42,380 INFO L290 TraceCheckUtils]: 52: Hoare triple {7736#false} assume !(#t~post6 < 20);havoc #t~post6; {7736#false} is VALID [2022-04-08 06:02:42,380 INFO L290 TraceCheckUtils]: 51: Hoare triple {7736#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7736#false} is VALID [2022-04-08 06:02:42,380 INFO L290 TraceCheckUtils]: 50: Hoare triple {7932#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {7736#false} is VALID [2022-04-08 06:02:42,380 INFO L290 TraceCheckUtils]: 49: Hoare triple {7936#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7932#(< |main_#t~post8| 20)} is VALID [2022-04-08 06:02:42,381 INFO L290 TraceCheckUtils]: 48: Hoare triple {7936#(< ~counter~0 20)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {7936#(< ~counter~0 20)} is VALID [2022-04-08 06:02:42,381 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7735#true} {7936#(< ~counter~0 20)} #98#return; {7936#(< ~counter~0 20)} is VALID [2022-04-08 06:02:42,381 INFO L290 TraceCheckUtils]: 46: Hoare triple {7735#true} assume true; {7735#true} is VALID [2022-04-08 06:02:42,381 INFO L290 TraceCheckUtils]: 45: Hoare triple {7735#true} assume !(0 == ~cond); {7735#true} is VALID [2022-04-08 06:02:42,381 INFO L290 TraceCheckUtils]: 44: Hoare triple {7735#true} ~cond := #in~cond; {7735#true} is VALID [2022-04-08 06:02:42,382 INFO L272 TraceCheckUtils]: 43: Hoare triple {7936#(< ~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)); {7735#true} is VALID [2022-04-08 06:02:42,382 INFO L290 TraceCheckUtils]: 42: Hoare triple {7936#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {7936#(< ~counter~0 20)} is VALID [2022-04-08 06:02:42,382 INFO L290 TraceCheckUtils]: 41: Hoare triple {7961#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7936#(< ~counter~0 20)} is VALID [2022-04-08 06:02:42,383 INFO L290 TraceCheckUtils]: 40: Hoare triple {7961#(< ~counter~0 19)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {7961#(< ~counter~0 19)} is VALID [2022-04-08 06:02:42,383 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {7735#true} {7961#(< ~counter~0 19)} #98#return; {7961#(< ~counter~0 19)} is VALID [2022-04-08 06:02:42,383 INFO L290 TraceCheckUtils]: 38: Hoare triple {7735#true} assume true; {7735#true} is VALID [2022-04-08 06:02:42,383 INFO L290 TraceCheckUtils]: 37: Hoare triple {7735#true} assume !(0 == ~cond); {7735#true} is VALID [2022-04-08 06:02:42,383 INFO L290 TraceCheckUtils]: 36: Hoare triple {7735#true} ~cond := #in~cond; {7735#true} is VALID [2022-04-08 06:02:42,391 INFO L272 TraceCheckUtils]: 35: Hoare triple {7961#(< ~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)); {7735#true} is VALID [2022-04-08 06:02:42,399 INFO L290 TraceCheckUtils]: 34: Hoare triple {7961#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {7961#(< ~counter~0 19)} is VALID [2022-04-08 06:02:42,400 INFO L290 TraceCheckUtils]: 33: Hoare triple {7986#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7961#(< ~counter~0 19)} is VALID [2022-04-08 06:02:42,400 INFO L290 TraceCheckUtils]: 32: Hoare triple {7986#(< ~counter~0 18)} assume !(~r~0 > 0); {7986#(< ~counter~0 18)} is VALID [2022-04-08 06:02:42,401 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7735#true} {7986#(< ~counter~0 18)} #96#return; {7986#(< ~counter~0 18)} is VALID [2022-04-08 06:02:42,401 INFO L290 TraceCheckUtils]: 30: Hoare triple {7735#true} assume true; {7735#true} is VALID [2022-04-08 06:02:42,402 INFO L290 TraceCheckUtils]: 29: Hoare triple {7735#true} assume !(0 == ~cond); {7735#true} is VALID [2022-04-08 06:02:42,402 INFO L290 TraceCheckUtils]: 28: Hoare triple {7735#true} ~cond := #in~cond; {7735#true} is VALID [2022-04-08 06:02:42,403 INFO L272 TraceCheckUtils]: 27: Hoare triple {7986#(< ~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)); {7735#true} is VALID [2022-04-08 06:02:42,404 INFO L290 TraceCheckUtils]: 26: Hoare triple {7986#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {7986#(< ~counter~0 18)} is VALID [2022-04-08 06:02:42,408 INFO L290 TraceCheckUtils]: 25: Hoare triple {8011#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7986#(< ~counter~0 18)} is VALID [2022-04-08 06:02:42,408 INFO L290 TraceCheckUtils]: 24: Hoare triple {8011#(< ~counter~0 17)} assume !!(0 != ~r~0); {8011#(< ~counter~0 17)} is VALID [2022-04-08 06:02:42,409 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7735#true} {8011#(< ~counter~0 17)} #94#return; {8011#(< ~counter~0 17)} is VALID [2022-04-08 06:02:42,409 INFO L290 TraceCheckUtils]: 22: Hoare triple {7735#true} assume true; {7735#true} is VALID [2022-04-08 06:02:42,409 INFO L290 TraceCheckUtils]: 21: Hoare triple {7735#true} assume !(0 == ~cond); {7735#true} is VALID [2022-04-08 06:02:42,409 INFO L290 TraceCheckUtils]: 20: Hoare triple {7735#true} ~cond := #in~cond; {7735#true} is VALID [2022-04-08 06:02:42,409 INFO L272 TraceCheckUtils]: 19: Hoare triple {8011#(< ~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)); {7735#true} is VALID [2022-04-08 06:02:42,409 INFO L290 TraceCheckUtils]: 18: Hoare triple {8011#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {8011#(< ~counter~0 17)} is VALID [2022-04-08 06:02:42,410 INFO L290 TraceCheckUtils]: 17: Hoare triple {8036#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8011#(< ~counter~0 17)} is VALID [2022-04-08 06:02:42,410 INFO L290 TraceCheckUtils]: 16: Hoare triple {8036#(< ~counter~0 16)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {8036#(< ~counter~0 16)} is VALID [2022-04-08 06:02:42,411 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7735#true} {8036#(< ~counter~0 16)} #92#return; {8036#(< ~counter~0 16)} is VALID [2022-04-08 06:02:42,411 INFO L290 TraceCheckUtils]: 14: Hoare triple {7735#true} assume true; {7735#true} is VALID [2022-04-08 06:02:42,411 INFO L290 TraceCheckUtils]: 13: Hoare triple {7735#true} assume !(0 == ~cond); {7735#true} is VALID [2022-04-08 06:02:42,411 INFO L290 TraceCheckUtils]: 12: Hoare triple {7735#true} ~cond := #in~cond; {7735#true} is VALID [2022-04-08 06:02:42,411 INFO L272 TraceCheckUtils]: 11: Hoare triple {8036#(< ~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)); {7735#true} is VALID [2022-04-08 06:02:42,411 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7735#true} {8036#(< ~counter~0 16)} #90#return; {8036#(< ~counter~0 16)} is VALID [2022-04-08 06:02:42,411 INFO L290 TraceCheckUtils]: 9: Hoare triple {7735#true} assume true; {7735#true} is VALID [2022-04-08 06:02:42,412 INFO L290 TraceCheckUtils]: 8: Hoare triple {7735#true} assume !(0 == ~cond); {7735#true} is VALID [2022-04-08 06:02:42,412 INFO L290 TraceCheckUtils]: 7: Hoare triple {7735#true} ~cond := #in~cond; {7735#true} is VALID [2022-04-08 06:02:42,412 INFO L272 TraceCheckUtils]: 6: Hoare triple {8036#(< ~counter~0 16)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {7735#true} is VALID [2022-04-08 06:02:42,412 INFO L290 TraceCheckUtils]: 5: Hoare triple {8036#(< ~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; {8036#(< ~counter~0 16)} is VALID [2022-04-08 06:02:42,412 INFO L272 TraceCheckUtils]: 4: Hoare triple {8036#(< ~counter~0 16)} call #t~ret9 := main(); {8036#(< ~counter~0 16)} is VALID [2022-04-08 06:02:42,413 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8036#(< ~counter~0 16)} {7735#true} #102#return; {8036#(< ~counter~0 16)} is VALID [2022-04-08 06:02:42,413 INFO L290 TraceCheckUtils]: 2: Hoare triple {8036#(< ~counter~0 16)} assume true; {8036#(< ~counter~0 16)} is VALID [2022-04-08 06:02:42,413 INFO L290 TraceCheckUtils]: 1: Hoare triple {7735#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {8036#(< ~counter~0 16)} is VALID [2022-04-08 06:02:42,413 INFO L272 TraceCheckUtils]: 0: Hoare triple {7735#true} call ULTIMATE.init(); {7735#true} is VALID [2022-04-08 06:02:42,414 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 10 proven. 8 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 06:02:42,414 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:02:42,414 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [141303829] [2022-04-08 06:02:42,414 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:02:42,414 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1644848063] [2022-04-08 06:02:42,414 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1644848063] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:02:42,414 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:02:42,414 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-08 06:02:42,414 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:02:42,414 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1114669918] [2022-04-08 06:02:42,415 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1114669918] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:02:42,415 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:02:42,415 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 06:02:42,415 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1419143940] [2022-04-08 06:02:42,415 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:02:42,415 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 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 57 [2022-04-08 06:02:42,415 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:02:42,416 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 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:02:42,458 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:42,458 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 06:02:42,458 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:42,459 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 06:02:42,459 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 06:02:42,459 INFO L87 Difference]: Start difference. First operand 125 states and 161 transitions. Second operand has 8 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 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:02:42,783 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:42,783 INFO L93 Difference]: Finished difference Result 196 states and 263 transitions. [2022-04-08 06:02:42,783 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 06:02:42,783 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 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 57 [2022-04-08 06:02:42,783 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:02:42,783 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 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:02:42,786 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 117 transitions. [2022-04-08 06:02:42,786 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 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:02:42,787 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 117 transitions. [2022-04-08 06:02:42,787 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 117 transitions. [2022-04-08 06:02:42,860 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:42,862 INFO L225 Difference]: With dead ends: 196 [2022-04-08 06:02:42,862 INFO L226 Difference]: Without dead ends: 131 [2022-04-08 06:02:42,863 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 115 GetRequests, 101 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=147, Unknown=0, NotChecked=0, Total=240 [2022-04-08 06:02:42,863 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 31 mSDsluCounter, 119 mSDsCounter, 0 mSdLazyCounter, 49 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 161 SdHoareTripleChecker+Invalid, 74 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 49 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:02:42,863 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 161 Invalid, 74 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 49 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:02:42,864 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2022-04-08 06:02:42,958 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 130. [2022-04-08 06:02:42,958 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:02:42,958 INFO L82 GeneralOperation]: Start isEquivalent. First operand 131 states. Second operand has 130 states, 96 states have (on average 1.2395833333333333) internal successors, (119), 96 states have internal predecessors, (119), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:02:42,959 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand has 130 states, 96 states have (on average 1.2395833333333333) internal successors, (119), 96 states have internal predecessors, (119), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:02:42,959 INFO L87 Difference]: Start difference. First operand 131 states. Second operand has 130 states, 96 states have (on average 1.2395833333333333) internal successors, (119), 96 states have internal predecessors, (119), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:02:42,965 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:42,965 INFO L93 Difference]: Finished difference Result 131 states and 168 transitions. [2022-04-08 06:02:42,966 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 168 transitions. [2022-04-08 06:02:42,967 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:42,967 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:42,968 INFO L74 IsIncluded]: Start isIncluded. First operand has 130 states, 96 states have (on average 1.2395833333333333) internal successors, (119), 96 states have internal predecessors, (119), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 131 states. [2022-04-08 06:02:42,968 INFO L87 Difference]: Start difference. First operand has 130 states, 96 states have (on average 1.2395833333333333) internal successors, (119), 96 states have internal predecessors, (119), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 131 states. [2022-04-08 06:02:42,971 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:42,971 INFO L93 Difference]: Finished difference Result 131 states and 168 transitions. [2022-04-08 06:02:42,971 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 168 transitions. [2022-04-08 06:02:42,971 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:42,971 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:42,971 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:02:42,971 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:02:42,972 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 130 states, 96 states have (on average 1.2395833333333333) internal successors, (119), 96 states have internal predecessors, (119), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:02:42,975 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 167 transitions. [2022-04-08 06:02:42,975 INFO L78 Accepts]: Start accepts. Automaton has 130 states and 167 transitions. Word has length 57 [2022-04-08 06:02:42,975 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:02:42,975 INFO L478 AbstractCegarLoop]: Abstraction has 130 states and 167 transitions. [2022-04-08 06:02:42,975 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 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:02:42,975 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 130 states and 167 transitions. [2022-04-08 06:02:51,718 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 167 edges. 164 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:51,718 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 167 transitions. [2022-04-08 06:02:51,719 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-04-08 06:02:51,719 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:02:51,719 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:02:51,736 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-08 06:02:51,923 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:02:51,923 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:02:51,924 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:02:51,924 INFO L85 PathProgramCache]: Analyzing trace with hash -659642693, now seen corresponding path program 5 times [2022-04-08 06:02:51,924 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:51,924 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [200389187] [2022-04-08 06:02:51,924 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:02:51,924 INFO L85 PathProgramCache]: Analyzing trace with hash -659642693, now seen corresponding path program 6 times [2022-04-08 06:02:51,924 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:02:51,924 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [154414649] [2022-04-08 06:02:51,924 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:02:51,925 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:02:51,934 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:02:51,934 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1201990189] [2022-04-08 06:02:51,934 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:02:51,934 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:02:51,934 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:02:51,935 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:02:51,936 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:02:52,013 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 06:02:52,013 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:02:52,014 INFO L263 TraceCheckSpWp]: Trace formula consists of 175 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 06:02:52,025 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:02:52,026 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:02:52,264 INFO L272 TraceCheckUtils]: 0: Hoare triple {9008#true} call ULTIMATE.init(); {9008#true} is VALID [2022-04-08 06:02:52,264 INFO L290 TraceCheckUtils]: 1: Hoare triple {9008#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,265 INFO L290 TraceCheckUtils]: 2: Hoare triple {9016#(<= ~counter~0 0)} assume true; {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,265 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9016#(<= ~counter~0 0)} {9008#true} #102#return; {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,266 INFO L272 TraceCheckUtils]: 4: Hoare triple {9016#(<= ~counter~0 0)} call #t~ret9 := main(); {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,266 INFO L290 TraceCheckUtils]: 5: Hoare triple {9016#(<= ~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; {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,267 INFO L272 TraceCheckUtils]: 6: Hoare triple {9016#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,267 INFO L290 TraceCheckUtils]: 7: Hoare triple {9016#(<= ~counter~0 0)} ~cond := #in~cond; {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,267 INFO L290 TraceCheckUtils]: 8: Hoare triple {9016#(<= ~counter~0 0)} assume !(0 == ~cond); {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,267 INFO L290 TraceCheckUtils]: 9: Hoare triple {9016#(<= ~counter~0 0)} assume true; {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,268 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9016#(<= ~counter~0 0)} {9016#(<= ~counter~0 0)} #90#return; {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,268 INFO L272 TraceCheckUtils]: 11: Hoare triple {9016#(<= ~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)); {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,269 INFO L290 TraceCheckUtils]: 12: Hoare triple {9016#(<= ~counter~0 0)} ~cond := #in~cond; {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,269 INFO L290 TraceCheckUtils]: 13: Hoare triple {9016#(<= ~counter~0 0)} assume !(0 == ~cond); {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,269 INFO L290 TraceCheckUtils]: 14: Hoare triple {9016#(<= ~counter~0 0)} assume true; {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,269 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {9016#(<= ~counter~0 0)} {9016#(<= ~counter~0 0)} #92#return; {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,270 INFO L290 TraceCheckUtils]: 16: Hoare triple {9016#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {9016#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:52,270 INFO L290 TraceCheckUtils]: 17: Hoare triple {9016#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9065#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:52,271 INFO L290 TraceCheckUtils]: 18: Hoare triple {9065#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {9065#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:52,271 INFO L272 TraceCheckUtils]: 19: Hoare triple {9065#(<= ~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)); {9065#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:52,271 INFO L290 TraceCheckUtils]: 20: Hoare triple {9065#(<= ~counter~0 1)} ~cond := #in~cond; {9065#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:52,272 INFO L290 TraceCheckUtils]: 21: Hoare triple {9065#(<= ~counter~0 1)} assume !(0 == ~cond); {9065#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:52,272 INFO L290 TraceCheckUtils]: 22: Hoare triple {9065#(<= ~counter~0 1)} assume true; {9065#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:52,272 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {9065#(<= ~counter~0 1)} {9065#(<= ~counter~0 1)} #94#return; {9065#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:52,273 INFO L290 TraceCheckUtils]: 24: Hoare triple {9065#(<= ~counter~0 1)} assume !!(0 != ~r~0); {9065#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:52,273 INFO L290 TraceCheckUtils]: 25: Hoare triple {9065#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9090#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:52,273 INFO L290 TraceCheckUtils]: 26: Hoare triple {9090#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {9090#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:52,274 INFO L272 TraceCheckUtils]: 27: Hoare triple {9090#(<= ~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)); {9090#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:52,274 INFO L290 TraceCheckUtils]: 28: Hoare triple {9090#(<= ~counter~0 2)} ~cond := #in~cond; {9090#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:52,274 INFO L290 TraceCheckUtils]: 29: Hoare triple {9090#(<= ~counter~0 2)} assume !(0 == ~cond); {9090#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:52,275 INFO L290 TraceCheckUtils]: 30: Hoare triple {9090#(<= ~counter~0 2)} assume true; {9090#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:52,275 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {9090#(<= ~counter~0 2)} {9090#(<= ~counter~0 2)} #96#return; {9090#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:52,275 INFO L290 TraceCheckUtils]: 32: Hoare triple {9090#(<= ~counter~0 2)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9090#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:52,276 INFO L290 TraceCheckUtils]: 33: Hoare triple {9090#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9115#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:52,276 INFO L290 TraceCheckUtils]: 34: Hoare triple {9115#(<= ~counter~0 3)} assume !!(#t~post7 < 20);havoc #t~post7; {9115#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:52,277 INFO L272 TraceCheckUtils]: 35: Hoare triple {9115#(<= ~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)); {9115#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:52,277 INFO L290 TraceCheckUtils]: 36: Hoare triple {9115#(<= ~counter~0 3)} ~cond := #in~cond; {9115#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:52,277 INFO L290 TraceCheckUtils]: 37: Hoare triple {9115#(<= ~counter~0 3)} assume !(0 == ~cond); {9115#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:52,277 INFO L290 TraceCheckUtils]: 38: Hoare triple {9115#(<= ~counter~0 3)} assume true; {9115#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:52,278 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {9115#(<= ~counter~0 3)} {9115#(<= ~counter~0 3)} #96#return; {9115#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:52,278 INFO L290 TraceCheckUtils]: 40: Hoare triple {9115#(<= ~counter~0 3)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9115#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:52,279 INFO L290 TraceCheckUtils]: 41: Hoare triple {9115#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9140#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:52,279 INFO L290 TraceCheckUtils]: 42: Hoare triple {9140#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {9140#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:52,280 INFO L272 TraceCheckUtils]: 43: Hoare triple {9140#(<= ~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)); {9140#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:52,280 INFO L290 TraceCheckUtils]: 44: Hoare triple {9140#(<= ~counter~0 4)} ~cond := #in~cond; {9140#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:52,280 INFO L290 TraceCheckUtils]: 45: Hoare triple {9140#(<= ~counter~0 4)} assume !(0 == ~cond); {9140#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:52,281 INFO L290 TraceCheckUtils]: 46: Hoare triple {9140#(<= ~counter~0 4)} assume true; {9140#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:52,281 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {9140#(<= ~counter~0 4)} {9140#(<= ~counter~0 4)} #96#return; {9140#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:52,282 INFO L290 TraceCheckUtils]: 48: Hoare triple {9140#(<= ~counter~0 4)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9140#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:52,282 INFO L290 TraceCheckUtils]: 49: Hoare triple {9140#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9165#(<= |main_#t~post7| 4)} is VALID [2022-04-08 06:02:52,283 INFO L290 TraceCheckUtils]: 50: Hoare triple {9165#(<= |main_#t~post7| 4)} assume !(#t~post7 < 20);havoc #t~post7; {9009#false} is VALID [2022-04-08 06:02:52,283 INFO L290 TraceCheckUtils]: 51: Hoare triple {9009#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {9009#false} is VALID [2022-04-08 06:02:52,283 INFO L290 TraceCheckUtils]: 52: Hoare triple {9009#false} assume !(#t~post8 < 20);havoc #t~post8; {9009#false} is VALID [2022-04-08 06:02:52,283 INFO L290 TraceCheckUtils]: 53: Hoare triple {9009#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9009#false} is VALID [2022-04-08 06:02:52,283 INFO L290 TraceCheckUtils]: 54: Hoare triple {9009#false} assume !(#t~post6 < 20);havoc #t~post6; {9009#false} is VALID [2022-04-08 06:02:52,283 INFO L272 TraceCheckUtils]: 55: Hoare triple {9009#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)); {9009#false} is VALID [2022-04-08 06:02:52,283 INFO L290 TraceCheckUtils]: 56: Hoare triple {9009#false} ~cond := #in~cond; {9009#false} is VALID [2022-04-08 06:02:52,283 INFO L290 TraceCheckUtils]: 57: Hoare triple {9009#false} assume 0 == ~cond; {9009#false} is VALID [2022-04-08 06:02:52,283 INFO L290 TraceCheckUtils]: 58: Hoare triple {9009#false} assume !false; {9009#false} is VALID [2022-04-08 06:02:52,283 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 10 proven. 42 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:02:52,284 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:02:52,556 INFO L290 TraceCheckUtils]: 58: Hoare triple {9009#false} assume !false; {9009#false} is VALID [2022-04-08 06:02:52,556 INFO L290 TraceCheckUtils]: 57: Hoare triple {9009#false} assume 0 == ~cond; {9009#false} is VALID [2022-04-08 06:02:52,556 INFO L290 TraceCheckUtils]: 56: Hoare triple {9009#false} ~cond := #in~cond; {9009#false} is VALID [2022-04-08 06:02:52,557 INFO L272 TraceCheckUtils]: 55: Hoare triple {9009#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)); {9009#false} is VALID [2022-04-08 06:02:52,557 INFO L290 TraceCheckUtils]: 54: Hoare triple {9009#false} assume !(#t~post6 < 20);havoc #t~post6; {9009#false} is VALID [2022-04-08 06:02:52,557 INFO L290 TraceCheckUtils]: 53: Hoare triple {9009#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9009#false} is VALID [2022-04-08 06:02:52,557 INFO L290 TraceCheckUtils]: 52: Hoare triple {9009#false} assume !(#t~post8 < 20);havoc #t~post8; {9009#false} is VALID [2022-04-08 06:02:52,557 INFO L290 TraceCheckUtils]: 51: Hoare triple {9009#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {9009#false} is VALID [2022-04-08 06:02:52,557 INFO L290 TraceCheckUtils]: 50: Hoare triple {9217#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {9009#false} is VALID [2022-04-08 06:02:52,557 INFO L290 TraceCheckUtils]: 49: Hoare triple {9221#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9217#(< |main_#t~post7| 20)} is VALID [2022-04-08 06:02:52,558 INFO L290 TraceCheckUtils]: 48: Hoare triple {9221#(< ~counter~0 20)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9221#(< ~counter~0 20)} is VALID [2022-04-08 06:02:52,558 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {9008#true} {9221#(< ~counter~0 20)} #96#return; {9221#(< ~counter~0 20)} is VALID [2022-04-08 06:02:52,558 INFO L290 TraceCheckUtils]: 46: Hoare triple {9008#true} assume true; {9008#true} is VALID [2022-04-08 06:02:52,558 INFO L290 TraceCheckUtils]: 45: Hoare triple {9008#true} assume !(0 == ~cond); {9008#true} is VALID [2022-04-08 06:02:52,559 INFO L290 TraceCheckUtils]: 44: Hoare triple {9008#true} ~cond := #in~cond; {9008#true} is VALID [2022-04-08 06:02:52,559 INFO L272 TraceCheckUtils]: 43: Hoare triple {9221#(< ~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)); {9008#true} is VALID [2022-04-08 06:02:52,559 INFO L290 TraceCheckUtils]: 42: Hoare triple {9221#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {9221#(< ~counter~0 20)} is VALID [2022-04-08 06:02:52,559 INFO L290 TraceCheckUtils]: 41: Hoare triple {9246#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9221#(< ~counter~0 20)} is VALID [2022-04-08 06:02:52,560 INFO L290 TraceCheckUtils]: 40: Hoare triple {9246#(< ~counter~0 19)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9246#(< ~counter~0 19)} is VALID [2022-04-08 06:02:52,560 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {9008#true} {9246#(< ~counter~0 19)} #96#return; {9246#(< ~counter~0 19)} is VALID [2022-04-08 06:02:52,560 INFO L290 TraceCheckUtils]: 38: Hoare triple {9008#true} assume true; {9008#true} is VALID [2022-04-08 06:02:52,560 INFO L290 TraceCheckUtils]: 37: Hoare triple {9008#true} assume !(0 == ~cond); {9008#true} is VALID [2022-04-08 06:02:52,560 INFO L290 TraceCheckUtils]: 36: Hoare triple {9008#true} ~cond := #in~cond; {9008#true} is VALID [2022-04-08 06:02:52,560 INFO L272 TraceCheckUtils]: 35: Hoare triple {9246#(< ~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)); {9008#true} is VALID [2022-04-08 06:02:52,561 INFO L290 TraceCheckUtils]: 34: Hoare triple {9246#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {9246#(< ~counter~0 19)} is VALID [2022-04-08 06:02:52,561 INFO L290 TraceCheckUtils]: 33: Hoare triple {9271#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9246#(< ~counter~0 19)} is VALID [2022-04-08 06:02:52,561 INFO L290 TraceCheckUtils]: 32: Hoare triple {9271#(< ~counter~0 18)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9271#(< ~counter~0 18)} is VALID [2022-04-08 06:02:52,562 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {9008#true} {9271#(< ~counter~0 18)} #96#return; {9271#(< ~counter~0 18)} is VALID [2022-04-08 06:02:52,562 INFO L290 TraceCheckUtils]: 30: Hoare triple {9008#true} assume true; {9008#true} is VALID [2022-04-08 06:02:52,562 INFO L290 TraceCheckUtils]: 29: Hoare triple {9008#true} assume !(0 == ~cond); {9008#true} is VALID [2022-04-08 06:02:52,562 INFO L290 TraceCheckUtils]: 28: Hoare triple {9008#true} ~cond := #in~cond; {9008#true} is VALID [2022-04-08 06:02:52,562 INFO L272 TraceCheckUtils]: 27: Hoare triple {9271#(< ~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)); {9008#true} is VALID [2022-04-08 06:02:52,563 INFO L290 TraceCheckUtils]: 26: Hoare triple {9271#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {9271#(< ~counter~0 18)} is VALID [2022-04-08 06:02:52,563 INFO L290 TraceCheckUtils]: 25: Hoare triple {9296#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9271#(< ~counter~0 18)} is VALID [2022-04-08 06:02:52,563 INFO L290 TraceCheckUtils]: 24: Hoare triple {9296#(< ~counter~0 17)} assume !!(0 != ~r~0); {9296#(< ~counter~0 17)} is VALID [2022-04-08 06:02:52,564 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {9008#true} {9296#(< ~counter~0 17)} #94#return; {9296#(< ~counter~0 17)} is VALID [2022-04-08 06:02:52,564 INFO L290 TraceCheckUtils]: 22: Hoare triple {9008#true} assume true; {9008#true} is VALID [2022-04-08 06:02:52,564 INFO L290 TraceCheckUtils]: 21: Hoare triple {9008#true} assume !(0 == ~cond); {9008#true} is VALID [2022-04-08 06:02:52,564 INFO L290 TraceCheckUtils]: 20: Hoare triple {9008#true} ~cond := #in~cond; {9008#true} is VALID [2022-04-08 06:02:52,564 INFO L272 TraceCheckUtils]: 19: Hoare triple {9296#(< ~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)); {9008#true} is VALID [2022-04-08 06:02:52,564 INFO L290 TraceCheckUtils]: 18: Hoare triple {9296#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {9296#(< ~counter~0 17)} is VALID [2022-04-08 06:02:52,565 INFO L290 TraceCheckUtils]: 17: Hoare triple {9321#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9296#(< ~counter~0 17)} is VALID [2022-04-08 06:02:52,565 INFO L290 TraceCheckUtils]: 16: Hoare triple {9321#(< ~counter~0 16)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {9321#(< ~counter~0 16)} is VALID [2022-04-08 06:02:52,565 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {9008#true} {9321#(< ~counter~0 16)} #92#return; {9321#(< ~counter~0 16)} is VALID [2022-04-08 06:02:52,565 INFO L290 TraceCheckUtils]: 14: Hoare triple {9008#true} assume true; {9008#true} is VALID [2022-04-08 06:02:52,566 INFO L290 TraceCheckUtils]: 13: Hoare triple {9008#true} assume !(0 == ~cond); {9008#true} is VALID [2022-04-08 06:02:52,566 INFO L290 TraceCheckUtils]: 12: Hoare triple {9008#true} ~cond := #in~cond; {9008#true} is VALID [2022-04-08 06:02:52,566 INFO L272 TraceCheckUtils]: 11: Hoare triple {9321#(< ~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)); {9008#true} is VALID [2022-04-08 06:02:52,566 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9008#true} {9321#(< ~counter~0 16)} #90#return; {9321#(< ~counter~0 16)} is VALID [2022-04-08 06:02:52,566 INFO L290 TraceCheckUtils]: 9: Hoare triple {9008#true} assume true; {9008#true} is VALID [2022-04-08 06:02:52,566 INFO L290 TraceCheckUtils]: 8: Hoare triple {9008#true} assume !(0 == ~cond); {9008#true} is VALID [2022-04-08 06:02:52,566 INFO L290 TraceCheckUtils]: 7: Hoare triple {9008#true} ~cond := #in~cond; {9008#true} is VALID [2022-04-08 06:02:52,566 INFO L272 TraceCheckUtils]: 6: Hoare triple {9321#(< ~counter~0 16)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {9008#true} is VALID [2022-04-08 06:02:52,567 INFO L290 TraceCheckUtils]: 5: Hoare triple {9321#(< ~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; {9321#(< ~counter~0 16)} is VALID [2022-04-08 06:02:52,567 INFO L272 TraceCheckUtils]: 4: Hoare triple {9321#(< ~counter~0 16)} call #t~ret9 := main(); {9321#(< ~counter~0 16)} is VALID [2022-04-08 06:02:52,567 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9321#(< ~counter~0 16)} {9008#true} #102#return; {9321#(< ~counter~0 16)} is VALID [2022-04-08 06:02:52,568 INFO L290 TraceCheckUtils]: 2: Hoare triple {9321#(< ~counter~0 16)} assume true; {9321#(< ~counter~0 16)} is VALID [2022-04-08 06:02:52,568 INFO L290 TraceCheckUtils]: 1: Hoare triple {9008#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {9321#(< ~counter~0 16)} is VALID [2022-04-08 06:02:52,568 INFO L272 TraceCheckUtils]: 0: Hoare triple {9008#true} call ULTIMATE.init(); {9008#true} is VALID [2022-04-08 06:02:52,568 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 10 proven. 18 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 06:02:52,568 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:02:52,569 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [154414649] [2022-04-08 06:02:52,569 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:02:52,569 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1201990189] [2022-04-08 06:02:52,569 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1201990189] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:02:52,569 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:02:52,569 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-08 06:02:52,569 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:02:52,569 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [200389187] [2022-04-08 06:02:52,569 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [200389187] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:02:52,569 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:02:52,569 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 06:02:52,569 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [494539620] [2022-04-08 06:02:52,570 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:02:52,570 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:02:52,570 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:02:52,570 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:02:52,608 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:02:52,608 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 06:02:52,608 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:52,608 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 06:02:52,608 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 06:02:52,609 INFO L87 Difference]: Start difference. First operand 130 states and 167 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:02:52,902 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:52,902 INFO L93 Difference]: Finished difference Result 169 states and 222 transitions. [2022-04-08 06:02:52,902 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 06:02:52,902 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:02:52,902 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:02:52,902 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:02:52,905 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 117 transitions. [2022-04-08 06:02:52,905 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:02:52,906 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 117 transitions. [2022-04-08 06:02:52,907 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 117 transitions. [2022-04-08 06:02:52,990 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:52,992 INFO L225 Difference]: With dead ends: 169 [2022-04-08 06:02:52,992 INFO L226 Difference]: Without dead ends: 132 [2022-04-08 06:02:52,993 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 120 GetRequests, 105 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=107, Invalid=165, Unknown=0, NotChecked=0, Total=272 [2022-04-08 06:02:52,993 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 29 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 147 SdHoareTripleChecker+Invalid, 62 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:02:52,993 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 147 Invalid, 62 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:02:52,994 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2022-04-08 06:02:53,104 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 132. [2022-04-08 06:02:53,104 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:02:53,104 INFO L82 GeneralOperation]: Start isEquivalent. First operand 132 states. Second operand has 132 states, 98 states have (on average 1.2346938775510203) internal successors, (121), 98 states have internal predecessors, (121), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:02:53,105 INFO L74 IsIncluded]: Start isIncluded. First operand 132 states. Second operand has 132 states, 98 states have (on average 1.2346938775510203) internal successors, (121), 98 states have internal predecessors, (121), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:02:53,105 INFO L87 Difference]: Start difference. First operand 132 states. Second operand has 132 states, 98 states have (on average 1.2346938775510203) internal successors, (121), 98 states have internal predecessors, (121), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:02:53,107 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:53,107 INFO L93 Difference]: Finished difference Result 132 states and 169 transitions. [2022-04-08 06:02:53,107 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 169 transitions. [2022-04-08 06:02:53,108 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:53,108 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:53,108 INFO L74 IsIncluded]: Start isIncluded. First operand has 132 states, 98 states have (on average 1.2346938775510203) internal successors, (121), 98 states have internal predecessors, (121), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 132 states. [2022-04-08 06:02:53,109 INFO L87 Difference]: Start difference. First operand has 132 states, 98 states have (on average 1.2346938775510203) internal successors, (121), 98 states have internal predecessors, (121), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 132 states. [2022-04-08 06:02:53,111 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:53,111 INFO L93 Difference]: Finished difference Result 132 states and 169 transitions. [2022-04-08 06:02:53,111 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 169 transitions. [2022-04-08 06:02:53,112 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:53,112 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:53,112 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:02:53,112 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:02:53,112 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 132 states, 98 states have (on average 1.2346938775510203) internal successors, (121), 98 states have internal predecessors, (121), 25 states have call successors, (25), 10 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 06:02:53,114 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 132 states to 132 states and 169 transitions. [2022-04-08 06:02:53,115 INFO L78 Accepts]: Start accepts. Automaton has 132 states and 169 transitions. Word has length 59 [2022-04-08 06:02:53,115 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:02:53,115 INFO L478 AbstractCegarLoop]: Abstraction has 132 states and 169 transitions. [2022-04-08 06:02:53,115 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:02:53,116 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 132 states and 169 transitions. [2022-04-08 06:02:59,087 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 169 edges. 168 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:59,087 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 169 transitions. [2022-04-08 06:02:59,088 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-08 06:02:59,088 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:02:59,088 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:02:59,094 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-08 06:02:59,292 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:02:59,292 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:02:59,292 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:02:59,292 INFO L85 PathProgramCache]: Analyzing trace with hash -1402694082, now seen corresponding path program 3 times [2022-04-08 06:02:59,292 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:59,293 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1725076564] [2022-04-08 06:02:59,293 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:02:59,293 INFO L85 PathProgramCache]: Analyzing trace with hash -1402694082, now seen corresponding path program 4 times [2022-04-08 06:02:59,293 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:02:59,293 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [63301438] [2022-04-08 06:02:59,293 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:02:59,293 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:02:59,302 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:02:59,303 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1340116771] [2022-04-08 06:02:59,303 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:02:59,303 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:02:59,303 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:02:59,304 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:02:59,305 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:02:59,357 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:02:59,358 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:02:59,358 INFO L263 TraceCheckSpWp]: Trace formula consists of 176 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 06:02:59,372 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:02:59,373 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:02:59,651 INFO L272 TraceCheckUtils]: 0: Hoare triple {10247#true} call ULTIMATE.init(); {10247#true} is VALID [2022-04-08 06:02:59,652 INFO L290 TraceCheckUtils]: 1: Hoare triple {10247#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,652 INFO L290 TraceCheckUtils]: 2: Hoare triple {10255#(<= ~counter~0 0)} assume true; {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,653 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10255#(<= ~counter~0 0)} {10247#true} #102#return; {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,653 INFO L272 TraceCheckUtils]: 4: Hoare triple {10255#(<= ~counter~0 0)} call #t~ret9 := main(); {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,653 INFO L290 TraceCheckUtils]: 5: Hoare triple {10255#(<= ~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; {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,654 INFO L272 TraceCheckUtils]: 6: Hoare triple {10255#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,654 INFO L290 TraceCheckUtils]: 7: Hoare triple {10255#(<= ~counter~0 0)} ~cond := #in~cond; {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,654 INFO L290 TraceCheckUtils]: 8: Hoare triple {10255#(<= ~counter~0 0)} assume !(0 == ~cond); {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,654 INFO L290 TraceCheckUtils]: 9: Hoare triple {10255#(<= ~counter~0 0)} assume true; {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,655 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10255#(<= ~counter~0 0)} {10255#(<= ~counter~0 0)} #90#return; {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,655 INFO L272 TraceCheckUtils]: 11: Hoare triple {10255#(<= ~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)); {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,655 INFO L290 TraceCheckUtils]: 12: Hoare triple {10255#(<= ~counter~0 0)} ~cond := #in~cond; {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,656 INFO L290 TraceCheckUtils]: 13: Hoare triple {10255#(<= ~counter~0 0)} assume !(0 == ~cond); {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,656 INFO L290 TraceCheckUtils]: 14: Hoare triple {10255#(<= ~counter~0 0)} assume true; {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,656 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10255#(<= ~counter~0 0)} {10255#(<= ~counter~0 0)} #92#return; {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,657 INFO L290 TraceCheckUtils]: 16: Hoare triple {10255#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {10255#(<= ~counter~0 0)} is VALID [2022-04-08 06:02:59,657 INFO L290 TraceCheckUtils]: 17: Hoare triple {10255#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10304#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:59,657 INFO L290 TraceCheckUtils]: 18: Hoare triple {10304#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {10304#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:59,658 INFO L272 TraceCheckUtils]: 19: Hoare triple {10304#(<= ~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)); {10304#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:59,658 INFO L290 TraceCheckUtils]: 20: Hoare triple {10304#(<= ~counter~0 1)} ~cond := #in~cond; {10304#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:59,658 INFO L290 TraceCheckUtils]: 21: Hoare triple {10304#(<= ~counter~0 1)} assume !(0 == ~cond); {10304#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:59,659 INFO L290 TraceCheckUtils]: 22: Hoare triple {10304#(<= ~counter~0 1)} assume true; {10304#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:59,659 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10304#(<= ~counter~0 1)} {10304#(<= ~counter~0 1)} #94#return; {10304#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:59,659 INFO L290 TraceCheckUtils]: 24: Hoare triple {10304#(<= ~counter~0 1)} assume !!(0 != ~r~0); {10304#(<= ~counter~0 1)} is VALID [2022-04-08 06:02:59,660 INFO L290 TraceCheckUtils]: 25: Hoare triple {10304#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10329#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:59,660 INFO L290 TraceCheckUtils]: 26: Hoare triple {10329#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {10329#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:59,661 INFO L272 TraceCheckUtils]: 27: Hoare triple {10329#(<= ~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)); {10329#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:59,661 INFO L290 TraceCheckUtils]: 28: Hoare triple {10329#(<= ~counter~0 2)} ~cond := #in~cond; {10329#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:59,661 INFO L290 TraceCheckUtils]: 29: Hoare triple {10329#(<= ~counter~0 2)} assume !(0 == ~cond); {10329#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:59,661 INFO L290 TraceCheckUtils]: 30: Hoare triple {10329#(<= ~counter~0 2)} assume true; {10329#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:59,662 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {10329#(<= ~counter~0 2)} {10329#(<= ~counter~0 2)} #96#return; {10329#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:59,662 INFO L290 TraceCheckUtils]: 32: Hoare triple {10329#(<= ~counter~0 2)} assume !(~r~0 > 0); {10329#(<= ~counter~0 2)} is VALID [2022-04-08 06:02:59,663 INFO L290 TraceCheckUtils]: 33: Hoare triple {10329#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10354#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:59,663 INFO L290 TraceCheckUtils]: 34: Hoare triple {10354#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {10354#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:59,663 INFO L272 TraceCheckUtils]: 35: Hoare triple {10354#(<= ~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)); {10354#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:59,664 INFO L290 TraceCheckUtils]: 36: Hoare triple {10354#(<= ~counter~0 3)} ~cond := #in~cond; {10354#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:59,664 INFO L290 TraceCheckUtils]: 37: Hoare triple {10354#(<= ~counter~0 3)} assume !(0 == ~cond); {10354#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:59,664 INFO L290 TraceCheckUtils]: 38: Hoare triple {10354#(<= ~counter~0 3)} assume true; {10354#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:59,665 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {10354#(<= ~counter~0 3)} {10354#(<= ~counter~0 3)} #98#return; {10354#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:59,665 INFO L290 TraceCheckUtils]: 40: Hoare triple {10354#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {10354#(<= ~counter~0 3)} is VALID [2022-04-08 06:02:59,665 INFO L290 TraceCheckUtils]: 41: Hoare triple {10354#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10379#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:59,666 INFO L290 TraceCheckUtils]: 42: Hoare triple {10379#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {10379#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:59,666 INFO L272 TraceCheckUtils]: 43: Hoare triple {10379#(<= ~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)); {10379#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:59,666 INFO L290 TraceCheckUtils]: 44: Hoare triple {10379#(<= ~counter~0 4)} ~cond := #in~cond; {10379#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:59,667 INFO L290 TraceCheckUtils]: 45: Hoare triple {10379#(<= ~counter~0 4)} assume !(0 == ~cond); {10379#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:59,667 INFO L290 TraceCheckUtils]: 46: Hoare triple {10379#(<= ~counter~0 4)} assume true; {10379#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:59,667 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10379#(<= ~counter~0 4)} {10379#(<= ~counter~0 4)} #98#return; {10379#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:59,668 INFO L290 TraceCheckUtils]: 48: Hoare triple {10379#(<= ~counter~0 4)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {10379#(<= ~counter~0 4)} is VALID [2022-04-08 06:02:59,668 INFO L290 TraceCheckUtils]: 49: Hoare triple {10379#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10404#(<= ~counter~0 5)} is VALID [2022-04-08 06:02:59,668 INFO L290 TraceCheckUtils]: 50: Hoare triple {10404#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {10404#(<= ~counter~0 5)} is VALID [2022-04-08 06:02:59,669 INFO L272 TraceCheckUtils]: 51: Hoare triple {10404#(<= ~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)); {10404#(<= ~counter~0 5)} is VALID [2022-04-08 06:02:59,669 INFO L290 TraceCheckUtils]: 52: Hoare triple {10404#(<= ~counter~0 5)} ~cond := #in~cond; {10404#(<= ~counter~0 5)} is VALID [2022-04-08 06:02:59,669 INFO L290 TraceCheckUtils]: 53: Hoare triple {10404#(<= ~counter~0 5)} assume !(0 == ~cond); {10404#(<= ~counter~0 5)} is VALID [2022-04-08 06:02:59,670 INFO L290 TraceCheckUtils]: 54: Hoare triple {10404#(<= ~counter~0 5)} assume true; {10404#(<= ~counter~0 5)} is VALID [2022-04-08 06:02:59,670 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {10404#(<= ~counter~0 5)} {10404#(<= ~counter~0 5)} #98#return; {10404#(<= ~counter~0 5)} is VALID [2022-04-08 06:02:59,670 INFO L290 TraceCheckUtils]: 56: Hoare triple {10404#(<= ~counter~0 5)} assume !(~r~0 < 0); {10404#(<= ~counter~0 5)} is VALID [2022-04-08 06:02:59,671 INFO L290 TraceCheckUtils]: 57: Hoare triple {10404#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10429#(<= |main_#t~post6| 5)} is VALID [2022-04-08 06:02:59,671 INFO L290 TraceCheckUtils]: 58: Hoare triple {10429#(<= |main_#t~post6| 5)} assume !(#t~post6 < 20);havoc #t~post6; {10248#false} is VALID [2022-04-08 06:02:59,671 INFO L272 TraceCheckUtils]: 59: Hoare triple {10248#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)); {10248#false} is VALID [2022-04-08 06:02:59,671 INFO L290 TraceCheckUtils]: 60: Hoare triple {10248#false} ~cond := #in~cond; {10248#false} is VALID [2022-04-08 06:02:59,671 INFO L290 TraceCheckUtils]: 61: Hoare triple {10248#false} assume 0 == ~cond; {10248#false} is VALID [2022-04-08 06:02:59,671 INFO L290 TraceCheckUtils]: 62: Hoare triple {10248#false} assume !false; {10248#false} is VALID [2022-04-08 06:02:59,672 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 10 proven. 54 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:02:59,672 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:02:59,967 INFO L290 TraceCheckUtils]: 62: Hoare triple {10248#false} assume !false; {10248#false} is VALID [2022-04-08 06:02:59,968 INFO L290 TraceCheckUtils]: 61: Hoare triple {10248#false} assume 0 == ~cond; {10248#false} is VALID [2022-04-08 06:02:59,968 INFO L290 TraceCheckUtils]: 60: Hoare triple {10248#false} ~cond := #in~cond; {10248#false} is VALID [2022-04-08 06:02:59,968 INFO L272 TraceCheckUtils]: 59: Hoare triple {10248#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)); {10248#false} is VALID [2022-04-08 06:02:59,968 INFO L290 TraceCheckUtils]: 58: Hoare triple {10457#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {10248#false} is VALID [2022-04-08 06:02:59,968 INFO L290 TraceCheckUtils]: 57: Hoare triple {10461#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10457#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:02:59,969 INFO L290 TraceCheckUtils]: 56: Hoare triple {10461#(< ~counter~0 20)} assume !(~r~0 < 0); {10461#(< ~counter~0 20)} is VALID [2022-04-08 06:02:59,969 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {10247#true} {10461#(< ~counter~0 20)} #98#return; {10461#(< ~counter~0 20)} is VALID [2022-04-08 06:02:59,969 INFO L290 TraceCheckUtils]: 54: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-08 06:02:59,969 INFO L290 TraceCheckUtils]: 53: Hoare triple {10247#true} assume !(0 == ~cond); {10247#true} is VALID [2022-04-08 06:02:59,970 INFO L290 TraceCheckUtils]: 52: Hoare triple {10247#true} ~cond := #in~cond; {10247#true} is VALID [2022-04-08 06:02:59,970 INFO L272 TraceCheckUtils]: 51: Hoare triple {10461#(< ~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)); {10247#true} is VALID [2022-04-08 06:02:59,970 INFO L290 TraceCheckUtils]: 50: Hoare triple {10461#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {10461#(< ~counter~0 20)} is VALID [2022-04-08 06:02:59,970 INFO L290 TraceCheckUtils]: 49: Hoare triple {10486#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10461#(< ~counter~0 20)} is VALID [2022-04-08 06:02:59,971 INFO L290 TraceCheckUtils]: 48: Hoare triple {10486#(< ~counter~0 19)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {10486#(< ~counter~0 19)} is VALID [2022-04-08 06:02:59,971 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10247#true} {10486#(< ~counter~0 19)} #98#return; {10486#(< ~counter~0 19)} is VALID [2022-04-08 06:02:59,971 INFO L290 TraceCheckUtils]: 46: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-08 06:02:59,971 INFO L290 TraceCheckUtils]: 45: Hoare triple {10247#true} assume !(0 == ~cond); {10247#true} is VALID [2022-04-08 06:02:59,971 INFO L290 TraceCheckUtils]: 44: Hoare triple {10247#true} ~cond := #in~cond; {10247#true} is VALID [2022-04-08 06:02:59,972 INFO L272 TraceCheckUtils]: 43: Hoare triple {10486#(< ~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)); {10247#true} is VALID [2022-04-08 06:02:59,972 INFO L290 TraceCheckUtils]: 42: Hoare triple {10486#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {10486#(< ~counter~0 19)} is VALID [2022-04-08 06:02:59,972 INFO L290 TraceCheckUtils]: 41: Hoare triple {10511#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10486#(< ~counter~0 19)} is VALID [2022-04-08 06:02:59,972 INFO L290 TraceCheckUtils]: 40: Hoare triple {10511#(< ~counter~0 18)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {10511#(< ~counter~0 18)} is VALID [2022-04-08 06:02:59,973 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {10247#true} {10511#(< ~counter~0 18)} #98#return; {10511#(< ~counter~0 18)} is VALID [2022-04-08 06:02:59,973 INFO L290 TraceCheckUtils]: 38: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-08 06:02:59,973 INFO L290 TraceCheckUtils]: 37: Hoare triple {10247#true} assume !(0 == ~cond); {10247#true} is VALID [2022-04-08 06:02:59,973 INFO L290 TraceCheckUtils]: 36: Hoare triple {10247#true} ~cond := #in~cond; {10247#true} is VALID [2022-04-08 06:02:59,973 INFO L272 TraceCheckUtils]: 35: Hoare triple {10511#(< ~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)); {10247#true} is VALID [2022-04-08 06:02:59,974 INFO L290 TraceCheckUtils]: 34: Hoare triple {10511#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {10511#(< ~counter~0 18)} is VALID [2022-04-08 06:02:59,974 INFO L290 TraceCheckUtils]: 33: Hoare triple {10536#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10511#(< ~counter~0 18)} is VALID [2022-04-08 06:02:59,974 INFO L290 TraceCheckUtils]: 32: Hoare triple {10536#(< ~counter~0 17)} assume !(~r~0 > 0); {10536#(< ~counter~0 17)} is VALID [2022-04-08 06:02:59,975 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {10247#true} {10536#(< ~counter~0 17)} #96#return; {10536#(< ~counter~0 17)} is VALID [2022-04-08 06:02:59,975 INFO L290 TraceCheckUtils]: 30: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-08 06:02:59,975 INFO L290 TraceCheckUtils]: 29: Hoare triple {10247#true} assume !(0 == ~cond); {10247#true} is VALID [2022-04-08 06:02:59,975 INFO L290 TraceCheckUtils]: 28: Hoare triple {10247#true} ~cond := #in~cond; {10247#true} is VALID [2022-04-08 06:02:59,975 INFO L272 TraceCheckUtils]: 27: Hoare triple {10536#(< ~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)); {10247#true} is VALID [2022-04-08 06:02:59,976 INFO L290 TraceCheckUtils]: 26: Hoare triple {10536#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {10536#(< ~counter~0 17)} is VALID [2022-04-08 06:02:59,976 INFO L290 TraceCheckUtils]: 25: Hoare triple {10561#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10536#(< ~counter~0 17)} is VALID [2022-04-08 06:02:59,976 INFO L290 TraceCheckUtils]: 24: Hoare triple {10561#(< ~counter~0 16)} assume !!(0 != ~r~0); {10561#(< ~counter~0 16)} is VALID [2022-04-08 06:02:59,977 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10247#true} {10561#(< ~counter~0 16)} #94#return; {10561#(< ~counter~0 16)} is VALID [2022-04-08 06:02:59,977 INFO L290 TraceCheckUtils]: 22: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-08 06:02:59,977 INFO L290 TraceCheckUtils]: 21: Hoare triple {10247#true} assume !(0 == ~cond); {10247#true} is VALID [2022-04-08 06:02:59,977 INFO L290 TraceCheckUtils]: 20: Hoare triple {10247#true} ~cond := #in~cond; {10247#true} is VALID [2022-04-08 06:02:59,977 INFO L272 TraceCheckUtils]: 19: Hoare triple {10561#(< ~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)); {10247#true} is VALID [2022-04-08 06:02:59,977 INFO L290 TraceCheckUtils]: 18: Hoare triple {10561#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {10561#(< ~counter~0 16)} is VALID [2022-04-08 06:02:59,978 INFO L290 TraceCheckUtils]: 17: Hoare triple {10586#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10561#(< ~counter~0 16)} is VALID [2022-04-08 06:02:59,978 INFO L290 TraceCheckUtils]: 16: Hoare triple {10586#(< ~counter~0 15)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {10586#(< ~counter~0 15)} is VALID [2022-04-08 06:02:59,979 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10247#true} {10586#(< ~counter~0 15)} #92#return; {10586#(< ~counter~0 15)} is VALID [2022-04-08 06:02:59,979 INFO L290 TraceCheckUtils]: 14: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-08 06:02:59,979 INFO L290 TraceCheckUtils]: 13: Hoare triple {10247#true} assume !(0 == ~cond); {10247#true} is VALID [2022-04-08 06:02:59,979 INFO L290 TraceCheckUtils]: 12: Hoare triple {10247#true} ~cond := #in~cond; {10247#true} is VALID [2022-04-08 06:02:59,979 INFO L272 TraceCheckUtils]: 11: Hoare triple {10586#(< ~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)); {10247#true} is VALID [2022-04-08 06:02:59,979 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10247#true} {10586#(< ~counter~0 15)} #90#return; {10586#(< ~counter~0 15)} is VALID [2022-04-08 06:02:59,980 INFO L290 TraceCheckUtils]: 9: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-08 06:02:59,980 INFO L290 TraceCheckUtils]: 8: Hoare triple {10247#true} assume !(0 == ~cond); {10247#true} is VALID [2022-04-08 06:02:59,980 INFO L290 TraceCheckUtils]: 7: Hoare triple {10247#true} ~cond := #in~cond; {10247#true} is VALID [2022-04-08 06:02:59,980 INFO L272 TraceCheckUtils]: 6: Hoare triple {10586#(< ~counter~0 15)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {10247#true} is VALID [2022-04-08 06:02:59,980 INFO L290 TraceCheckUtils]: 5: Hoare triple {10586#(< ~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; {10586#(< ~counter~0 15)} is VALID [2022-04-08 06:02:59,980 INFO L272 TraceCheckUtils]: 4: Hoare triple {10586#(< ~counter~0 15)} call #t~ret9 := main(); {10586#(< ~counter~0 15)} is VALID [2022-04-08 06:02:59,981 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10586#(< ~counter~0 15)} {10247#true} #102#return; {10586#(< ~counter~0 15)} is VALID [2022-04-08 06:02:59,981 INFO L290 TraceCheckUtils]: 2: Hoare triple {10586#(< ~counter~0 15)} assume true; {10586#(< ~counter~0 15)} is VALID [2022-04-08 06:02:59,981 INFO L290 TraceCheckUtils]: 1: Hoare triple {10247#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {10586#(< ~counter~0 15)} is VALID [2022-04-08 06:02:59,982 INFO L272 TraceCheckUtils]: 0: Hoare triple {10247#true} call ULTIMATE.init(); {10247#true} is VALID [2022-04-08 06:02:59,982 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 10 proven. 14 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-08 06:02:59,982 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:02:59,982 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [63301438] [2022-04-08 06:02:59,982 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:02:59,982 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1340116771] [2022-04-08 06:02:59,982 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1340116771] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:02:59,982 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:02:59,982 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-08 06:02:59,983 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:02:59,983 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1725076564] [2022-04-08 06:02:59,983 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1725076564] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:02:59,983 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:02:59,983 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 06:02:59,983 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [50977543] [2022-04-08 06:02:59,983 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:02:59,983 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 8 states have internal predecessors, (42), 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 63 [2022-04-08 06:02:59,983 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:02:59,984 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 8 states have internal predecessors, (42), 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:03:00,026 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:03:00,027 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 06:03:00,027 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:03:00,027 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 06:03:00,027 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-08 06:03:00,027 INFO L87 Difference]: Start difference. First operand 132 states and 169 transitions. Second operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 8 states have internal predecessors, (42), 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:03:00,423 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:00,423 INFO L93 Difference]: Finished difference Result 164 states and 208 transitions. [2022-04-08 06:03:00,423 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 06:03:00,423 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 8 states have internal predecessors, (42), 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 63 [2022-04-08 06:03:00,423 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:03:00,423 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 8 states have internal predecessors, (42), 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:03:00,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-08 06:03:00,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 8 states have internal predecessors, (42), 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:03:00,428 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-08 06:03:00,428 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 115 transitions. [2022-04-08 06:03:00,502 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:03:00,504 INFO L225 Difference]: With dead ends: 164 [2022-04-08 06:03:00,504 INFO L226 Difference]: Without dead ends: 159 [2022-04-08 06:03:00,505 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 111 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=123, Invalid=183, Unknown=0, NotChecked=0, Total=306 [2022-04-08 06:03:00,505 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 46 mSDsluCounter, 120 mSDsCounter, 0 mSdLazyCounter, 59 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 165 SdHoareTripleChecker+Invalid, 94 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 59 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:03:00,505 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [46 Valid, 165 Invalid, 94 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 59 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:03:00,506 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 159 states. [2022-04-08 06:03:00,612 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 159 to 151. [2022-04-08 06:03:00,613 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:03:00,613 INFO L82 GeneralOperation]: Start isEquivalent. First operand 159 states. Second operand has 151 states, 110 states have (on average 1.2272727272727273) internal successors, (135), 113 states have internal predecessors, (135), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 25 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 06:03:00,613 INFO L74 IsIncluded]: Start isIncluded. First operand 159 states. Second operand has 151 states, 110 states have (on average 1.2272727272727273) internal successors, (135), 113 states have internal predecessors, (135), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 25 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 06:03:00,614 INFO L87 Difference]: Start difference. First operand 159 states. Second operand has 151 states, 110 states have (on average 1.2272727272727273) internal successors, (135), 113 states have internal predecessors, (135), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 25 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 06:03:00,616 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:00,616 INFO L93 Difference]: Finished difference Result 159 states and 202 transitions. [2022-04-08 06:03:00,616 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 202 transitions. [2022-04-08 06:03:00,617 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:03:00,617 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:03:00,617 INFO L74 IsIncluded]: Start isIncluded. First operand has 151 states, 110 states have (on average 1.2272727272727273) internal successors, (135), 113 states have internal predecessors, (135), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 25 states have call predecessors, (28), 28 states have call successors, (28) Second operand 159 states. [2022-04-08 06:03:00,617 INFO L87 Difference]: Start difference. First operand has 151 states, 110 states have (on average 1.2272727272727273) internal successors, (135), 113 states have internal predecessors, (135), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 25 states have call predecessors, (28), 28 states have call successors, (28) Second operand 159 states. [2022-04-08 06:03:00,620 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:00,620 INFO L93 Difference]: Finished difference Result 159 states and 202 transitions. [2022-04-08 06:03:00,620 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 202 transitions. [2022-04-08 06:03:00,620 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:03:00,620 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:03:00,620 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:03:00,620 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:03:00,620 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 151 states, 110 states have (on average 1.2272727272727273) internal successors, (135), 113 states have internal predecessors, (135), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 25 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 06:03:00,623 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 151 states to 151 states and 193 transitions. [2022-04-08 06:03:00,623 INFO L78 Accepts]: Start accepts. Automaton has 151 states and 193 transitions. Word has length 63 [2022-04-08 06:03:00,623 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:03:00,623 INFO L478 AbstractCegarLoop]: Abstraction has 151 states and 193 transitions. [2022-04-08 06:03:00,623 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 8 states have internal predecessors, (42), 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:03:00,623 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 151 states and 193 transitions. [2022-04-08 06:03:05,539 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 193 edges. 193 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:03:05,539 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 193 transitions. [2022-04-08 06:03:05,540 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-08 06:03:05,540 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:03:05,540 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 4, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:03:05,564 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:03:05,741 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:03:05,741 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:03:05,741 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:03:05,741 INFO L85 PathProgramCache]: Analyzing trace with hash -1823928061, now seen corresponding path program 5 times [2022-04-08 06:03:05,741 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:03:05,742 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [579758809] [2022-04-08 06:03:05,742 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:03:05,742 INFO L85 PathProgramCache]: Analyzing trace with hash -1823928061, now seen corresponding path program 6 times [2022-04-08 06:03:05,742 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:03:05,742 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [78465717] [2022-04-08 06:03:05,742 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:03:05,742 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:03:05,756 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:03:05,756 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [299211732] [2022-04-08 06:03:05,756 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:03:05,757 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:03:05,757 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:03:05,758 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:03:05,782 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:03:05,852 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-04-08 06:03:05,852 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:03:05,854 INFO L263 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 06:03:05,868 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:03:05,869 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:03:06,188 INFO L272 TraceCheckUtils]: 0: Hoare triple {11592#true} call ULTIMATE.init(); {11592#true} is VALID [2022-04-08 06:03:06,189 INFO L290 TraceCheckUtils]: 1: Hoare triple {11592#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,189 INFO L290 TraceCheckUtils]: 2: Hoare triple {11600#(<= ~counter~0 0)} assume true; {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,190 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11600#(<= ~counter~0 0)} {11592#true} #102#return; {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,190 INFO L272 TraceCheckUtils]: 4: Hoare triple {11600#(<= ~counter~0 0)} call #t~ret9 := main(); {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,190 INFO L290 TraceCheckUtils]: 5: Hoare triple {11600#(<= ~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; {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,191 INFO L272 TraceCheckUtils]: 6: Hoare triple {11600#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,191 INFO L290 TraceCheckUtils]: 7: Hoare triple {11600#(<= ~counter~0 0)} ~cond := #in~cond; {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,192 INFO L290 TraceCheckUtils]: 8: Hoare triple {11600#(<= ~counter~0 0)} assume !(0 == ~cond); {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,196 INFO L290 TraceCheckUtils]: 9: Hoare triple {11600#(<= ~counter~0 0)} assume true; {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,208 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11600#(<= ~counter~0 0)} {11600#(<= ~counter~0 0)} #90#return; {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,215 INFO L272 TraceCheckUtils]: 11: Hoare triple {11600#(<= ~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)); {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,216 INFO L290 TraceCheckUtils]: 12: Hoare triple {11600#(<= ~counter~0 0)} ~cond := #in~cond; {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,216 INFO L290 TraceCheckUtils]: 13: Hoare triple {11600#(<= ~counter~0 0)} assume !(0 == ~cond); {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,216 INFO L290 TraceCheckUtils]: 14: Hoare triple {11600#(<= ~counter~0 0)} assume true; {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,217 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11600#(<= ~counter~0 0)} {11600#(<= ~counter~0 0)} #92#return; {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,217 INFO L290 TraceCheckUtils]: 16: Hoare triple {11600#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {11600#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:06,218 INFO L290 TraceCheckUtils]: 17: Hoare triple {11600#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11649#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:06,218 INFO L290 TraceCheckUtils]: 18: Hoare triple {11649#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {11649#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:06,219 INFO L272 TraceCheckUtils]: 19: Hoare triple {11649#(<= ~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)); {11649#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:06,219 INFO L290 TraceCheckUtils]: 20: Hoare triple {11649#(<= ~counter~0 1)} ~cond := #in~cond; {11649#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:06,220 INFO L290 TraceCheckUtils]: 21: Hoare triple {11649#(<= ~counter~0 1)} assume !(0 == ~cond); {11649#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:06,220 INFO L290 TraceCheckUtils]: 22: Hoare triple {11649#(<= ~counter~0 1)} assume true; {11649#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:06,221 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11649#(<= ~counter~0 1)} {11649#(<= ~counter~0 1)} #94#return; {11649#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:06,221 INFO L290 TraceCheckUtils]: 24: Hoare triple {11649#(<= ~counter~0 1)} assume !!(0 != ~r~0); {11649#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:06,221 INFO L290 TraceCheckUtils]: 25: Hoare triple {11649#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11674#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:06,222 INFO L290 TraceCheckUtils]: 26: Hoare triple {11674#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {11674#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:06,222 INFO L272 TraceCheckUtils]: 27: Hoare triple {11674#(<= ~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)); {11674#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:06,223 INFO L290 TraceCheckUtils]: 28: Hoare triple {11674#(<= ~counter~0 2)} ~cond := #in~cond; {11674#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:06,223 INFO L290 TraceCheckUtils]: 29: Hoare triple {11674#(<= ~counter~0 2)} assume !(0 == ~cond); {11674#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:06,223 INFO L290 TraceCheckUtils]: 30: Hoare triple {11674#(<= ~counter~0 2)} assume true; {11674#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:06,224 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11674#(<= ~counter~0 2)} {11674#(<= ~counter~0 2)} #96#return; {11674#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:06,224 INFO L290 TraceCheckUtils]: 32: Hoare triple {11674#(<= ~counter~0 2)} assume !(~r~0 > 0); {11674#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:06,225 INFO L290 TraceCheckUtils]: 33: Hoare triple {11674#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11699#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:06,225 INFO L290 TraceCheckUtils]: 34: Hoare triple {11699#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {11699#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:06,226 INFO L272 TraceCheckUtils]: 35: Hoare triple {11699#(<= ~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)); {11699#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:06,226 INFO L290 TraceCheckUtils]: 36: Hoare triple {11699#(<= ~counter~0 3)} ~cond := #in~cond; {11699#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:06,226 INFO L290 TraceCheckUtils]: 37: Hoare triple {11699#(<= ~counter~0 3)} assume !(0 == ~cond); {11699#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:06,227 INFO L290 TraceCheckUtils]: 38: Hoare triple {11699#(<= ~counter~0 3)} assume true; {11699#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:06,227 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {11699#(<= ~counter~0 3)} {11699#(<= ~counter~0 3)} #98#return; {11699#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:06,227 INFO L290 TraceCheckUtils]: 40: Hoare triple {11699#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {11699#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:06,228 INFO L290 TraceCheckUtils]: 41: Hoare triple {11699#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11724#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:06,228 INFO L290 TraceCheckUtils]: 42: Hoare triple {11724#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {11724#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:06,229 INFO L272 TraceCheckUtils]: 43: Hoare triple {11724#(<= ~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)); {11724#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:06,229 INFO L290 TraceCheckUtils]: 44: Hoare triple {11724#(<= ~counter~0 4)} ~cond := #in~cond; {11724#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:06,230 INFO L290 TraceCheckUtils]: 45: Hoare triple {11724#(<= ~counter~0 4)} assume !(0 == ~cond); {11724#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:06,230 INFO L290 TraceCheckUtils]: 46: Hoare triple {11724#(<= ~counter~0 4)} assume true; {11724#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:06,230 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {11724#(<= ~counter~0 4)} {11724#(<= ~counter~0 4)} #98#return; {11724#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:06,231 INFO L290 TraceCheckUtils]: 48: Hoare triple {11724#(<= ~counter~0 4)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {11724#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:06,231 INFO L290 TraceCheckUtils]: 49: Hoare triple {11724#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11749#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:06,232 INFO L290 TraceCheckUtils]: 50: Hoare triple {11749#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {11749#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:06,232 INFO L272 TraceCheckUtils]: 51: Hoare triple {11749#(<= ~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)); {11749#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:06,233 INFO L290 TraceCheckUtils]: 52: Hoare triple {11749#(<= ~counter~0 5)} ~cond := #in~cond; {11749#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:06,233 INFO L290 TraceCheckUtils]: 53: Hoare triple {11749#(<= ~counter~0 5)} assume !(0 == ~cond); {11749#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:06,233 INFO L290 TraceCheckUtils]: 54: Hoare triple {11749#(<= ~counter~0 5)} assume true; {11749#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:06,234 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11749#(<= ~counter~0 5)} {11749#(<= ~counter~0 5)} #98#return; {11749#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:06,234 INFO L290 TraceCheckUtils]: 56: Hoare triple {11749#(<= ~counter~0 5)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {11749#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:06,234 INFO L290 TraceCheckUtils]: 57: Hoare triple {11749#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11774#(<= |main_#t~post8| 5)} is VALID [2022-04-08 06:03:06,235 INFO L290 TraceCheckUtils]: 58: Hoare triple {11774#(<= |main_#t~post8| 5)} assume !(#t~post8 < 20);havoc #t~post8; {11593#false} is VALID [2022-04-08 06:03:06,235 INFO L290 TraceCheckUtils]: 59: Hoare triple {11593#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11593#false} is VALID [2022-04-08 06:03:06,235 INFO L290 TraceCheckUtils]: 60: Hoare triple {11593#false} assume !(#t~post6 < 20);havoc #t~post6; {11593#false} is VALID [2022-04-08 06:03:06,235 INFO L272 TraceCheckUtils]: 61: Hoare triple {11593#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)); {11593#false} is VALID [2022-04-08 06:03:06,235 INFO L290 TraceCheckUtils]: 62: Hoare triple {11593#false} ~cond := #in~cond; {11593#false} is VALID [2022-04-08 06:03:06,235 INFO L290 TraceCheckUtils]: 63: Hoare triple {11593#false} assume 0 == ~cond; {11593#false} is VALID [2022-04-08 06:03:06,235 INFO L290 TraceCheckUtils]: 64: Hoare triple {11593#false} assume !false; {11593#false} is VALID [2022-04-08 06:03:06,236 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 12 proven. 58 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:03:06,236 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:03:06,594 INFO L290 TraceCheckUtils]: 64: Hoare triple {11593#false} assume !false; {11593#false} is VALID [2022-04-08 06:03:06,594 INFO L290 TraceCheckUtils]: 63: Hoare triple {11593#false} assume 0 == ~cond; {11593#false} is VALID [2022-04-08 06:03:06,595 INFO L290 TraceCheckUtils]: 62: Hoare triple {11593#false} ~cond := #in~cond; {11593#false} is VALID [2022-04-08 06:03:06,595 INFO L272 TraceCheckUtils]: 61: Hoare triple {11593#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)); {11593#false} is VALID [2022-04-08 06:03:06,595 INFO L290 TraceCheckUtils]: 60: Hoare triple {11593#false} assume !(#t~post6 < 20);havoc #t~post6; {11593#false} is VALID [2022-04-08 06:03:06,595 INFO L290 TraceCheckUtils]: 59: Hoare triple {11593#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11593#false} is VALID [2022-04-08 06:03:06,595 INFO L290 TraceCheckUtils]: 58: Hoare triple {11814#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {11593#false} is VALID [2022-04-08 06:03:06,600 INFO L290 TraceCheckUtils]: 57: Hoare triple {11818#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11814#(< |main_#t~post8| 20)} is VALID [2022-04-08 06:03:06,601 INFO L290 TraceCheckUtils]: 56: Hoare triple {11818#(< ~counter~0 20)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {11818#(< ~counter~0 20)} is VALID [2022-04-08 06:03:06,601 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11592#true} {11818#(< ~counter~0 20)} #98#return; {11818#(< ~counter~0 20)} is VALID [2022-04-08 06:03:06,601 INFO L290 TraceCheckUtils]: 54: Hoare triple {11592#true} assume true; {11592#true} is VALID [2022-04-08 06:03:06,601 INFO L290 TraceCheckUtils]: 53: Hoare triple {11592#true} assume !(0 == ~cond); {11592#true} is VALID [2022-04-08 06:03:06,602 INFO L290 TraceCheckUtils]: 52: Hoare triple {11592#true} ~cond := #in~cond; {11592#true} is VALID [2022-04-08 06:03:06,602 INFO L272 TraceCheckUtils]: 51: Hoare triple {11818#(< ~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)); {11592#true} is VALID [2022-04-08 06:03:06,602 INFO L290 TraceCheckUtils]: 50: Hoare triple {11818#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {11818#(< ~counter~0 20)} is VALID [2022-04-08 06:03:06,603 INFO L290 TraceCheckUtils]: 49: Hoare triple {11843#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11818#(< ~counter~0 20)} is VALID [2022-04-08 06:03:06,603 INFO L290 TraceCheckUtils]: 48: Hoare triple {11843#(< ~counter~0 19)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {11843#(< ~counter~0 19)} is VALID [2022-04-08 06:03:06,604 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {11592#true} {11843#(< ~counter~0 19)} #98#return; {11843#(< ~counter~0 19)} is VALID [2022-04-08 06:03:06,604 INFO L290 TraceCheckUtils]: 46: Hoare triple {11592#true} assume true; {11592#true} is VALID [2022-04-08 06:03:06,604 INFO L290 TraceCheckUtils]: 45: Hoare triple {11592#true} assume !(0 == ~cond); {11592#true} is VALID [2022-04-08 06:03:06,604 INFO L290 TraceCheckUtils]: 44: Hoare triple {11592#true} ~cond := #in~cond; {11592#true} is VALID [2022-04-08 06:03:06,604 INFO L272 TraceCheckUtils]: 43: Hoare triple {11843#(< ~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)); {11592#true} is VALID [2022-04-08 06:03:06,604 INFO L290 TraceCheckUtils]: 42: Hoare triple {11843#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {11843#(< ~counter~0 19)} is VALID [2022-04-08 06:03:06,605 INFO L290 TraceCheckUtils]: 41: Hoare triple {11868#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11843#(< ~counter~0 19)} is VALID [2022-04-08 06:03:06,605 INFO L290 TraceCheckUtils]: 40: Hoare triple {11868#(< ~counter~0 18)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {11868#(< ~counter~0 18)} is VALID [2022-04-08 06:03:06,606 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {11592#true} {11868#(< ~counter~0 18)} #98#return; {11868#(< ~counter~0 18)} is VALID [2022-04-08 06:03:06,606 INFO L290 TraceCheckUtils]: 38: Hoare triple {11592#true} assume true; {11592#true} is VALID [2022-04-08 06:03:06,606 INFO L290 TraceCheckUtils]: 37: Hoare triple {11592#true} assume !(0 == ~cond); {11592#true} is VALID [2022-04-08 06:03:06,606 INFO L290 TraceCheckUtils]: 36: Hoare triple {11592#true} ~cond := #in~cond; {11592#true} is VALID [2022-04-08 06:03:06,606 INFO L272 TraceCheckUtils]: 35: Hoare triple {11868#(< ~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)); {11592#true} is VALID [2022-04-08 06:03:06,607 INFO L290 TraceCheckUtils]: 34: Hoare triple {11868#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {11868#(< ~counter~0 18)} is VALID [2022-04-08 06:03:06,607 INFO L290 TraceCheckUtils]: 33: Hoare triple {11893#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11868#(< ~counter~0 18)} is VALID [2022-04-08 06:03:06,607 INFO L290 TraceCheckUtils]: 32: Hoare triple {11893#(< ~counter~0 17)} assume !(~r~0 > 0); {11893#(< ~counter~0 17)} is VALID [2022-04-08 06:03:06,608 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11592#true} {11893#(< ~counter~0 17)} #96#return; {11893#(< ~counter~0 17)} is VALID [2022-04-08 06:03:06,608 INFO L290 TraceCheckUtils]: 30: Hoare triple {11592#true} assume true; {11592#true} is VALID [2022-04-08 06:03:06,608 INFO L290 TraceCheckUtils]: 29: Hoare triple {11592#true} assume !(0 == ~cond); {11592#true} is VALID [2022-04-08 06:03:06,608 INFO L290 TraceCheckUtils]: 28: Hoare triple {11592#true} ~cond := #in~cond; {11592#true} is VALID [2022-04-08 06:03:06,608 INFO L272 TraceCheckUtils]: 27: Hoare triple {11893#(< ~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)); {11592#true} is VALID [2022-04-08 06:03:06,609 INFO L290 TraceCheckUtils]: 26: Hoare triple {11893#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {11893#(< ~counter~0 17)} is VALID [2022-04-08 06:03:06,609 INFO L290 TraceCheckUtils]: 25: Hoare triple {11918#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11893#(< ~counter~0 17)} is VALID [2022-04-08 06:03:06,610 INFO L290 TraceCheckUtils]: 24: Hoare triple {11918#(< ~counter~0 16)} assume !!(0 != ~r~0); {11918#(< ~counter~0 16)} is VALID [2022-04-08 06:03:06,610 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11592#true} {11918#(< ~counter~0 16)} #94#return; {11918#(< ~counter~0 16)} is VALID [2022-04-08 06:03:06,610 INFO L290 TraceCheckUtils]: 22: Hoare triple {11592#true} assume true; {11592#true} is VALID [2022-04-08 06:03:06,610 INFO L290 TraceCheckUtils]: 21: Hoare triple {11592#true} assume !(0 == ~cond); {11592#true} is VALID [2022-04-08 06:03:06,610 INFO L290 TraceCheckUtils]: 20: Hoare triple {11592#true} ~cond := #in~cond; {11592#true} is VALID [2022-04-08 06:03:06,611 INFO L272 TraceCheckUtils]: 19: Hoare triple {11918#(< ~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)); {11592#true} is VALID [2022-04-08 06:03:06,611 INFO L290 TraceCheckUtils]: 18: Hoare triple {11918#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {11918#(< ~counter~0 16)} is VALID [2022-04-08 06:03:06,611 INFO L290 TraceCheckUtils]: 17: Hoare triple {11943#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11918#(< ~counter~0 16)} is VALID [2022-04-08 06:03:06,612 INFO L290 TraceCheckUtils]: 16: Hoare triple {11943#(< ~counter~0 15)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {11943#(< ~counter~0 15)} is VALID [2022-04-08 06:03:06,612 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11592#true} {11943#(< ~counter~0 15)} #92#return; {11943#(< ~counter~0 15)} is VALID [2022-04-08 06:03:06,612 INFO L290 TraceCheckUtils]: 14: Hoare triple {11592#true} assume true; {11592#true} is VALID [2022-04-08 06:03:06,613 INFO L290 TraceCheckUtils]: 13: Hoare triple {11592#true} assume !(0 == ~cond); {11592#true} is VALID [2022-04-08 06:03:06,613 INFO L290 TraceCheckUtils]: 12: Hoare triple {11592#true} ~cond := #in~cond; {11592#true} is VALID [2022-04-08 06:03:06,613 INFO L272 TraceCheckUtils]: 11: Hoare triple {11943#(< ~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)); {11592#true} is VALID [2022-04-08 06:03:06,613 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11592#true} {11943#(< ~counter~0 15)} #90#return; {11943#(< ~counter~0 15)} is VALID [2022-04-08 06:03:06,613 INFO L290 TraceCheckUtils]: 9: Hoare triple {11592#true} assume true; {11592#true} is VALID [2022-04-08 06:03:06,613 INFO L290 TraceCheckUtils]: 8: Hoare triple {11592#true} assume !(0 == ~cond); {11592#true} is VALID [2022-04-08 06:03:06,614 INFO L290 TraceCheckUtils]: 7: Hoare triple {11592#true} ~cond := #in~cond; {11592#true} is VALID [2022-04-08 06:03:06,614 INFO L272 TraceCheckUtils]: 6: Hoare triple {11943#(< ~counter~0 15)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {11592#true} is VALID [2022-04-08 06:03:06,614 INFO L290 TraceCheckUtils]: 5: Hoare triple {11943#(< ~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; {11943#(< ~counter~0 15)} is VALID [2022-04-08 06:03:06,614 INFO L272 TraceCheckUtils]: 4: Hoare triple {11943#(< ~counter~0 15)} call #t~ret9 := main(); {11943#(< ~counter~0 15)} is VALID [2022-04-08 06:03:06,615 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11943#(< ~counter~0 15)} {11592#true} #102#return; {11943#(< ~counter~0 15)} is VALID [2022-04-08 06:03:06,615 INFO L290 TraceCheckUtils]: 2: Hoare triple {11943#(< ~counter~0 15)} assume true; {11943#(< ~counter~0 15)} is VALID [2022-04-08 06:03:06,616 INFO L290 TraceCheckUtils]: 1: Hoare triple {11592#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {11943#(< ~counter~0 15)} is VALID [2022-04-08 06:03:06,616 INFO L272 TraceCheckUtils]: 0: Hoare triple {11592#true} call ULTIMATE.init(); {11592#true} is VALID [2022-04-08 06:03:06,616 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 12 proven. 18 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-08 06:03:06,616 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:03:06,616 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [78465717] [2022-04-08 06:03:06,616 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:03:06,617 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [299211732] [2022-04-08 06:03:06,617 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [299211732] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:03:06,617 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:03:06,617 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-08 06:03:06,617 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:03:06,617 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [579758809] [2022-04-08 06:03:06,617 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [579758809] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:03:06,617 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:03:06,617 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 06:03:06,618 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1270613177] [2022-04-08 06:03:06,618 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:03:06,618 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 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 65 [2022-04-08 06:03:06,618 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:03:06,619 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 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:03:06,667 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:03:06,667 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 06:03:06,667 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:03:06,668 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 06:03:06,668 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-08 06:03:06,668 INFO L87 Difference]: Start difference. First operand 151 states and 193 transitions. Second operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 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:03:07,104 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:07,104 INFO L93 Difference]: Finished difference Result 226 states and 299 transitions. [2022-04-08 06:03:07,104 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 06:03:07,105 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 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 65 [2022-04-08 06:03:07,105 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:03:07,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 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:03:07,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 137 transitions. [2022-04-08 06:03:07,107 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 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:03:07,108 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 137 transitions. [2022-04-08 06:03:07,109 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 137 transitions. [2022-04-08 06:03:07,207 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:03:07,210 INFO L225 Difference]: With dead ends: 226 [2022-04-08 06:03:07,210 INFO L226 Difference]: Without dead ends: 161 [2022-04-08 06:03:07,211 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 132 GetRequests, 115 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=135, Invalid=207, Unknown=0, NotChecked=0, Total=342 [2022-04-08 06:03:07,211 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 41 mSDsluCounter, 126 mSDsCounter, 0 mSdLazyCounter, 53 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 171 SdHoareTripleChecker+Invalid, 80 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 53 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:03:07,211 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 171 Invalid, 80 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 53 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:03:07,212 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 161 states. [2022-04-08 06:03:07,329 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 161 to 156. [2022-04-08 06:03:07,329 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:03:07,329 INFO L82 GeneralOperation]: Start isEquivalent. First operand 161 states. Second operand has 156 states, 115 states have (on average 1.2260869565217392) internal successors, (141), 117 states have internal predecessors, (141), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 06:03:07,330 INFO L74 IsIncluded]: Start isIncluded. First operand 161 states. Second operand has 156 states, 115 states have (on average 1.2260869565217392) internal successors, (141), 117 states have internal predecessors, (141), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 06:03:07,330 INFO L87 Difference]: Start difference. First operand 161 states. Second operand has 156 states, 115 states have (on average 1.2260869565217392) internal successors, (141), 117 states have internal predecessors, (141), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 06:03:07,333 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:07,333 INFO L93 Difference]: Finished difference Result 161 states and 204 transitions. [2022-04-08 06:03:07,333 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 204 transitions. [2022-04-08 06:03:07,333 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:03:07,333 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:03:07,334 INFO L74 IsIncluded]: Start isIncluded. First operand has 156 states, 115 states have (on average 1.2260869565217392) internal successors, (141), 117 states have internal predecessors, (141), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) Second operand 161 states. [2022-04-08 06:03:07,334 INFO L87 Difference]: Start difference. First operand has 156 states, 115 states have (on average 1.2260869565217392) internal successors, (141), 117 states have internal predecessors, (141), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) Second operand 161 states. [2022-04-08 06:03:07,338 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:07,339 INFO L93 Difference]: Finished difference Result 161 states and 204 transitions. [2022-04-08 06:03:07,339 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 204 transitions. [2022-04-08 06:03:07,339 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:03:07,339 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:03:07,339 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:03:07,339 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:03:07,340 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 156 states, 115 states have (on average 1.2260869565217392) internal successors, (141), 117 states have internal predecessors, (141), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 06:03:07,343 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 156 states to 156 states and 199 transitions. [2022-04-08 06:03:07,344 INFO L78 Accepts]: Start accepts. Automaton has 156 states and 199 transitions. Word has length 65 [2022-04-08 06:03:07,344 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:03:07,344 INFO L478 AbstractCegarLoop]: Abstraction has 156 states and 199 transitions. [2022-04-08 06:03:07,344 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 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:03:07,344 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 156 states and 199 transitions. [2022-04-08 06:03:16,856 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 199 edges. 196 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-08 06:03:16,856 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 199 transitions. [2022-04-08 06:03:16,857 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-04-08 06:03:16,857 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:03:16,857 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:03:16,874 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:03:17,063 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:03:17,063 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:03:17,064 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:03:17,064 INFO L85 PathProgramCache]: Analyzing trace with hash -1211810838, now seen corresponding path program 1 times [2022-04-08 06:03:17,064 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:03:17,064 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [961451136] [2022-04-08 06:03:17,064 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:03:17,064 INFO L85 PathProgramCache]: Analyzing trace with hash -1211810838, now seen corresponding path program 2 times [2022-04-08 06:03:17,064 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:03:17,064 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [518260253] [2022-04-08 06:03:17,065 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:03:17,065 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:03:17,079 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:03:17,080 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [173636436] [2022-04-08 06:03:17,080 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:03:17,080 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:03:17,080 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:03:17,081 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:03:17,082 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:03:17,122 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:03:17,123 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:03:17,123 INFO L263 TraceCheckSpWp]: Trace formula consists of 182 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 06:03:17,136 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:03:17,137 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:03:17,422 INFO L272 TraceCheckUtils]: 0: Hoare triple {13089#true} call ULTIMATE.init(); {13089#true} is VALID [2022-04-08 06:03:17,423 INFO L290 TraceCheckUtils]: 1: Hoare triple {13089#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,423 INFO L290 TraceCheckUtils]: 2: Hoare triple {13097#(<= ~counter~0 0)} assume true; {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,424 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13097#(<= ~counter~0 0)} {13089#true} #102#return; {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,424 INFO L272 TraceCheckUtils]: 4: Hoare triple {13097#(<= ~counter~0 0)} call #t~ret9 := main(); {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,424 INFO L290 TraceCheckUtils]: 5: Hoare triple {13097#(<= ~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; {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,425 INFO L272 TraceCheckUtils]: 6: Hoare triple {13097#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,425 INFO L290 TraceCheckUtils]: 7: Hoare triple {13097#(<= ~counter~0 0)} ~cond := #in~cond; {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,425 INFO L290 TraceCheckUtils]: 8: Hoare triple {13097#(<= ~counter~0 0)} assume !(0 == ~cond); {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,426 INFO L290 TraceCheckUtils]: 9: Hoare triple {13097#(<= ~counter~0 0)} assume true; {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,426 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13097#(<= ~counter~0 0)} {13097#(<= ~counter~0 0)} #90#return; {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,426 INFO L272 TraceCheckUtils]: 11: Hoare triple {13097#(<= ~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)); {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,427 INFO L290 TraceCheckUtils]: 12: Hoare triple {13097#(<= ~counter~0 0)} ~cond := #in~cond; {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,427 INFO L290 TraceCheckUtils]: 13: Hoare triple {13097#(<= ~counter~0 0)} assume !(0 == ~cond); {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,427 INFO L290 TraceCheckUtils]: 14: Hoare triple {13097#(<= ~counter~0 0)} assume true; {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,428 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13097#(<= ~counter~0 0)} {13097#(<= ~counter~0 0)} #92#return; {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,428 INFO L290 TraceCheckUtils]: 16: Hoare triple {13097#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {13097#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:17,428 INFO L290 TraceCheckUtils]: 17: Hoare triple {13097#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13146#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:17,429 INFO L290 TraceCheckUtils]: 18: Hoare triple {13146#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {13146#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:17,429 INFO L272 TraceCheckUtils]: 19: Hoare triple {13146#(<= ~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)); {13146#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:17,429 INFO L290 TraceCheckUtils]: 20: Hoare triple {13146#(<= ~counter~0 1)} ~cond := #in~cond; {13146#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:17,430 INFO L290 TraceCheckUtils]: 21: Hoare triple {13146#(<= ~counter~0 1)} assume !(0 == ~cond); {13146#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:17,430 INFO L290 TraceCheckUtils]: 22: Hoare triple {13146#(<= ~counter~0 1)} assume true; {13146#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:17,430 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {13146#(<= ~counter~0 1)} {13146#(<= ~counter~0 1)} #94#return; {13146#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:17,431 INFO L290 TraceCheckUtils]: 24: Hoare triple {13146#(<= ~counter~0 1)} assume !!(0 != ~r~0); {13146#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:17,431 INFO L290 TraceCheckUtils]: 25: Hoare triple {13146#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13171#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:17,432 INFO L290 TraceCheckUtils]: 26: Hoare triple {13171#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {13171#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:17,432 INFO L272 TraceCheckUtils]: 27: Hoare triple {13171#(<= ~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)); {13171#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:17,432 INFO L290 TraceCheckUtils]: 28: Hoare triple {13171#(<= ~counter~0 2)} ~cond := #in~cond; {13171#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:17,433 INFO L290 TraceCheckUtils]: 29: Hoare triple {13171#(<= ~counter~0 2)} assume !(0 == ~cond); {13171#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:17,433 INFO L290 TraceCheckUtils]: 30: Hoare triple {13171#(<= ~counter~0 2)} assume true; {13171#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:17,433 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {13171#(<= ~counter~0 2)} {13171#(<= ~counter~0 2)} #96#return; {13171#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:17,434 INFO L290 TraceCheckUtils]: 32: Hoare triple {13171#(<= ~counter~0 2)} assume !(~r~0 > 0); {13171#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:17,434 INFO L290 TraceCheckUtils]: 33: Hoare triple {13171#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {13196#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:17,434 INFO L290 TraceCheckUtils]: 34: Hoare triple {13196#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {13196#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:17,435 INFO L272 TraceCheckUtils]: 35: Hoare triple {13196#(<= ~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)); {13196#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:17,435 INFO L290 TraceCheckUtils]: 36: Hoare triple {13196#(<= ~counter~0 3)} ~cond := #in~cond; {13196#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:17,435 INFO L290 TraceCheckUtils]: 37: Hoare triple {13196#(<= ~counter~0 3)} assume !(0 == ~cond); {13196#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:17,436 INFO L290 TraceCheckUtils]: 38: Hoare triple {13196#(<= ~counter~0 3)} assume true; {13196#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:17,436 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {13196#(<= ~counter~0 3)} {13196#(<= ~counter~0 3)} #98#return; {13196#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:17,436 INFO L290 TraceCheckUtils]: 40: Hoare triple {13196#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {13196#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:17,437 INFO L290 TraceCheckUtils]: 41: Hoare triple {13196#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {13221#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:17,437 INFO L290 TraceCheckUtils]: 42: Hoare triple {13221#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {13221#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:17,438 INFO L272 TraceCheckUtils]: 43: Hoare triple {13221#(<= ~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)); {13221#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:17,438 INFO L290 TraceCheckUtils]: 44: Hoare triple {13221#(<= ~counter~0 4)} ~cond := #in~cond; {13221#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:17,438 INFO L290 TraceCheckUtils]: 45: Hoare triple {13221#(<= ~counter~0 4)} assume !(0 == ~cond); {13221#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:17,438 INFO L290 TraceCheckUtils]: 46: Hoare triple {13221#(<= ~counter~0 4)} assume true; {13221#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:17,439 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {13221#(<= ~counter~0 4)} {13221#(<= ~counter~0 4)} #98#return; {13221#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:17,439 INFO L290 TraceCheckUtils]: 48: Hoare triple {13221#(<= ~counter~0 4)} assume !(~r~0 < 0); {13221#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:17,440 INFO L290 TraceCheckUtils]: 49: Hoare triple {13221#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13246#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:17,440 INFO L290 TraceCheckUtils]: 50: Hoare triple {13246#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {13246#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:17,440 INFO L272 TraceCheckUtils]: 51: Hoare triple {13246#(<= ~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)); {13246#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:17,441 INFO L290 TraceCheckUtils]: 52: Hoare triple {13246#(<= ~counter~0 5)} ~cond := #in~cond; {13246#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:17,441 INFO L290 TraceCheckUtils]: 53: Hoare triple {13246#(<= ~counter~0 5)} assume !(0 == ~cond); {13246#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:17,441 INFO L290 TraceCheckUtils]: 54: Hoare triple {13246#(<= ~counter~0 5)} assume true; {13246#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:17,442 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {13246#(<= ~counter~0 5)} {13246#(<= ~counter~0 5)} #94#return; {13246#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:17,442 INFO L290 TraceCheckUtils]: 56: Hoare triple {13246#(<= ~counter~0 5)} assume !!(0 != ~r~0); {13246#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:17,442 INFO L290 TraceCheckUtils]: 57: Hoare triple {13246#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13271#(<= |main_#t~post7| 5)} is VALID [2022-04-08 06:03:17,443 INFO L290 TraceCheckUtils]: 58: Hoare triple {13271#(<= |main_#t~post7| 5)} assume !(#t~post7 < 20);havoc #t~post7; {13090#false} is VALID [2022-04-08 06:03:17,443 INFO L290 TraceCheckUtils]: 59: Hoare triple {13090#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {13090#false} is VALID [2022-04-08 06:03:17,443 INFO L290 TraceCheckUtils]: 60: Hoare triple {13090#false} assume !(#t~post8 < 20);havoc #t~post8; {13090#false} is VALID [2022-04-08 06:03:17,443 INFO L290 TraceCheckUtils]: 61: Hoare triple {13090#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13090#false} is VALID [2022-04-08 06:03:17,443 INFO L290 TraceCheckUtils]: 62: Hoare triple {13090#false} assume !(#t~post6 < 20);havoc #t~post6; {13090#false} is VALID [2022-04-08 06:03:17,443 INFO L272 TraceCheckUtils]: 63: Hoare triple {13090#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)); {13090#false} is VALID [2022-04-08 06:03:17,443 INFO L290 TraceCheckUtils]: 64: Hoare triple {13090#false} ~cond := #in~cond; {13090#false} is VALID [2022-04-08 06:03:17,443 INFO L290 TraceCheckUtils]: 65: Hoare triple {13090#false} assume 0 == ~cond; {13090#false} is VALID [2022-04-08 06:03:17,443 INFO L290 TraceCheckUtils]: 66: Hoare triple {13090#false} assume !false; {13090#false} is VALID [2022-04-08 06:03:17,443 INFO L134 CoverageAnalysis]: Checked inductivity of 72 backedges. 18 proven. 50 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:03:17,444 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:03:17,772 INFO L290 TraceCheckUtils]: 66: Hoare triple {13090#false} assume !false; {13090#false} is VALID [2022-04-08 06:03:17,772 INFO L290 TraceCheckUtils]: 65: Hoare triple {13090#false} assume 0 == ~cond; {13090#false} is VALID [2022-04-08 06:03:17,772 INFO L290 TraceCheckUtils]: 64: Hoare triple {13090#false} ~cond := #in~cond; {13090#false} is VALID [2022-04-08 06:03:17,773 INFO L272 TraceCheckUtils]: 63: Hoare triple {13090#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)); {13090#false} is VALID [2022-04-08 06:03:17,773 INFO L290 TraceCheckUtils]: 62: Hoare triple {13090#false} assume !(#t~post6 < 20);havoc #t~post6; {13090#false} is VALID [2022-04-08 06:03:17,773 INFO L290 TraceCheckUtils]: 61: Hoare triple {13090#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13090#false} is VALID [2022-04-08 06:03:17,773 INFO L290 TraceCheckUtils]: 60: Hoare triple {13090#false} assume !(#t~post8 < 20);havoc #t~post8; {13090#false} is VALID [2022-04-08 06:03:17,773 INFO L290 TraceCheckUtils]: 59: Hoare triple {13090#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {13090#false} is VALID [2022-04-08 06:03:17,773 INFO L290 TraceCheckUtils]: 58: Hoare triple {13323#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {13090#false} is VALID [2022-04-08 06:03:17,774 INFO L290 TraceCheckUtils]: 57: Hoare triple {13327#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13323#(< |main_#t~post7| 20)} is VALID [2022-04-08 06:03:17,774 INFO L290 TraceCheckUtils]: 56: Hoare triple {13327#(< ~counter~0 20)} assume !!(0 != ~r~0); {13327#(< ~counter~0 20)} is VALID [2022-04-08 06:03:17,774 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {13089#true} {13327#(< ~counter~0 20)} #94#return; {13327#(< ~counter~0 20)} is VALID [2022-04-08 06:03:17,774 INFO L290 TraceCheckUtils]: 54: Hoare triple {13089#true} assume true; {13089#true} is VALID [2022-04-08 06:03:17,774 INFO L290 TraceCheckUtils]: 53: Hoare triple {13089#true} assume !(0 == ~cond); {13089#true} is VALID [2022-04-08 06:03:17,775 INFO L290 TraceCheckUtils]: 52: Hoare triple {13089#true} ~cond := #in~cond; {13089#true} is VALID [2022-04-08 06:03:17,775 INFO L272 TraceCheckUtils]: 51: Hoare triple {13327#(< ~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)); {13089#true} is VALID [2022-04-08 06:03:17,775 INFO L290 TraceCheckUtils]: 50: Hoare triple {13327#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {13327#(< ~counter~0 20)} is VALID [2022-04-08 06:03:17,776 INFO L290 TraceCheckUtils]: 49: Hoare triple {13352#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13327#(< ~counter~0 20)} is VALID [2022-04-08 06:03:17,776 INFO L290 TraceCheckUtils]: 48: Hoare triple {13352#(< ~counter~0 19)} assume !(~r~0 < 0); {13352#(< ~counter~0 19)} is VALID [2022-04-08 06:03:17,776 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {13089#true} {13352#(< ~counter~0 19)} #98#return; {13352#(< ~counter~0 19)} is VALID [2022-04-08 06:03:17,776 INFO L290 TraceCheckUtils]: 46: Hoare triple {13089#true} assume true; {13089#true} is VALID [2022-04-08 06:03:17,776 INFO L290 TraceCheckUtils]: 45: Hoare triple {13089#true} assume !(0 == ~cond); {13089#true} is VALID [2022-04-08 06:03:17,777 INFO L290 TraceCheckUtils]: 44: Hoare triple {13089#true} ~cond := #in~cond; {13089#true} is VALID [2022-04-08 06:03:17,777 INFO L272 TraceCheckUtils]: 43: Hoare triple {13352#(< ~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)); {13089#true} is VALID [2022-04-08 06:03:17,777 INFO L290 TraceCheckUtils]: 42: Hoare triple {13352#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {13352#(< ~counter~0 19)} is VALID [2022-04-08 06:03:17,777 INFO L290 TraceCheckUtils]: 41: Hoare triple {13377#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {13352#(< ~counter~0 19)} is VALID [2022-04-08 06:03:17,778 INFO L290 TraceCheckUtils]: 40: Hoare triple {13377#(< ~counter~0 18)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {13377#(< ~counter~0 18)} is VALID [2022-04-08 06:03:17,778 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {13089#true} {13377#(< ~counter~0 18)} #98#return; {13377#(< ~counter~0 18)} is VALID [2022-04-08 06:03:17,778 INFO L290 TraceCheckUtils]: 38: Hoare triple {13089#true} assume true; {13089#true} is VALID [2022-04-08 06:03:17,778 INFO L290 TraceCheckUtils]: 37: Hoare triple {13089#true} assume !(0 == ~cond); {13089#true} is VALID [2022-04-08 06:03:17,778 INFO L290 TraceCheckUtils]: 36: Hoare triple {13089#true} ~cond := #in~cond; {13089#true} is VALID [2022-04-08 06:03:17,778 INFO L272 TraceCheckUtils]: 35: Hoare triple {13377#(< ~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)); {13089#true} is VALID [2022-04-08 06:03:17,779 INFO L290 TraceCheckUtils]: 34: Hoare triple {13377#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {13377#(< ~counter~0 18)} is VALID [2022-04-08 06:03:17,779 INFO L290 TraceCheckUtils]: 33: Hoare triple {13402#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {13377#(< ~counter~0 18)} is VALID [2022-04-08 06:03:17,779 INFO L290 TraceCheckUtils]: 32: Hoare triple {13402#(< ~counter~0 17)} assume !(~r~0 > 0); {13402#(< ~counter~0 17)} is VALID [2022-04-08 06:03:17,780 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {13089#true} {13402#(< ~counter~0 17)} #96#return; {13402#(< ~counter~0 17)} is VALID [2022-04-08 06:03:17,780 INFO L290 TraceCheckUtils]: 30: Hoare triple {13089#true} assume true; {13089#true} is VALID [2022-04-08 06:03:17,780 INFO L290 TraceCheckUtils]: 29: Hoare triple {13089#true} assume !(0 == ~cond); {13089#true} is VALID [2022-04-08 06:03:17,780 INFO L290 TraceCheckUtils]: 28: Hoare triple {13089#true} ~cond := #in~cond; {13089#true} is VALID [2022-04-08 06:03:17,780 INFO L272 TraceCheckUtils]: 27: Hoare triple {13402#(< ~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)); {13089#true} is VALID [2022-04-08 06:03:17,780 INFO L290 TraceCheckUtils]: 26: Hoare triple {13402#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {13402#(< ~counter~0 17)} is VALID [2022-04-08 06:03:17,781 INFO L290 TraceCheckUtils]: 25: Hoare triple {13427#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13402#(< ~counter~0 17)} is VALID [2022-04-08 06:03:17,781 INFO L290 TraceCheckUtils]: 24: Hoare triple {13427#(< ~counter~0 16)} assume !!(0 != ~r~0); {13427#(< ~counter~0 16)} is VALID [2022-04-08 06:03:17,782 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {13089#true} {13427#(< ~counter~0 16)} #94#return; {13427#(< ~counter~0 16)} is VALID [2022-04-08 06:03:17,782 INFO L290 TraceCheckUtils]: 22: Hoare triple {13089#true} assume true; {13089#true} is VALID [2022-04-08 06:03:17,782 INFO L290 TraceCheckUtils]: 21: Hoare triple {13089#true} assume !(0 == ~cond); {13089#true} is VALID [2022-04-08 06:03:17,782 INFO L290 TraceCheckUtils]: 20: Hoare triple {13089#true} ~cond := #in~cond; {13089#true} is VALID [2022-04-08 06:03:17,782 INFO L272 TraceCheckUtils]: 19: Hoare triple {13427#(< ~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)); {13089#true} is VALID [2022-04-08 06:03:17,782 INFO L290 TraceCheckUtils]: 18: Hoare triple {13427#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {13427#(< ~counter~0 16)} is VALID [2022-04-08 06:03:17,783 INFO L290 TraceCheckUtils]: 17: Hoare triple {13452#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13427#(< ~counter~0 16)} is VALID [2022-04-08 06:03:17,783 INFO L290 TraceCheckUtils]: 16: Hoare triple {13452#(< ~counter~0 15)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {13452#(< ~counter~0 15)} is VALID [2022-04-08 06:03:17,783 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13089#true} {13452#(< ~counter~0 15)} #92#return; {13452#(< ~counter~0 15)} is VALID [2022-04-08 06:03:17,783 INFO L290 TraceCheckUtils]: 14: Hoare triple {13089#true} assume true; {13089#true} is VALID [2022-04-08 06:03:17,784 INFO L290 TraceCheckUtils]: 13: Hoare triple {13089#true} assume !(0 == ~cond); {13089#true} is VALID [2022-04-08 06:03:17,784 INFO L290 TraceCheckUtils]: 12: Hoare triple {13089#true} ~cond := #in~cond; {13089#true} is VALID [2022-04-08 06:03:17,784 INFO L272 TraceCheckUtils]: 11: Hoare triple {13452#(< ~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)); {13089#true} is VALID [2022-04-08 06:03:17,784 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13089#true} {13452#(< ~counter~0 15)} #90#return; {13452#(< ~counter~0 15)} is VALID [2022-04-08 06:03:17,784 INFO L290 TraceCheckUtils]: 9: Hoare triple {13089#true} assume true; {13089#true} is VALID [2022-04-08 06:03:17,784 INFO L290 TraceCheckUtils]: 8: Hoare triple {13089#true} assume !(0 == ~cond); {13089#true} is VALID [2022-04-08 06:03:17,784 INFO L290 TraceCheckUtils]: 7: Hoare triple {13089#true} ~cond := #in~cond; {13089#true} is VALID [2022-04-08 06:03:17,784 INFO L272 TraceCheckUtils]: 6: Hoare triple {13452#(< ~counter~0 15)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {13089#true} is VALID [2022-04-08 06:03:17,785 INFO L290 TraceCheckUtils]: 5: Hoare triple {13452#(< ~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; {13452#(< ~counter~0 15)} is VALID [2022-04-08 06:03:17,785 INFO L272 TraceCheckUtils]: 4: Hoare triple {13452#(< ~counter~0 15)} call #t~ret9 := main(); {13452#(< ~counter~0 15)} is VALID [2022-04-08 06:03:17,785 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13452#(< ~counter~0 15)} {13089#true} #102#return; {13452#(< ~counter~0 15)} is VALID [2022-04-08 06:03:17,786 INFO L290 TraceCheckUtils]: 2: Hoare triple {13452#(< ~counter~0 15)} assume true; {13452#(< ~counter~0 15)} is VALID [2022-04-08 06:03:17,786 INFO L290 TraceCheckUtils]: 1: Hoare triple {13089#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {13452#(< ~counter~0 15)} is VALID [2022-04-08 06:03:17,786 INFO L272 TraceCheckUtils]: 0: Hoare triple {13089#true} call ULTIMATE.init(); {13089#true} is VALID [2022-04-08 06:03:17,786 INFO L134 CoverageAnalysis]: Checked inductivity of 72 backedges. 18 proven. 10 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-08 06:03:17,787 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:03:17,787 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [518260253] [2022-04-08 06:03:17,787 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:03:17,787 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [173636436] [2022-04-08 06:03:17,787 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [173636436] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:03:17,787 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:03:17,787 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-08 06:03:17,787 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:03:17,787 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [961451136] [2022-04-08 06:03:17,787 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [961451136] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:03:17,787 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:03:17,787 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 06:03:17,787 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [853149474] [2022-04-08 06:03:17,788 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:03:17,788 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 8 states have internal predecessors, (46), 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 67 [2022-04-08 06:03:17,788 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:03:17,788 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 8 states have internal predecessors, (46), 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:03:17,830 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:03:17,830 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 06:03:17,830 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:03:17,831 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 06:03:17,831 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-08 06:03:17,831 INFO L87 Difference]: Start difference. First operand 156 states and 199 transitions. Second operand has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 8 states have internal predecessors, (46), 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:03:18,239 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:18,239 INFO L93 Difference]: Finished difference Result 229 states and 303 transitions. [2022-04-08 06:03:18,239 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 06:03:18,239 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 8 states have internal predecessors, (46), 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 67 [2022-04-08 06:03:18,240 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:03:18,240 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 8 states have internal predecessors, (46), 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:03:18,241 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 137 transitions. [2022-04-08 06:03:18,241 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 8 states have internal predecessors, (46), 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:03:18,242 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 137 transitions. [2022-04-08 06:03:18,242 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 137 transitions. [2022-04-08 06:03:18,335 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:03:18,337 INFO L225 Difference]: With dead ends: 229 [2022-04-08 06:03:18,337 INFO L226 Difference]: Without dead ends: 164 [2022-04-08 06:03:18,338 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 137 GetRequests, 119 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=152, Invalid=228, Unknown=0, NotChecked=0, Total=380 [2022-04-08 06:03:18,338 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 42 mSDsluCounter, 129 mSDsCounter, 0 mSdLazyCounter, 60 mSolverCounterSat, 38 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 42 SdHoareTripleChecker+Valid, 174 SdHoareTripleChecker+Invalid, 98 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 38 IncrementalHoareTripleChecker+Valid, 60 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:03:18,338 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [42 Valid, 174 Invalid, 98 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [38 Valid, 60 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:03:18,338 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states. [2022-04-08 06:03:18,479 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 164. [2022-04-08 06:03:18,479 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:03:18,480 INFO L82 GeneralOperation]: Start isEquivalent. First operand 164 states. Second operand has 164 states, 123 states have (on average 1.2113821138211383) internal successors, (149), 123 states have internal predecessors, (149), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 28 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 06:03:18,480 INFO L74 IsIncluded]: Start isIncluded. First operand 164 states. Second operand has 164 states, 123 states have (on average 1.2113821138211383) internal successors, (149), 123 states have internal predecessors, (149), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 28 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 06:03:18,486 INFO L87 Difference]: Start difference. First operand 164 states. Second operand has 164 states, 123 states have (on average 1.2113821138211383) internal successors, (149), 123 states have internal predecessors, (149), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 28 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 06:03:18,489 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:18,489 INFO L93 Difference]: Finished difference Result 164 states and 207 transitions. [2022-04-08 06:03:18,489 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 207 transitions. [2022-04-08 06:03:18,490 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:03:18,490 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:03:18,491 INFO L74 IsIncluded]: Start isIncluded. First operand has 164 states, 123 states have (on average 1.2113821138211383) internal successors, (149), 123 states have internal predecessors, (149), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 28 states have call predecessors, (28), 28 states have call successors, (28) Second operand 164 states. [2022-04-08 06:03:18,491 INFO L87 Difference]: Start difference. First operand has 164 states, 123 states have (on average 1.2113821138211383) internal successors, (149), 123 states have internal predecessors, (149), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 28 states have call predecessors, (28), 28 states have call successors, (28) Second operand 164 states. [2022-04-08 06:03:18,494 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:18,494 INFO L93 Difference]: Finished difference Result 164 states and 207 transitions. [2022-04-08 06:03:18,494 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 207 transitions. [2022-04-08 06:03:18,495 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:03:18,495 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:03:18,495 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:03:18,495 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:03:18,495 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 164 states, 123 states have (on average 1.2113821138211383) internal successors, (149), 123 states have internal predecessors, (149), 30 states have call successors, (30), 12 states have call predecessors, (30), 10 states have return successors, (28), 28 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 06:03:18,497 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 164 states to 164 states and 207 transitions. [2022-04-08 06:03:18,498 INFO L78 Accepts]: Start accepts. Automaton has 164 states and 207 transitions. Word has length 67 [2022-04-08 06:03:18,498 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:03:18,498 INFO L478 AbstractCegarLoop]: Abstraction has 164 states and 207 transitions. [2022-04-08 06:03:18,498 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 8 states have internal predecessors, (46), 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:03:18,498 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 164 states and 207 transitions. [2022-04-08 06:03:27,746 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 207 edges. 203 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-08 06:03:27,747 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 207 transitions. [2022-04-08 06:03:27,747 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 72 [2022-04-08 06:03:27,747 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:03:27,748 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 4, 4, 4, 4, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:03:27,765 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Ended with exit code 0 [2022-04-08 06:03:27,948 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:03:27,948 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:03:27,948 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:03:27,949 INFO L85 PathProgramCache]: Analyzing trace with hash 1645787183, now seen corresponding path program 5 times [2022-04-08 06:03:27,949 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:03:27,949 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1531232146] [2022-04-08 06:03:27,949 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:03:27,949 INFO L85 PathProgramCache]: Analyzing trace with hash 1645787183, now seen corresponding path program 6 times [2022-04-08 06:03:27,949 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:03:27,949 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1240846617] [2022-04-08 06:03:27,949 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:03:27,949 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:03:27,960 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:03:27,960 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2088124261] [2022-04-08 06:03:27,960 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:03:27,960 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:03:27,960 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:03:27,961 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:03:27,962 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:03:28,025 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-08 06:03:28,025 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:03:28,026 INFO L263 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 06:03:28,039 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:03:28,040 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:03:28,369 INFO L272 TraceCheckUtils]: 0: Hoare triple {14628#true} call ULTIMATE.init(); {14628#true} is VALID [2022-04-08 06:03:28,370 INFO L290 TraceCheckUtils]: 1: Hoare triple {14628#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,370 INFO L290 TraceCheckUtils]: 2: Hoare triple {14636#(<= ~counter~0 0)} assume true; {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,370 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14636#(<= ~counter~0 0)} {14628#true} #102#return; {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,371 INFO L272 TraceCheckUtils]: 4: Hoare triple {14636#(<= ~counter~0 0)} call #t~ret9 := main(); {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,371 INFO L290 TraceCheckUtils]: 5: Hoare triple {14636#(<= ~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; {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,371 INFO L272 TraceCheckUtils]: 6: Hoare triple {14636#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,372 INFO L290 TraceCheckUtils]: 7: Hoare triple {14636#(<= ~counter~0 0)} ~cond := #in~cond; {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,372 INFO L290 TraceCheckUtils]: 8: Hoare triple {14636#(<= ~counter~0 0)} assume !(0 == ~cond); {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,372 INFO L290 TraceCheckUtils]: 9: Hoare triple {14636#(<= ~counter~0 0)} assume true; {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,373 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14636#(<= ~counter~0 0)} {14636#(<= ~counter~0 0)} #90#return; {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,373 INFO L272 TraceCheckUtils]: 11: Hoare triple {14636#(<= ~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)); {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,373 INFO L290 TraceCheckUtils]: 12: Hoare triple {14636#(<= ~counter~0 0)} ~cond := #in~cond; {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,374 INFO L290 TraceCheckUtils]: 13: Hoare triple {14636#(<= ~counter~0 0)} assume !(0 == ~cond); {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,374 INFO L290 TraceCheckUtils]: 14: Hoare triple {14636#(<= ~counter~0 0)} assume true; {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,374 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14636#(<= ~counter~0 0)} {14636#(<= ~counter~0 0)} #92#return; {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,375 INFO L290 TraceCheckUtils]: 16: Hoare triple {14636#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {14636#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:28,375 INFO L290 TraceCheckUtils]: 17: Hoare triple {14636#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14685#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:28,375 INFO L290 TraceCheckUtils]: 18: Hoare triple {14685#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {14685#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:28,376 INFO L272 TraceCheckUtils]: 19: Hoare triple {14685#(<= ~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)); {14685#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:28,376 INFO L290 TraceCheckUtils]: 20: Hoare triple {14685#(<= ~counter~0 1)} ~cond := #in~cond; {14685#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:28,377 INFO L290 TraceCheckUtils]: 21: Hoare triple {14685#(<= ~counter~0 1)} assume !(0 == ~cond); {14685#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:28,377 INFO L290 TraceCheckUtils]: 22: Hoare triple {14685#(<= ~counter~0 1)} assume true; {14685#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:28,377 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {14685#(<= ~counter~0 1)} {14685#(<= ~counter~0 1)} #94#return; {14685#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:28,378 INFO L290 TraceCheckUtils]: 24: Hoare triple {14685#(<= ~counter~0 1)} assume !!(0 != ~r~0); {14685#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:28,378 INFO L290 TraceCheckUtils]: 25: Hoare triple {14685#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14710#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:28,378 INFO L290 TraceCheckUtils]: 26: Hoare triple {14710#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {14710#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:28,379 INFO L272 TraceCheckUtils]: 27: Hoare triple {14710#(<= ~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)); {14710#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:28,379 INFO L290 TraceCheckUtils]: 28: Hoare triple {14710#(<= ~counter~0 2)} ~cond := #in~cond; {14710#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:28,379 INFO L290 TraceCheckUtils]: 29: Hoare triple {14710#(<= ~counter~0 2)} assume !(0 == ~cond); {14710#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:28,380 INFO L290 TraceCheckUtils]: 30: Hoare triple {14710#(<= ~counter~0 2)} assume true; {14710#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:28,380 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {14710#(<= ~counter~0 2)} {14710#(<= ~counter~0 2)} #96#return; {14710#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:28,380 INFO L290 TraceCheckUtils]: 32: Hoare triple {14710#(<= ~counter~0 2)} assume !(~r~0 > 0); {14710#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:28,384 INFO L290 TraceCheckUtils]: 33: Hoare triple {14710#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14735#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:28,384 INFO L290 TraceCheckUtils]: 34: Hoare triple {14735#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {14735#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:28,384 INFO L272 TraceCheckUtils]: 35: Hoare triple {14735#(<= ~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)); {14735#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:28,385 INFO L290 TraceCheckUtils]: 36: Hoare triple {14735#(<= ~counter~0 3)} ~cond := #in~cond; {14735#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:28,385 INFO L290 TraceCheckUtils]: 37: Hoare triple {14735#(<= ~counter~0 3)} assume !(0 == ~cond); {14735#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:28,385 INFO L290 TraceCheckUtils]: 38: Hoare triple {14735#(<= ~counter~0 3)} assume true; {14735#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:28,386 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {14735#(<= ~counter~0 3)} {14735#(<= ~counter~0 3)} #98#return; {14735#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:28,386 INFO L290 TraceCheckUtils]: 40: Hoare triple {14735#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {14735#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:28,386 INFO L290 TraceCheckUtils]: 41: Hoare triple {14735#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14760#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:28,387 INFO L290 TraceCheckUtils]: 42: Hoare triple {14760#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {14760#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:28,387 INFO L272 TraceCheckUtils]: 43: Hoare triple {14760#(<= ~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)); {14760#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:28,388 INFO L290 TraceCheckUtils]: 44: Hoare triple {14760#(<= ~counter~0 4)} ~cond := #in~cond; {14760#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:28,388 INFO L290 TraceCheckUtils]: 45: Hoare triple {14760#(<= ~counter~0 4)} assume !(0 == ~cond); {14760#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:28,388 INFO L290 TraceCheckUtils]: 46: Hoare triple {14760#(<= ~counter~0 4)} assume true; {14760#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:28,389 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {14760#(<= ~counter~0 4)} {14760#(<= ~counter~0 4)} #98#return; {14760#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:28,389 INFO L290 TraceCheckUtils]: 48: Hoare triple {14760#(<= ~counter~0 4)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {14760#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:28,389 INFO L290 TraceCheckUtils]: 49: Hoare triple {14760#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14785#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:28,390 INFO L290 TraceCheckUtils]: 50: Hoare triple {14785#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {14785#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:28,390 INFO L272 TraceCheckUtils]: 51: Hoare triple {14785#(<= ~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)); {14785#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:28,390 INFO L290 TraceCheckUtils]: 52: Hoare triple {14785#(<= ~counter~0 5)} ~cond := #in~cond; {14785#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:28,391 INFO L290 TraceCheckUtils]: 53: Hoare triple {14785#(<= ~counter~0 5)} assume !(0 == ~cond); {14785#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:28,391 INFO L290 TraceCheckUtils]: 54: Hoare triple {14785#(<= ~counter~0 5)} assume true; {14785#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:28,391 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14785#(<= ~counter~0 5)} {14785#(<= ~counter~0 5)} #98#return; {14785#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:28,392 INFO L290 TraceCheckUtils]: 56: Hoare triple {14785#(<= ~counter~0 5)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {14785#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:28,392 INFO L290 TraceCheckUtils]: 57: Hoare triple {14785#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14810#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:28,392 INFO L290 TraceCheckUtils]: 58: Hoare triple {14810#(<= ~counter~0 6)} assume !!(#t~post8 < 20);havoc #t~post8; {14810#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:28,393 INFO L272 TraceCheckUtils]: 59: Hoare triple {14810#(<= ~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)); {14810#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:28,399 INFO L290 TraceCheckUtils]: 60: Hoare triple {14810#(<= ~counter~0 6)} ~cond := #in~cond; {14810#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:28,399 INFO L290 TraceCheckUtils]: 61: Hoare triple {14810#(<= ~counter~0 6)} assume !(0 == ~cond); {14810#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:28,400 INFO L290 TraceCheckUtils]: 62: Hoare triple {14810#(<= ~counter~0 6)} assume true; {14810#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:28,400 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {14810#(<= ~counter~0 6)} {14810#(<= ~counter~0 6)} #98#return; {14810#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:28,401 INFO L290 TraceCheckUtils]: 64: Hoare triple {14810#(<= ~counter~0 6)} assume !(~r~0 < 0); {14810#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:28,401 INFO L290 TraceCheckUtils]: 65: Hoare triple {14810#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14835#(<= |main_#t~post6| 6)} is VALID [2022-04-08 06:03:28,401 INFO L290 TraceCheckUtils]: 66: Hoare triple {14835#(<= |main_#t~post6| 6)} assume !(#t~post6 < 20);havoc #t~post6; {14629#false} is VALID [2022-04-08 06:03:28,402 INFO L272 TraceCheckUtils]: 67: Hoare triple {14629#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)); {14629#false} is VALID [2022-04-08 06:03:28,402 INFO L290 TraceCheckUtils]: 68: Hoare triple {14629#false} ~cond := #in~cond; {14629#false} is VALID [2022-04-08 06:03:28,402 INFO L290 TraceCheckUtils]: 69: Hoare triple {14629#false} assume 0 == ~cond; {14629#false} is VALID [2022-04-08 06:03:28,402 INFO L290 TraceCheckUtils]: 70: Hoare triple {14629#false} assume !false; {14629#false} is VALID [2022-04-08 06:03:28,402 INFO L134 CoverageAnalysis]: Checked inductivity of 102 backedges. 12 proven. 86 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:03:28,402 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:03:28,784 INFO L290 TraceCheckUtils]: 70: Hoare triple {14629#false} assume !false; {14629#false} is VALID [2022-04-08 06:03:28,784 INFO L290 TraceCheckUtils]: 69: Hoare triple {14629#false} assume 0 == ~cond; {14629#false} is VALID [2022-04-08 06:03:28,784 INFO L290 TraceCheckUtils]: 68: Hoare triple {14629#false} ~cond := #in~cond; {14629#false} is VALID [2022-04-08 06:03:28,784 INFO L272 TraceCheckUtils]: 67: Hoare triple {14629#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)); {14629#false} is VALID [2022-04-08 06:03:28,784 INFO L290 TraceCheckUtils]: 66: Hoare triple {14863#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {14629#false} is VALID [2022-04-08 06:03:28,785 INFO L290 TraceCheckUtils]: 65: Hoare triple {14867#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14863#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:03:28,785 INFO L290 TraceCheckUtils]: 64: Hoare triple {14867#(< ~counter~0 20)} assume !(~r~0 < 0); {14867#(< ~counter~0 20)} is VALID [2022-04-08 06:03:28,786 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {14628#true} {14867#(< ~counter~0 20)} #98#return; {14867#(< ~counter~0 20)} is VALID [2022-04-08 06:03:28,786 INFO L290 TraceCheckUtils]: 62: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-08 06:03:28,786 INFO L290 TraceCheckUtils]: 61: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-08 06:03:28,786 INFO L290 TraceCheckUtils]: 60: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-08 06:03:28,786 INFO L272 TraceCheckUtils]: 59: Hoare triple {14867#(< ~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)); {14628#true} is VALID [2022-04-08 06:03:28,786 INFO L290 TraceCheckUtils]: 58: Hoare triple {14867#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {14867#(< ~counter~0 20)} is VALID [2022-04-08 06:03:28,787 INFO L290 TraceCheckUtils]: 57: Hoare triple {14892#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14867#(< ~counter~0 20)} is VALID [2022-04-08 06:03:28,787 INFO L290 TraceCheckUtils]: 56: Hoare triple {14892#(< ~counter~0 19)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {14892#(< ~counter~0 19)} is VALID [2022-04-08 06:03:28,788 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14628#true} {14892#(< ~counter~0 19)} #98#return; {14892#(< ~counter~0 19)} is VALID [2022-04-08 06:03:28,788 INFO L290 TraceCheckUtils]: 54: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-08 06:03:28,788 INFO L290 TraceCheckUtils]: 53: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-08 06:03:28,788 INFO L290 TraceCheckUtils]: 52: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-08 06:03:28,788 INFO L272 TraceCheckUtils]: 51: Hoare triple {14892#(< ~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)); {14628#true} is VALID [2022-04-08 06:03:28,788 INFO L290 TraceCheckUtils]: 50: Hoare triple {14892#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {14892#(< ~counter~0 19)} is VALID [2022-04-08 06:03:28,789 INFO L290 TraceCheckUtils]: 49: Hoare triple {14917#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14892#(< ~counter~0 19)} is VALID [2022-04-08 06:03:28,789 INFO L290 TraceCheckUtils]: 48: Hoare triple {14917#(< ~counter~0 18)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {14917#(< ~counter~0 18)} is VALID [2022-04-08 06:03:28,790 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {14628#true} {14917#(< ~counter~0 18)} #98#return; {14917#(< ~counter~0 18)} is VALID [2022-04-08 06:03:28,790 INFO L290 TraceCheckUtils]: 46: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-08 06:03:28,790 INFO L290 TraceCheckUtils]: 45: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-08 06:03:28,790 INFO L290 TraceCheckUtils]: 44: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-08 06:03:28,790 INFO L272 TraceCheckUtils]: 43: Hoare triple {14917#(< ~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)); {14628#true} is VALID [2022-04-08 06:03:28,790 INFO L290 TraceCheckUtils]: 42: Hoare triple {14917#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {14917#(< ~counter~0 18)} is VALID [2022-04-08 06:03:28,791 INFO L290 TraceCheckUtils]: 41: Hoare triple {14942#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14917#(< ~counter~0 18)} is VALID [2022-04-08 06:03:28,791 INFO L290 TraceCheckUtils]: 40: Hoare triple {14942#(< ~counter~0 17)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {14942#(< ~counter~0 17)} is VALID [2022-04-08 06:03:28,791 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {14628#true} {14942#(< ~counter~0 17)} #98#return; {14942#(< ~counter~0 17)} is VALID [2022-04-08 06:03:28,792 INFO L290 TraceCheckUtils]: 38: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-08 06:03:28,792 INFO L290 TraceCheckUtils]: 37: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-08 06:03:28,792 INFO L290 TraceCheckUtils]: 36: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-08 06:03:28,792 INFO L272 TraceCheckUtils]: 35: Hoare triple {14942#(< ~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)); {14628#true} is VALID [2022-04-08 06:03:28,792 INFO L290 TraceCheckUtils]: 34: Hoare triple {14942#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {14942#(< ~counter~0 17)} is VALID [2022-04-08 06:03:28,793 INFO L290 TraceCheckUtils]: 33: Hoare triple {14967#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14942#(< ~counter~0 17)} is VALID [2022-04-08 06:03:28,793 INFO L290 TraceCheckUtils]: 32: Hoare triple {14967#(< ~counter~0 16)} assume !(~r~0 > 0); {14967#(< ~counter~0 16)} is VALID [2022-04-08 06:03:28,793 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {14628#true} {14967#(< ~counter~0 16)} #96#return; {14967#(< ~counter~0 16)} is VALID [2022-04-08 06:03:28,793 INFO L290 TraceCheckUtils]: 30: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-08 06:03:28,794 INFO L290 TraceCheckUtils]: 29: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-08 06:03:28,794 INFO L290 TraceCheckUtils]: 28: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-08 06:03:28,794 INFO L272 TraceCheckUtils]: 27: Hoare triple {14967#(< ~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)); {14628#true} is VALID [2022-04-08 06:03:28,794 INFO L290 TraceCheckUtils]: 26: Hoare triple {14967#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {14967#(< ~counter~0 16)} is VALID [2022-04-08 06:03:28,794 INFO L290 TraceCheckUtils]: 25: Hoare triple {14992#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14967#(< ~counter~0 16)} is VALID [2022-04-08 06:03:28,795 INFO L290 TraceCheckUtils]: 24: Hoare triple {14992#(< ~counter~0 15)} assume !!(0 != ~r~0); {14992#(< ~counter~0 15)} is VALID [2022-04-08 06:03:28,795 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {14628#true} {14992#(< ~counter~0 15)} #94#return; {14992#(< ~counter~0 15)} is VALID [2022-04-08 06:03:28,795 INFO L290 TraceCheckUtils]: 22: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-08 06:03:28,796 INFO L290 TraceCheckUtils]: 21: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-08 06:03:28,796 INFO L290 TraceCheckUtils]: 20: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-08 06:03:28,796 INFO L272 TraceCheckUtils]: 19: Hoare triple {14992#(< ~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)); {14628#true} is VALID [2022-04-08 06:03:28,796 INFO L290 TraceCheckUtils]: 18: Hoare triple {14992#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {14992#(< ~counter~0 15)} is VALID [2022-04-08 06:03:28,796 INFO L290 TraceCheckUtils]: 17: Hoare triple {15017#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14992#(< ~counter~0 15)} is VALID [2022-04-08 06:03:28,797 INFO L290 TraceCheckUtils]: 16: Hoare triple {15017#(< ~counter~0 14)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {15017#(< ~counter~0 14)} is VALID [2022-04-08 06:03:28,797 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14628#true} {15017#(< ~counter~0 14)} #92#return; {15017#(< ~counter~0 14)} is VALID [2022-04-08 06:03:28,797 INFO L290 TraceCheckUtils]: 14: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-08 06:03:28,797 INFO L290 TraceCheckUtils]: 13: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-08 06:03:28,797 INFO L290 TraceCheckUtils]: 12: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-08 06:03:28,797 INFO L272 TraceCheckUtils]: 11: Hoare triple {15017#(< ~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)); {14628#true} is VALID [2022-04-08 06:03:28,798 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14628#true} {15017#(< ~counter~0 14)} #90#return; {15017#(< ~counter~0 14)} is VALID [2022-04-08 06:03:28,798 INFO L290 TraceCheckUtils]: 9: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-08 06:03:28,798 INFO L290 TraceCheckUtils]: 8: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-08 06:03:28,798 INFO L290 TraceCheckUtils]: 7: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-08 06:03:28,798 INFO L272 TraceCheckUtils]: 6: Hoare triple {15017#(< ~counter~0 14)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {14628#true} is VALID [2022-04-08 06:03:28,798 INFO L290 TraceCheckUtils]: 5: Hoare triple {15017#(< ~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; {15017#(< ~counter~0 14)} is VALID [2022-04-08 06:03:28,799 INFO L272 TraceCheckUtils]: 4: Hoare triple {15017#(< ~counter~0 14)} call #t~ret9 := main(); {15017#(< ~counter~0 14)} is VALID [2022-04-08 06:03:28,799 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15017#(< ~counter~0 14)} {14628#true} #102#return; {15017#(< ~counter~0 14)} is VALID [2022-04-08 06:03:28,799 INFO L290 TraceCheckUtils]: 2: Hoare triple {15017#(< ~counter~0 14)} assume true; {15017#(< ~counter~0 14)} is VALID [2022-04-08 06:03:28,800 INFO L290 TraceCheckUtils]: 1: Hoare triple {14628#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {15017#(< ~counter~0 14)} is VALID [2022-04-08 06:03:28,800 INFO L272 TraceCheckUtils]: 0: Hoare triple {14628#true} call ULTIMATE.init(); {14628#true} is VALID [2022-04-08 06:03:28,800 INFO L134 CoverageAnalysis]: Checked inductivity of 102 backedges. 12 proven. 26 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-08 06:03:28,800 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:03:28,800 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1240846617] [2022-04-08 06:03:28,800 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:03:28,801 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2088124261] [2022-04-08 06:03:28,801 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2088124261] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:03:28,801 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:03:28,801 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-08 06:03:28,801 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:03:28,801 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1531232146] [2022-04-08 06:03:28,801 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1531232146] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:03:28,801 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:03:28,801 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 06:03:28,801 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1042718413] [2022-04-08 06:03:28,801 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:03:28,802 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.8) internal successors, (48), 9 states have internal predecessors, (48), 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 71 [2022-04-08 06:03:28,802 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:03:28,802 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.8) internal successors, (48), 9 states have internal predecessors, (48), 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:03:28,847 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:03:28,847 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 06:03:28,847 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:03:28,848 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 06:03:28,848 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-08 06:03:28,848 INFO L87 Difference]: Start difference. First operand 164 states and 207 transitions. Second operand has 10 states, 10 states have (on average 4.8) internal successors, (48), 9 states have internal predecessors, (48), 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:03:29,316 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:29,316 INFO L93 Difference]: Finished difference Result 202 states and 256 transitions. [2022-04-08 06:03:29,316 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 06:03:29,316 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.8) internal successors, (48), 9 states have internal predecessors, (48), 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 71 [2022-04-08 06:03:29,316 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:03:29,316 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.8) internal successors, (48), 9 states have internal predecessors, (48), 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:03:29,318 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 135 transitions. [2022-04-08 06:03:29,318 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.8) internal successors, (48), 9 states have internal predecessors, (48), 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:03:29,319 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 135 transitions. [2022-04-08 06:03:29,319 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 135 transitions. [2022-04-08 06:03:29,406 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:03:29,409 INFO L225 Difference]: With dead ends: 202 [2022-04-08 06:03:29,409 INFO L226 Difference]: Without dead ends: 197 [2022-04-08 06:03:29,409 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 144 GetRequests, 125 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=170, Invalid=250, Unknown=0, NotChecked=0, Total=420 [2022-04-08 06:03:29,410 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 73 mSDsluCounter, 133 mSDsCounter, 0 mSdLazyCounter, 65 mSolverCounterSat, 60 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 181 SdHoareTripleChecker+Invalid, 125 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 60 IncrementalHoareTripleChecker+Valid, 65 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:03:29,410 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [73 Valid, 181 Invalid, 125 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [60 Valid, 65 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:03:29,410 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-08 06:03:29,579 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 185. [2022-04-08 06:03:29,579 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:03:29,579 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 185 states, 135 states have (on average 1.2074074074074075) internal successors, (163), 140 states have internal predecessors, (163), 37 states have call successors, (37), 14 states have call predecessors, (37), 12 states have return successors, (35), 30 states have call predecessors, (35), 35 states have call successors, (35) [2022-04-08 06:03:29,580 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 185 states, 135 states have (on average 1.2074074074074075) internal successors, (163), 140 states have internal predecessors, (163), 37 states have call successors, (37), 14 states have call predecessors, (37), 12 states have return successors, (35), 30 states have call predecessors, (35), 35 states have call successors, (35) [2022-04-08 06:03:29,580 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 185 states, 135 states have (on average 1.2074074074074075) internal successors, (163), 140 states have internal predecessors, (163), 37 states have call successors, (37), 14 states have call predecessors, (37), 12 states have return successors, (35), 30 states have call predecessors, (35), 35 states have call successors, (35) [2022-04-08 06:03:29,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:29,583 INFO L93 Difference]: Finished difference Result 197 states and 250 transitions. [2022-04-08 06:03:29,583 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 250 transitions. [2022-04-08 06:03:29,584 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:03:29,584 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:03:29,584 INFO L74 IsIncluded]: Start isIncluded. First operand has 185 states, 135 states have (on average 1.2074074074074075) internal successors, (163), 140 states have internal predecessors, (163), 37 states have call successors, (37), 14 states have call predecessors, (37), 12 states have return successors, (35), 30 states have call predecessors, (35), 35 states have call successors, (35) Second operand 197 states. [2022-04-08 06:03:29,584 INFO L87 Difference]: Start difference. First operand has 185 states, 135 states have (on average 1.2074074074074075) internal successors, (163), 140 states have internal predecessors, (163), 37 states have call successors, (37), 14 states have call predecessors, (37), 12 states have return successors, (35), 30 states have call predecessors, (35), 35 states have call successors, (35) Second operand 197 states. [2022-04-08 06:03:29,587 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:29,587 INFO L93 Difference]: Finished difference Result 197 states and 250 transitions. [2022-04-08 06:03:29,587 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 250 transitions. [2022-04-08 06:03:29,588 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:03:29,588 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:03:29,588 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:03:29,588 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:03:29,588 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 185 states, 135 states have (on average 1.2074074074074075) internal successors, (163), 140 states have internal predecessors, (163), 37 states have call successors, (37), 14 states have call predecessors, (37), 12 states have return successors, (35), 30 states have call predecessors, (35), 35 states have call successors, (35) [2022-04-08 06:03:29,591 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 185 states to 185 states and 235 transitions. [2022-04-08 06:03:29,592 INFO L78 Accepts]: Start accepts. Automaton has 185 states and 235 transitions. Word has length 71 [2022-04-08 06:03:29,592 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:03:29,592 INFO L478 AbstractCegarLoop]: Abstraction has 185 states and 235 transitions. [2022-04-08 06:03:29,592 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.8) internal successors, (48), 9 states have internal predecessors, (48), 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:03:29,592 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 185 states and 235 transitions. [2022-04-08 06:03:39,151 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 235 edges. 232 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-08 06:03:39,151 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 235 transitions. [2022-04-08 06:03:39,152 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2022-04-08 06:03:39,152 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:03:39,152 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:03:39,169 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:03:39,363 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:03:39,364 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:03:39,364 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:03:39,364 INFO L85 PathProgramCache]: Analyzing trace with hash -15963768, now seen corresponding path program 1 times [2022-04-08 06:03:39,364 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:03:39,364 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1273229952] [2022-04-08 06:03:39,365 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:03:39,365 INFO L85 PathProgramCache]: Analyzing trace with hash -15963768, now seen corresponding path program 2 times [2022-04-08 06:03:39,365 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:03:39,365 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [839300230] [2022-04-08 06:03:39,365 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:03:39,366 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:03:39,377 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:03:39,378 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [344241595] [2022-04-08 06:03:39,378 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:03:39,378 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:03:39,378 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:03:39,379 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:03:39,379 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:03:39,421 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:03:39,421 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:03:39,422 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 3 conjunts are in the unsatisfiable core [2022-04-08 06:03:39,431 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:03:39,431 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:03:39,614 INFO L272 TraceCheckUtils]: 0: Hoare triple {16245#true} call ULTIMATE.init(); {16245#true} is VALID [2022-04-08 06:03:39,614 INFO L290 TraceCheckUtils]: 1: Hoare triple {16245#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {16245#true} is VALID [2022-04-08 06:03:39,614 INFO L290 TraceCheckUtils]: 2: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-08 06:03:39,614 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16245#true} {16245#true} #102#return; {16245#true} is VALID [2022-04-08 06:03:39,614 INFO L272 TraceCheckUtils]: 4: Hoare triple {16245#true} call #t~ret9 := main(); {16245#true} is VALID [2022-04-08 06:03:39,615 INFO L290 TraceCheckUtils]: 5: Hoare triple {16245#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; {16245#true} is VALID [2022-04-08 06:03:39,615 INFO L272 TraceCheckUtils]: 6: Hoare triple {16245#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {16245#true} is VALID [2022-04-08 06:03:39,615 INFO L290 TraceCheckUtils]: 7: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-08 06:03:39,615 INFO L290 TraceCheckUtils]: 8: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-08 06:03:39,615 INFO L290 TraceCheckUtils]: 9: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-08 06:03:39,615 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16245#true} {16245#true} #90#return; {16245#true} is VALID [2022-04-08 06:03:39,615 INFO L272 TraceCheckUtils]: 11: Hoare triple {16245#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)); {16245#true} is VALID [2022-04-08 06:03:39,615 INFO L290 TraceCheckUtils]: 12: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-08 06:03:39,615 INFO L290 TraceCheckUtils]: 13: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-08 06:03:39,615 INFO L290 TraceCheckUtils]: 14: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-08 06:03:39,615 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16245#true} {16245#true} #92#return; {16245#true} is VALID [2022-04-08 06:03:39,615 INFO L290 TraceCheckUtils]: 16: Hoare triple {16245#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {16245#true} is VALID [2022-04-08 06:03:39,615 INFO L290 TraceCheckUtils]: 17: Hoare triple {16245#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16245#true} is VALID [2022-04-08 06:03:39,616 INFO L290 TraceCheckUtils]: 18: Hoare triple {16245#true} assume !!(#t~post6 < 20);havoc #t~post6; {16245#true} is VALID [2022-04-08 06:03:39,616 INFO L272 TraceCheckUtils]: 19: Hoare triple {16245#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)); {16245#true} is VALID [2022-04-08 06:03:39,616 INFO L290 TraceCheckUtils]: 20: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-08 06:03:39,616 INFO L290 TraceCheckUtils]: 21: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-08 06:03:39,616 INFO L290 TraceCheckUtils]: 22: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-08 06:03:39,616 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {16245#true} {16245#true} #94#return; {16245#true} is VALID [2022-04-08 06:03:39,616 INFO L290 TraceCheckUtils]: 24: Hoare triple {16245#true} assume !!(0 != ~r~0); {16245#true} is VALID [2022-04-08 06:03:39,616 INFO L290 TraceCheckUtils]: 25: Hoare triple {16245#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16245#true} is VALID [2022-04-08 06:03:39,616 INFO L290 TraceCheckUtils]: 26: Hoare triple {16245#true} assume !!(#t~post7 < 20);havoc #t~post7; {16245#true} is VALID [2022-04-08 06:03:39,616 INFO L272 TraceCheckUtils]: 27: Hoare triple {16245#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)); {16245#true} is VALID [2022-04-08 06:03:39,616 INFO L290 TraceCheckUtils]: 28: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-08 06:03:39,616 INFO L290 TraceCheckUtils]: 29: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-08 06:03:39,616 INFO L290 TraceCheckUtils]: 30: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-08 06:03:39,616 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {16245#true} {16245#true} #96#return; {16245#true} is VALID [2022-04-08 06:03:39,617 INFO L290 TraceCheckUtils]: 32: Hoare triple {16245#true} assume !(~r~0 > 0); {16245#true} is VALID [2022-04-08 06:03:39,617 INFO L290 TraceCheckUtils]: 33: Hoare triple {16245#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16245#true} is VALID [2022-04-08 06:03:39,617 INFO L290 TraceCheckUtils]: 34: Hoare triple {16245#true} assume !!(#t~post8 < 20);havoc #t~post8; {16245#true} is VALID [2022-04-08 06:03:39,617 INFO L272 TraceCheckUtils]: 35: Hoare triple {16245#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)); {16245#true} is VALID [2022-04-08 06:03:39,617 INFO L290 TraceCheckUtils]: 36: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-08 06:03:39,617 INFO L290 TraceCheckUtils]: 37: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-08 06:03:39,617 INFO L290 TraceCheckUtils]: 38: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-08 06:03:39,617 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {16245#true} {16245#true} #98#return; {16245#true} is VALID [2022-04-08 06:03:39,617 INFO L290 TraceCheckUtils]: 40: Hoare triple {16245#true} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {16245#true} is VALID [2022-04-08 06:03:39,617 INFO L290 TraceCheckUtils]: 41: Hoare triple {16245#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16245#true} is VALID [2022-04-08 06:03:39,617 INFO L290 TraceCheckUtils]: 42: Hoare triple {16245#true} assume !!(#t~post8 < 20);havoc #t~post8; {16245#true} is VALID [2022-04-08 06:03:39,617 INFO L272 TraceCheckUtils]: 43: Hoare triple {16245#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)); {16245#true} is VALID [2022-04-08 06:03:39,617 INFO L290 TraceCheckUtils]: 44: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-08 06:03:39,618 INFO L290 TraceCheckUtils]: 45: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-08 06:03:39,618 INFO L290 TraceCheckUtils]: 46: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-08 06:03:39,618 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {16245#true} {16245#true} #98#return; {16245#true} is VALID [2022-04-08 06:03:39,627 INFO L290 TraceCheckUtils]: 48: Hoare triple {16245#true} assume !(~r~0 < 0); {16394#(not (< main_~r~0 0))} is VALID [2022-04-08 06:03:39,627 INFO L290 TraceCheckUtils]: 49: Hoare triple {16394#(not (< main_~r~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16394#(not (< main_~r~0 0))} is VALID [2022-04-08 06:03:39,628 INFO L290 TraceCheckUtils]: 50: Hoare triple {16394#(not (< main_~r~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {16394#(not (< main_~r~0 0))} is VALID [2022-04-08 06:03:39,628 INFO L272 TraceCheckUtils]: 51: Hoare triple {16394#(not (< main_~r~0 0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {16245#true} is VALID [2022-04-08 06:03:39,628 INFO L290 TraceCheckUtils]: 52: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-08 06:03:39,628 INFO L290 TraceCheckUtils]: 53: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-08 06:03:39,628 INFO L290 TraceCheckUtils]: 54: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-08 06:03:39,628 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {16245#true} {16394#(not (< main_~r~0 0))} #94#return; {16394#(not (< main_~r~0 0))} is VALID [2022-04-08 06:03:39,629 INFO L290 TraceCheckUtils]: 56: Hoare triple {16394#(not (< main_~r~0 0))} assume !!(0 != ~r~0); {16419#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 06:03:39,629 INFO L290 TraceCheckUtils]: 57: Hoare triple {16419#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16419#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 06:03:39,630 INFO L290 TraceCheckUtils]: 58: Hoare triple {16419#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} assume !!(#t~post7 < 20);havoc #t~post7; {16419#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 06:03:39,630 INFO L272 TraceCheckUtils]: 59: Hoare triple {16419#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {16245#true} is VALID [2022-04-08 06:03:39,630 INFO L290 TraceCheckUtils]: 60: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-08 06:03:39,630 INFO L290 TraceCheckUtils]: 61: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-08 06:03:39,630 INFO L290 TraceCheckUtils]: 62: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-08 06:03:39,630 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {16245#true} {16419#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} #96#return; {16419#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 06:03:39,631 INFO L290 TraceCheckUtils]: 64: Hoare triple {16419#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} assume !(~r~0 > 0); {16246#false} is VALID [2022-04-08 06:03:39,631 INFO L290 TraceCheckUtils]: 65: Hoare triple {16246#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16246#false} is VALID [2022-04-08 06:03:39,631 INFO L290 TraceCheckUtils]: 66: Hoare triple {16246#false} assume !(#t~post8 < 20);havoc #t~post8; {16246#false} is VALID [2022-04-08 06:03:39,631 INFO L290 TraceCheckUtils]: 67: Hoare triple {16246#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16246#false} is VALID [2022-04-08 06:03:39,631 INFO L290 TraceCheckUtils]: 68: Hoare triple {16246#false} assume !(#t~post6 < 20);havoc #t~post6; {16246#false} is VALID [2022-04-08 06:03:39,631 INFO L272 TraceCheckUtils]: 69: Hoare triple {16246#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)); {16246#false} is VALID [2022-04-08 06:03:39,631 INFO L290 TraceCheckUtils]: 70: Hoare triple {16246#false} ~cond := #in~cond; {16246#false} is VALID [2022-04-08 06:03:39,631 INFO L290 TraceCheckUtils]: 71: Hoare triple {16246#false} assume 0 == ~cond; {16246#false} is VALID [2022-04-08 06:03:39,631 INFO L290 TraceCheckUtils]: 72: Hoare triple {16246#false} assume !false; {16246#false} is VALID [2022-04-08 06:03:39,632 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 28 proven. 0 refuted. 0 times theorem prover too weak. 68 trivial. 0 not checked. [2022-04-08 06:03:39,632 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 06:03:39,632 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:03:39,632 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [839300230] [2022-04-08 06:03:39,632 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:03:39,632 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [344241595] [2022-04-08 06:03:39,632 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [344241595] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:03:39,632 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:03:39,632 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 06:03:39,632 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:03:39,633 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1273229952] [2022-04-08 06:03:39,633 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1273229952] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:03:39,633 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:03:39,633 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 06:03:39,633 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1994696052] [2022-04-08 06:03:39,633 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:03:39,633 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 73 [2022-04-08 06:03:39,633 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:03:39,633 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 06:03:39,666 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:03:39,666 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 06:03:39,666 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:03:39,667 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 06:03:39,667 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-08 06:03:39,667 INFO L87 Difference]: Start difference. First operand 185 states and 235 transitions. Second operand has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 06:03:39,940 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:39,940 INFO L93 Difference]: Finished difference Result 284 states and 382 transitions. [2022-04-08 06:03:39,940 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 06:03:39,940 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 73 [2022-04-08 06:03:39,940 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:03:39,940 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 06:03:39,941 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 94 transitions. [2022-04-08 06:03:39,941 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 06:03:39,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 94 transitions. [2022-04-08 06:03:39,942 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 94 transitions. [2022-04-08 06:03:40,105 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:03:40,108 INFO L225 Difference]: With dead ends: 284 [2022-04-08 06:03:40,108 INFO L226 Difference]: Without dead ends: 219 [2022-04-08 06:03:40,109 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 70 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-08 06:03:40,109 INFO L913 BasicCegarLoop]: 60 mSDtfsCounter, 17 mSDsluCounter, 34 mSDsCounter, 0 mSdLazyCounter, 20 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 94 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 20 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:03:40,109 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 94 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 20 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:03:40,110 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 219 states. [2022-04-08 06:03:40,264 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 219 to 208. [2022-04-08 06:03:40,265 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:03:40,265 INFO L82 GeneralOperation]: Start isEquivalent. First operand 219 states. Second operand has 208 states, 152 states have (on average 1.2236842105263157) internal successors, (186), 158 states have internal predecessors, (186), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 06:03:40,265 INFO L74 IsIncluded]: Start isIncluded. First operand 219 states. Second operand has 208 states, 152 states have (on average 1.2236842105263157) internal successors, (186), 158 states have internal predecessors, (186), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 06:03:40,266 INFO L87 Difference]: Start difference. First operand 219 states. Second operand has 208 states, 152 states have (on average 1.2236842105263157) internal successors, (186), 158 states have internal predecessors, (186), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 06:03:40,270 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:40,270 INFO L93 Difference]: Finished difference Result 219 states and 285 transitions. [2022-04-08 06:03:40,270 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 285 transitions. [2022-04-08 06:03:40,270 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:03:40,270 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:03:40,271 INFO L74 IsIncluded]: Start isIncluded. First operand has 208 states, 152 states have (on average 1.2236842105263157) internal successors, (186), 158 states have internal predecessors, (186), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) Second operand 219 states. [2022-04-08 06:03:40,271 INFO L87 Difference]: Start difference. First operand has 208 states, 152 states have (on average 1.2236842105263157) internal successors, (186), 158 states have internal predecessors, (186), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) Second operand 219 states. [2022-04-08 06:03:40,275 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:40,275 INFO L93 Difference]: Finished difference Result 219 states and 285 transitions. [2022-04-08 06:03:40,275 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 285 transitions. [2022-04-08 06:03:40,276 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:03:40,276 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:03:40,276 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:03:40,276 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:03:40,276 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 208 states, 152 states have (on average 1.2236842105263157) internal successors, (186), 158 states have internal predecessors, (186), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 06:03:40,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 208 states to 208 states and 270 transitions. [2022-04-08 06:03:40,280 INFO L78 Accepts]: Start accepts. Automaton has 208 states and 270 transitions. Word has length 73 [2022-04-08 06:03:40,280 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:03:40,280 INFO L478 AbstractCegarLoop]: Abstraction has 208 states and 270 transitions. [2022-04-08 06:03:40,281 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 06:03:40,281 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 208 states and 270 transitions. [2022-04-08 06:03:48,821 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 270 edges. 268 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-08 06:03:48,822 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 270 transitions. [2022-04-08 06:03:48,822 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2022-04-08 06:03:48,822 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:03:48,822 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 5, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:03:48,839 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Ended with exit code 0 [2022-04-08 06:03:49,035 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:03:49,035 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:03:49,036 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:03:49,036 INFO L85 PathProgramCache]: Analyzing trace with hash -1401128268, now seen corresponding path program 7 times [2022-04-08 06:03:49,036 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:03:49,036 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1586974404] [2022-04-08 06:03:49,036 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:03:49,036 INFO L85 PathProgramCache]: Analyzing trace with hash -1401128268, now seen corresponding path program 8 times [2022-04-08 06:03:49,036 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:03:49,036 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [727921712] [2022-04-08 06:03:49,036 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:03:49,037 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:03:49,049 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:03:49,049 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1479122026] [2022-04-08 06:03:49,049 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:03:49,050 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:03:49,050 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:03:49,055 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:03:49,075 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:03:49,112 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:03:49,112 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:03:49,113 INFO L263 TraceCheckSpWp]: Trace formula consists of 204 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 06:03:49,126 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:03:49,127 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:03:49,434 INFO L272 TraceCheckUtils]: 0: Hoare triple {17889#true} call ULTIMATE.init(); {17889#true} is VALID [2022-04-08 06:03:49,434 INFO L290 TraceCheckUtils]: 1: Hoare triple {17889#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,434 INFO L290 TraceCheckUtils]: 2: Hoare triple {17897#(<= ~counter~0 0)} assume true; {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,435 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17897#(<= ~counter~0 0)} {17889#true} #102#return; {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,435 INFO L272 TraceCheckUtils]: 4: Hoare triple {17897#(<= ~counter~0 0)} call #t~ret9 := main(); {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,435 INFO L290 TraceCheckUtils]: 5: Hoare triple {17897#(<= ~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; {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,436 INFO L272 TraceCheckUtils]: 6: Hoare triple {17897#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,436 INFO L290 TraceCheckUtils]: 7: Hoare triple {17897#(<= ~counter~0 0)} ~cond := #in~cond; {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,436 INFO L290 TraceCheckUtils]: 8: Hoare triple {17897#(<= ~counter~0 0)} assume !(0 == ~cond); {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,437 INFO L290 TraceCheckUtils]: 9: Hoare triple {17897#(<= ~counter~0 0)} assume true; {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,437 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17897#(<= ~counter~0 0)} {17897#(<= ~counter~0 0)} #90#return; {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,437 INFO L272 TraceCheckUtils]: 11: Hoare triple {17897#(<= ~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)); {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,438 INFO L290 TraceCheckUtils]: 12: Hoare triple {17897#(<= ~counter~0 0)} ~cond := #in~cond; {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,438 INFO L290 TraceCheckUtils]: 13: Hoare triple {17897#(<= ~counter~0 0)} assume !(0 == ~cond); {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,438 INFO L290 TraceCheckUtils]: 14: Hoare triple {17897#(<= ~counter~0 0)} assume true; {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,439 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17897#(<= ~counter~0 0)} {17897#(<= ~counter~0 0)} #92#return; {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,439 INFO L290 TraceCheckUtils]: 16: Hoare triple {17897#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {17897#(<= ~counter~0 0)} is VALID [2022-04-08 06:03:49,439 INFO L290 TraceCheckUtils]: 17: Hoare triple {17897#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17946#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:49,440 INFO L290 TraceCheckUtils]: 18: Hoare triple {17946#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {17946#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:49,440 INFO L272 TraceCheckUtils]: 19: Hoare triple {17946#(<= ~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)); {17946#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:49,440 INFO L290 TraceCheckUtils]: 20: Hoare triple {17946#(<= ~counter~0 1)} ~cond := #in~cond; {17946#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:49,441 INFO L290 TraceCheckUtils]: 21: Hoare triple {17946#(<= ~counter~0 1)} assume !(0 == ~cond); {17946#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:49,441 INFO L290 TraceCheckUtils]: 22: Hoare triple {17946#(<= ~counter~0 1)} assume true; {17946#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:49,441 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {17946#(<= ~counter~0 1)} {17946#(<= ~counter~0 1)} #94#return; {17946#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:49,442 INFO L290 TraceCheckUtils]: 24: Hoare triple {17946#(<= ~counter~0 1)} assume !!(0 != ~r~0); {17946#(<= ~counter~0 1)} is VALID [2022-04-08 06:03:49,442 INFO L290 TraceCheckUtils]: 25: Hoare triple {17946#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17971#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:49,442 INFO L290 TraceCheckUtils]: 26: Hoare triple {17971#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {17971#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:49,443 INFO L272 TraceCheckUtils]: 27: Hoare triple {17971#(<= ~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)); {17971#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:49,443 INFO L290 TraceCheckUtils]: 28: Hoare triple {17971#(<= ~counter~0 2)} ~cond := #in~cond; {17971#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:49,443 INFO L290 TraceCheckUtils]: 29: Hoare triple {17971#(<= ~counter~0 2)} assume !(0 == ~cond); {17971#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:49,444 INFO L290 TraceCheckUtils]: 30: Hoare triple {17971#(<= ~counter~0 2)} assume true; {17971#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:49,444 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {17971#(<= ~counter~0 2)} {17971#(<= ~counter~0 2)} #96#return; {17971#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:49,444 INFO L290 TraceCheckUtils]: 32: Hoare triple {17971#(<= ~counter~0 2)} assume !(~r~0 > 0); {17971#(<= ~counter~0 2)} is VALID [2022-04-08 06:03:49,445 INFO L290 TraceCheckUtils]: 33: Hoare triple {17971#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {17996#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:49,445 INFO L290 TraceCheckUtils]: 34: Hoare triple {17996#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {17996#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:49,446 INFO L272 TraceCheckUtils]: 35: Hoare triple {17996#(<= ~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)); {17996#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:49,446 INFO L290 TraceCheckUtils]: 36: Hoare triple {17996#(<= ~counter~0 3)} ~cond := #in~cond; {17996#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:49,446 INFO L290 TraceCheckUtils]: 37: Hoare triple {17996#(<= ~counter~0 3)} assume !(0 == ~cond); {17996#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:49,446 INFO L290 TraceCheckUtils]: 38: Hoare triple {17996#(<= ~counter~0 3)} assume true; {17996#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:49,447 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {17996#(<= ~counter~0 3)} {17996#(<= ~counter~0 3)} #98#return; {17996#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:49,447 INFO L290 TraceCheckUtils]: 40: Hoare triple {17996#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {17996#(<= ~counter~0 3)} is VALID [2022-04-08 06:03:49,448 INFO L290 TraceCheckUtils]: 41: Hoare triple {17996#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18021#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:49,448 INFO L290 TraceCheckUtils]: 42: Hoare triple {18021#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {18021#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:49,448 INFO L272 TraceCheckUtils]: 43: Hoare triple {18021#(<= ~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)); {18021#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:49,449 INFO L290 TraceCheckUtils]: 44: Hoare triple {18021#(<= ~counter~0 4)} ~cond := #in~cond; {18021#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:49,449 INFO L290 TraceCheckUtils]: 45: Hoare triple {18021#(<= ~counter~0 4)} assume !(0 == ~cond); {18021#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:49,450 INFO L290 TraceCheckUtils]: 46: Hoare triple {18021#(<= ~counter~0 4)} assume true; {18021#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:49,450 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {18021#(<= ~counter~0 4)} {18021#(<= ~counter~0 4)} #98#return; {18021#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:49,450 INFO L290 TraceCheckUtils]: 48: Hoare triple {18021#(<= ~counter~0 4)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18021#(<= ~counter~0 4)} is VALID [2022-04-08 06:03:49,451 INFO L290 TraceCheckUtils]: 49: Hoare triple {18021#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18046#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:49,451 INFO L290 TraceCheckUtils]: 50: Hoare triple {18046#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {18046#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:49,452 INFO L272 TraceCheckUtils]: 51: Hoare triple {18046#(<= ~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)); {18046#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:49,452 INFO L290 TraceCheckUtils]: 52: Hoare triple {18046#(<= ~counter~0 5)} ~cond := #in~cond; {18046#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:49,452 INFO L290 TraceCheckUtils]: 53: Hoare triple {18046#(<= ~counter~0 5)} assume !(0 == ~cond); {18046#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:49,452 INFO L290 TraceCheckUtils]: 54: Hoare triple {18046#(<= ~counter~0 5)} assume true; {18046#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:49,453 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {18046#(<= ~counter~0 5)} {18046#(<= ~counter~0 5)} #98#return; {18046#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:49,453 INFO L290 TraceCheckUtils]: 56: Hoare triple {18046#(<= ~counter~0 5)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18046#(<= ~counter~0 5)} is VALID [2022-04-08 06:03:49,454 INFO L290 TraceCheckUtils]: 57: Hoare triple {18046#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18071#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:49,454 INFO L290 TraceCheckUtils]: 58: Hoare triple {18071#(<= ~counter~0 6)} assume !!(#t~post8 < 20);havoc #t~post8; {18071#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:49,454 INFO L272 TraceCheckUtils]: 59: Hoare triple {18071#(<= ~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)); {18071#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:49,455 INFO L290 TraceCheckUtils]: 60: Hoare triple {18071#(<= ~counter~0 6)} ~cond := #in~cond; {18071#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:49,455 INFO L290 TraceCheckUtils]: 61: Hoare triple {18071#(<= ~counter~0 6)} assume !(0 == ~cond); {18071#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:49,455 INFO L290 TraceCheckUtils]: 62: Hoare triple {18071#(<= ~counter~0 6)} assume true; {18071#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:49,456 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {18071#(<= ~counter~0 6)} {18071#(<= ~counter~0 6)} #98#return; {18071#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:49,460 INFO L290 TraceCheckUtils]: 64: Hoare triple {18071#(<= ~counter~0 6)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18071#(<= ~counter~0 6)} is VALID [2022-04-08 06:03:49,460 INFO L290 TraceCheckUtils]: 65: Hoare triple {18071#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18096#(<= |main_#t~post8| 6)} is VALID [2022-04-08 06:03:49,460 INFO L290 TraceCheckUtils]: 66: Hoare triple {18096#(<= |main_#t~post8| 6)} assume !(#t~post8 < 20);havoc #t~post8; {17890#false} is VALID [2022-04-08 06:03:49,460 INFO L290 TraceCheckUtils]: 67: Hoare triple {17890#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17890#false} is VALID [2022-04-08 06:03:49,460 INFO L290 TraceCheckUtils]: 68: Hoare triple {17890#false} assume !(#t~post6 < 20);havoc #t~post6; {17890#false} is VALID [2022-04-08 06:03:49,461 INFO L272 TraceCheckUtils]: 69: Hoare triple {17890#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)); {17890#false} is VALID [2022-04-08 06:03:49,461 INFO L290 TraceCheckUtils]: 70: Hoare triple {17890#false} ~cond := #in~cond; {17890#false} is VALID [2022-04-08 06:03:49,461 INFO L290 TraceCheckUtils]: 71: Hoare triple {17890#false} assume 0 == ~cond; {17890#false} is VALID [2022-04-08 06:03:49,461 INFO L290 TraceCheckUtils]: 72: Hoare triple {17890#false} assume !false; {17890#false} is VALID [2022-04-08 06:03:49,461 INFO L134 CoverageAnalysis]: Checked inductivity of 110 backedges. 14 proven. 92 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:03:49,461 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:03:49,796 INFO L290 TraceCheckUtils]: 72: Hoare triple {17890#false} assume !false; {17890#false} is VALID [2022-04-08 06:03:49,796 INFO L290 TraceCheckUtils]: 71: Hoare triple {17890#false} assume 0 == ~cond; {17890#false} is VALID [2022-04-08 06:03:49,796 INFO L290 TraceCheckUtils]: 70: Hoare triple {17890#false} ~cond := #in~cond; {17890#false} is VALID [2022-04-08 06:03:49,796 INFO L272 TraceCheckUtils]: 69: Hoare triple {17890#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)); {17890#false} is VALID [2022-04-08 06:03:49,796 INFO L290 TraceCheckUtils]: 68: Hoare triple {17890#false} assume !(#t~post6 < 20);havoc #t~post6; {17890#false} is VALID [2022-04-08 06:03:49,796 INFO L290 TraceCheckUtils]: 67: Hoare triple {17890#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17890#false} is VALID [2022-04-08 06:03:49,796 INFO L290 TraceCheckUtils]: 66: Hoare triple {18136#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {17890#false} is VALID [2022-04-08 06:03:49,797 INFO L290 TraceCheckUtils]: 65: Hoare triple {18140#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18136#(< |main_#t~post8| 20)} is VALID [2022-04-08 06:03:49,797 INFO L290 TraceCheckUtils]: 64: Hoare triple {18140#(< ~counter~0 20)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18140#(< ~counter~0 20)} is VALID [2022-04-08 06:03:49,797 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {17889#true} {18140#(< ~counter~0 20)} #98#return; {18140#(< ~counter~0 20)} is VALID [2022-04-08 06:03:49,798 INFO L290 TraceCheckUtils]: 62: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-08 06:03:49,798 INFO L290 TraceCheckUtils]: 61: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-08 06:03:49,798 INFO L290 TraceCheckUtils]: 60: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-08 06:03:49,798 INFO L272 TraceCheckUtils]: 59: Hoare triple {18140#(< ~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)); {17889#true} is VALID [2022-04-08 06:03:49,798 INFO L290 TraceCheckUtils]: 58: Hoare triple {18140#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {18140#(< ~counter~0 20)} is VALID [2022-04-08 06:03:49,799 INFO L290 TraceCheckUtils]: 57: Hoare triple {18165#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18140#(< ~counter~0 20)} is VALID [2022-04-08 06:03:49,799 INFO L290 TraceCheckUtils]: 56: Hoare triple {18165#(< ~counter~0 19)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18165#(< ~counter~0 19)} is VALID [2022-04-08 06:03:49,799 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {17889#true} {18165#(< ~counter~0 19)} #98#return; {18165#(< ~counter~0 19)} is VALID [2022-04-08 06:03:49,800 INFO L290 TraceCheckUtils]: 54: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-08 06:03:49,800 INFO L290 TraceCheckUtils]: 53: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-08 06:03:49,800 INFO L290 TraceCheckUtils]: 52: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-08 06:03:49,800 INFO L272 TraceCheckUtils]: 51: Hoare triple {18165#(< ~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)); {17889#true} is VALID [2022-04-08 06:03:49,800 INFO L290 TraceCheckUtils]: 50: Hoare triple {18165#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {18165#(< ~counter~0 19)} is VALID [2022-04-08 06:03:49,800 INFO L290 TraceCheckUtils]: 49: Hoare triple {18190#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18165#(< ~counter~0 19)} is VALID [2022-04-08 06:03:49,801 INFO L290 TraceCheckUtils]: 48: Hoare triple {18190#(< ~counter~0 18)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18190#(< ~counter~0 18)} is VALID [2022-04-08 06:03:49,801 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {17889#true} {18190#(< ~counter~0 18)} #98#return; {18190#(< ~counter~0 18)} is VALID [2022-04-08 06:03:49,801 INFO L290 TraceCheckUtils]: 46: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-08 06:03:49,801 INFO L290 TraceCheckUtils]: 45: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-08 06:03:49,801 INFO L290 TraceCheckUtils]: 44: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-08 06:03:49,802 INFO L272 TraceCheckUtils]: 43: Hoare triple {18190#(< ~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)); {17889#true} is VALID [2022-04-08 06:03:49,802 INFO L290 TraceCheckUtils]: 42: Hoare triple {18190#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {18190#(< ~counter~0 18)} is VALID [2022-04-08 06:03:49,802 INFO L290 TraceCheckUtils]: 41: Hoare triple {18215#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18190#(< ~counter~0 18)} is VALID [2022-04-08 06:03:49,803 INFO L290 TraceCheckUtils]: 40: Hoare triple {18215#(< ~counter~0 17)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18215#(< ~counter~0 17)} is VALID [2022-04-08 06:03:49,803 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {17889#true} {18215#(< ~counter~0 17)} #98#return; {18215#(< ~counter~0 17)} is VALID [2022-04-08 06:03:49,803 INFO L290 TraceCheckUtils]: 38: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-08 06:03:49,803 INFO L290 TraceCheckUtils]: 37: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-08 06:03:49,803 INFO L290 TraceCheckUtils]: 36: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-08 06:03:49,803 INFO L272 TraceCheckUtils]: 35: Hoare triple {18215#(< ~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)); {17889#true} is VALID [2022-04-08 06:03:49,804 INFO L290 TraceCheckUtils]: 34: Hoare triple {18215#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {18215#(< ~counter~0 17)} is VALID [2022-04-08 06:03:49,804 INFO L290 TraceCheckUtils]: 33: Hoare triple {18240#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18215#(< ~counter~0 17)} is VALID [2022-04-08 06:03:49,804 INFO L290 TraceCheckUtils]: 32: Hoare triple {18240#(< ~counter~0 16)} assume !(~r~0 > 0); {18240#(< ~counter~0 16)} is VALID [2022-04-08 06:03:49,805 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {17889#true} {18240#(< ~counter~0 16)} #96#return; {18240#(< ~counter~0 16)} is VALID [2022-04-08 06:03:49,805 INFO L290 TraceCheckUtils]: 30: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-08 06:03:49,805 INFO L290 TraceCheckUtils]: 29: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-08 06:03:49,805 INFO L290 TraceCheckUtils]: 28: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-08 06:03:49,805 INFO L272 TraceCheckUtils]: 27: Hoare triple {18240#(< ~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)); {17889#true} is VALID [2022-04-08 06:03:49,805 INFO L290 TraceCheckUtils]: 26: Hoare triple {18240#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {18240#(< ~counter~0 16)} is VALID [2022-04-08 06:03:49,806 INFO L290 TraceCheckUtils]: 25: Hoare triple {18265#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18240#(< ~counter~0 16)} is VALID [2022-04-08 06:03:49,806 INFO L290 TraceCheckUtils]: 24: Hoare triple {18265#(< ~counter~0 15)} assume !!(0 != ~r~0); {18265#(< ~counter~0 15)} is VALID [2022-04-08 06:03:49,807 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {17889#true} {18265#(< ~counter~0 15)} #94#return; {18265#(< ~counter~0 15)} is VALID [2022-04-08 06:03:49,807 INFO L290 TraceCheckUtils]: 22: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-08 06:03:49,807 INFO L290 TraceCheckUtils]: 21: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-08 06:03:49,807 INFO L290 TraceCheckUtils]: 20: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-08 06:03:49,807 INFO L272 TraceCheckUtils]: 19: Hoare triple {18265#(< ~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)); {17889#true} is VALID [2022-04-08 06:03:49,807 INFO L290 TraceCheckUtils]: 18: Hoare triple {18265#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {18265#(< ~counter~0 15)} is VALID [2022-04-08 06:03:49,808 INFO L290 TraceCheckUtils]: 17: Hoare triple {18290#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18265#(< ~counter~0 15)} is VALID [2022-04-08 06:03:49,808 INFO L290 TraceCheckUtils]: 16: Hoare triple {18290#(< ~counter~0 14)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {18290#(< ~counter~0 14)} is VALID [2022-04-08 06:03:49,808 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17889#true} {18290#(< ~counter~0 14)} #92#return; {18290#(< ~counter~0 14)} is VALID [2022-04-08 06:03:49,808 INFO L290 TraceCheckUtils]: 14: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-08 06:03:49,808 INFO L290 TraceCheckUtils]: 13: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-08 06:03:49,808 INFO L290 TraceCheckUtils]: 12: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-08 06:03:49,808 INFO L272 TraceCheckUtils]: 11: Hoare triple {18290#(< ~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)); {17889#true} is VALID [2022-04-08 06:03:49,809 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17889#true} {18290#(< ~counter~0 14)} #90#return; {18290#(< ~counter~0 14)} is VALID [2022-04-08 06:03:49,809 INFO L290 TraceCheckUtils]: 9: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-08 06:03:49,809 INFO L290 TraceCheckUtils]: 8: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-08 06:03:49,809 INFO L290 TraceCheckUtils]: 7: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-08 06:03:49,809 INFO L272 TraceCheckUtils]: 6: Hoare triple {18290#(< ~counter~0 14)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {17889#true} is VALID [2022-04-08 06:03:49,809 INFO L290 TraceCheckUtils]: 5: Hoare triple {18290#(< ~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; {18290#(< ~counter~0 14)} is VALID [2022-04-08 06:03:49,810 INFO L272 TraceCheckUtils]: 4: Hoare triple {18290#(< ~counter~0 14)} call #t~ret9 := main(); {18290#(< ~counter~0 14)} is VALID [2022-04-08 06:03:49,810 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18290#(< ~counter~0 14)} {17889#true} #102#return; {18290#(< ~counter~0 14)} is VALID [2022-04-08 06:03:49,810 INFO L290 TraceCheckUtils]: 2: Hoare triple {18290#(< ~counter~0 14)} assume true; {18290#(< ~counter~0 14)} is VALID [2022-04-08 06:03:49,811 INFO L290 TraceCheckUtils]: 1: Hoare triple {17889#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {18290#(< ~counter~0 14)} is VALID [2022-04-08 06:03:49,811 INFO L272 TraceCheckUtils]: 0: Hoare triple {17889#true} call ULTIMATE.init(); {17889#true} is VALID [2022-04-08 06:03:49,811 INFO L134 CoverageAnalysis]: Checked inductivity of 110 backedges. 14 proven. 32 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-08 06:03:49,811 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:03:49,811 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [727921712] [2022-04-08 06:03:49,811 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:03:49,811 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1479122026] [2022-04-08 06:03:49,811 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1479122026] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:03:49,812 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:03:49,812 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-08 06:03:49,812 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:03:49,812 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1586974404] [2022-04-08 06:03:49,812 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1586974404] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:03:49,812 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:03:49,812 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 06:03:49,812 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2008793404] [2022-04-08 06:03:49,812 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:03:49,813 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.0) internal successors, (50), 9 states have internal predecessors, (50), 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 73 [2022-04-08 06:03:49,813 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:03:49,813 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 5.0) internal successors, (50), 9 states have internal predecessors, (50), 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:03:49,858 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:03:49,858 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 06:03:49,858 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:03:49,858 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 06:03:49,858 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-08 06:03:49,859 INFO L87 Difference]: Start difference. First operand 208 states and 270 transitions. Second operand has 10 states, 10 states have (on average 5.0) internal successors, (50), 9 states have internal predecessors, (50), 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:03:50,416 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:50,416 INFO L93 Difference]: Finished difference Result 307 states and 412 transitions. [2022-04-08 06:03:50,416 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 06:03:50,416 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.0) internal successors, (50), 9 states have internal predecessors, (50), 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 73 [2022-04-08 06:03:50,416 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:03:50,416 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.0) internal successors, (50), 9 states have internal predecessors, (50), 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:03:50,418 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 157 transitions. [2022-04-08 06:03:50,418 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.0) internal successors, (50), 9 states have internal predecessors, (50), 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:03:50,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 157 transitions. [2022-04-08 06:03:50,419 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 157 transitions. [2022-04-08 06:03:50,536 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 157 edges. 157 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:03:50,539 INFO L225 Difference]: With dead ends: 307 [2022-04-08 06:03:50,539 INFO L226 Difference]: Without dead ends: 219 [2022-04-08 06:03:50,539 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 149 GetRequests, 129 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=185, Invalid=277, Unknown=0, NotChecked=0, Total=462 [2022-04-08 06:03:50,540 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 66 mSDsluCounter, 145 mSDsCounter, 0 mSdLazyCounter, 83 mSolverCounterSat, 43 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 66 SdHoareTripleChecker+Valid, 193 SdHoareTripleChecker+Invalid, 126 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 43 IncrementalHoareTripleChecker+Valid, 83 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:03:50,540 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [66 Valid, 193 Invalid, 126 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [43 Valid, 83 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:03:50,540 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 219 states. [2022-04-08 06:03:50,746 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 219 to 213. [2022-04-08 06:03:50,746 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:03:50,746 INFO L82 GeneralOperation]: Start isEquivalent. First operand 219 states. Second operand has 213 states, 157 states have (on average 1.2229299363057324) internal successors, (192), 162 states have internal predecessors, (192), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 36 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 06:03:50,747 INFO L74 IsIncluded]: Start isIncluded. First operand 219 states. Second operand has 213 states, 157 states have (on average 1.2229299363057324) internal successors, (192), 162 states have internal predecessors, (192), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 36 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 06:03:50,747 INFO L87 Difference]: Start difference. First operand 219 states. Second operand has 213 states, 157 states have (on average 1.2229299363057324) internal successors, (192), 162 states have internal predecessors, (192), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 36 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 06:03:50,750 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:50,750 INFO L93 Difference]: Finished difference Result 219 states and 282 transitions. [2022-04-08 06:03:50,751 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 282 transitions. [2022-04-08 06:03:50,751 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:03:50,751 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:03:50,751 INFO L74 IsIncluded]: Start isIncluded. First operand has 213 states, 157 states have (on average 1.2229299363057324) internal successors, (192), 162 states have internal predecessors, (192), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 36 states have call predecessors, (41), 41 states have call successors, (41) Second operand 219 states. [2022-04-08 06:03:50,752 INFO L87 Difference]: Start difference. First operand has 213 states, 157 states have (on average 1.2229299363057324) internal successors, (192), 162 states have internal predecessors, (192), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 36 states have call predecessors, (41), 41 states have call successors, (41) Second operand 219 states. [2022-04-08 06:03:50,755 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:50,755 INFO L93 Difference]: Finished difference Result 219 states and 282 transitions. [2022-04-08 06:03:50,755 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 282 transitions. [2022-04-08 06:03:50,756 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:03:50,756 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:03:50,756 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:03:50,756 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:03:50,756 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 213 states, 157 states have (on average 1.2229299363057324) internal successors, (192), 162 states have internal predecessors, (192), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 36 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 06:03:50,759 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 213 states to 213 states and 276 transitions. [2022-04-08 06:03:50,760 INFO L78 Accepts]: Start accepts. Automaton has 213 states and 276 transitions. Word has length 73 [2022-04-08 06:03:50,760 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:03:50,760 INFO L478 AbstractCegarLoop]: Abstraction has 213 states and 276 transitions. [2022-04-08 06:03:50,760 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 5.0) internal successors, (50), 9 states have internal predecessors, (50), 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:03:50,760 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 213 states and 276 transitions. [2022-04-08 06:04:02,857 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 276 edges. 271 inductive. 0 not inductive. 5 times theorem prover too weak to decide inductivity. [2022-04-08 06:04:02,858 INFO L276 IsEmpty]: Start isEmpty. Operand 213 states and 276 transitions. [2022-04-08 06:04:02,859 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-08 06:04:02,859 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:04:02,859 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:04:02,875 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-04-08 06:04:03,075 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:04:03,075 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:04:03,076 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:04:03,076 INFO L85 PathProgramCache]: Analyzing trace with hash 1116733197, now seen corresponding path program 1 times [2022-04-08 06:04:03,076 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:04:03,076 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1155154218] [2022-04-08 06:04:03,076 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:04:03,076 INFO L85 PathProgramCache]: Analyzing trace with hash 1116733197, now seen corresponding path program 2 times [2022-04-08 06:04:03,076 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:04:03,077 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [886134322] [2022-04-08 06:04:03,077 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:04:03,077 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:04:03,086 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:04:03,086 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [461238604] [2022-04-08 06:04:03,086 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:04:03,086 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:04:03,086 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:04:03,087 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:04:03,088 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:04:03,134 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:04:03,134 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:04:03,135 INFO L263 TraceCheckSpWp]: Trace formula consists of 201 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 06:04:03,148 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:04:03,148 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:04:03,449 INFO L272 TraceCheckUtils]: 0: Hoare triple {19830#true} call ULTIMATE.init(); {19830#true} is VALID [2022-04-08 06:04:03,450 INFO L290 TraceCheckUtils]: 1: Hoare triple {19830#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,450 INFO L290 TraceCheckUtils]: 2: Hoare triple {19838#(<= ~counter~0 0)} assume true; {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,451 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19838#(<= ~counter~0 0)} {19830#true} #102#return; {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,451 INFO L272 TraceCheckUtils]: 4: Hoare triple {19838#(<= ~counter~0 0)} call #t~ret9 := main(); {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,451 INFO L290 TraceCheckUtils]: 5: Hoare triple {19838#(<= ~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; {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,452 INFO L272 TraceCheckUtils]: 6: Hoare triple {19838#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,452 INFO L290 TraceCheckUtils]: 7: Hoare triple {19838#(<= ~counter~0 0)} ~cond := #in~cond; {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,452 INFO L290 TraceCheckUtils]: 8: Hoare triple {19838#(<= ~counter~0 0)} assume !(0 == ~cond); {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,453 INFO L290 TraceCheckUtils]: 9: Hoare triple {19838#(<= ~counter~0 0)} assume true; {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,453 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19838#(<= ~counter~0 0)} {19838#(<= ~counter~0 0)} #90#return; {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,453 INFO L272 TraceCheckUtils]: 11: Hoare triple {19838#(<= ~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)); {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,454 INFO L290 TraceCheckUtils]: 12: Hoare triple {19838#(<= ~counter~0 0)} ~cond := #in~cond; {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,454 INFO L290 TraceCheckUtils]: 13: Hoare triple {19838#(<= ~counter~0 0)} assume !(0 == ~cond); {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,454 INFO L290 TraceCheckUtils]: 14: Hoare triple {19838#(<= ~counter~0 0)} assume true; {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,455 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {19838#(<= ~counter~0 0)} {19838#(<= ~counter~0 0)} #92#return; {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,455 INFO L290 TraceCheckUtils]: 16: Hoare triple {19838#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {19838#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:03,456 INFO L290 TraceCheckUtils]: 17: Hoare triple {19838#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19887#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:03,456 INFO L290 TraceCheckUtils]: 18: Hoare triple {19887#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {19887#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:03,457 INFO L272 TraceCheckUtils]: 19: Hoare triple {19887#(<= ~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)); {19887#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:03,457 INFO L290 TraceCheckUtils]: 20: Hoare triple {19887#(<= ~counter~0 1)} ~cond := #in~cond; {19887#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:03,457 INFO L290 TraceCheckUtils]: 21: Hoare triple {19887#(<= ~counter~0 1)} assume !(0 == ~cond); {19887#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:03,458 INFO L290 TraceCheckUtils]: 22: Hoare triple {19887#(<= ~counter~0 1)} assume true; {19887#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:03,458 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {19887#(<= ~counter~0 1)} {19887#(<= ~counter~0 1)} #94#return; {19887#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:03,458 INFO L290 TraceCheckUtils]: 24: Hoare triple {19887#(<= ~counter~0 1)} assume !!(0 != ~r~0); {19887#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:03,459 INFO L290 TraceCheckUtils]: 25: Hoare triple {19887#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {19912#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:03,459 INFO L290 TraceCheckUtils]: 26: Hoare triple {19912#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {19912#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:03,460 INFO L272 TraceCheckUtils]: 27: Hoare triple {19912#(<= ~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)); {19912#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:03,460 INFO L290 TraceCheckUtils]: 28: Hoare triple {19912#(<= ~counter~0 2)} ~cond := #in~cond; {19912#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:03,460 INFO L290 TraceCheckUtils]: 29: Hoare triple {19912#(<= ~counter~0 2)} assume !(0 == ~cond); {19912#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:03,461 INFO L290 TraceCheckUtils]: 30: Hoare triple {19912#(<= ~counter~0 2)} assume true; {19912#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:03,461 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {19912#(<= ~counter~0 2)} {19912#(<= ~counter~0 2)} #96#return; {19912#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:03,462 INFO L290 TraceCheckUtils]: 32: Hoare triple {19912#(<= ~counter~0 2)} assume !(~r~0 > 0); {19912#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:03,462 INFO L290 TraceCheckUtils]: 33: Hoare triple {19912#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {19937#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:03,462 INFO L290 TraceCheckUtils]: 34: Hoare triple {19937#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {19937#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:03,463 INFO L272 TraceCheckUtils]: 35: Hoare triple {19937#(<= ~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)); {19937#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:03,463 INFO L290 TraceCheckUtils]: 36: Hoare triple {19937#(<= ~counter~0 3)} ~cond := #in~cond; {19937#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:03,464 INFO L290 TraceCheckUtils]: 37: Hoare triple {19937#(<= ~counter~0 3)} assume !(0 == ~cond); {19937#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:03,464 INFO L290 TraceCheckUtils]: 38: Hoare triple {19937#(<= ~counter~0 3)} assume true; {19937#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:03,464 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {19937#(<= ~counter~0 3)} {19937#(<= ~counter~0 3)} #98#return; {19937#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:03,465 INFO L290 TraceCheckUtils]: 40: Hoare triple {19937#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {19937#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:03,465 INFO L290 TraceCheckUtils]: 41: Hoare triple {19937#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {19962#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:03,466 INFO L290 TraceCheckUtils]: 42: Hoare triple {19962#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {19962#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:03,466 INFO L272 TraceCheckUtils]: 43: Hoare triple {19962#(<= ~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)); {19962#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:03,466 INFO L290 TraceCheckUtils]: 44: Hoare triple {19962#(<= ~counter~0 4)} ~cond := #in~cond; {19962#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:03,467 INFO L290 TraceCheckUtils]: 45: Hoare triple {19962#(<= ~counter~0 4)} assume !(0 == ~cond); {19962#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:03,467 INFO L290 TraceCheckUtils]: 46: Hoare triple {19962#(<= ~counter~0 4)} assume true; {19962#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:03,468 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {19962#(<= ~counter~0 4)} {19962#(<= ~counter~0 4)} #98#return; {19962#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:03,468 INFO L290 TraceCheckUtils]: 48: Hoare triple {19962#(<= ~counter~0 4)} assume !(~r~0 < 0); {19962#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:03,468 INFO L290 TraceCheckUtils]: 49: Hoare triple {19962#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19987#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:03,469 INFO L290 TraceCheckUtils]: 50: Hoare triple {19987#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {19987#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:03,469 INFO L272 TraceCheckUtils]: 51: Hoare triple {19987#(<= ~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)); {19987#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:03,470 INFO L290 TraceCheckUtils]: 52: Hoare triple {19987#(<= ~counter~0 5)} ~cond := #in~cond; {19987#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:03,470 INFO L290 TraceCheckUtils]: 53: Hoare triple {19987#(<= ~counter~0 5)} assume !(0 == ~cond); {19987#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:03,470 INFO L290 TraceCheckUtils]: 54: Hoare triple {19987#(<= ~counter~0 5)} assume true; {19987#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:03,471 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {19987#(<= ~counter~0 5)} {19987#(<= ~counter~0 5)} #94#return; {19987#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:03,471 INFO L290 TraceCheckUtils]: 56: Hoare triple {19987#(<= ~counter~0 5)} assume !!(0 != ~r~0); {19987#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:03,472 INFO L290 TraceCheckUtils]: 57: Hoare triple {19987#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20012#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:03,472 INFO L290 TraceCheckUtils]: 58: Hoare triple {20012#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {20012#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:03,473 INFO L272 TraceCheckUtils]: 59: Hoare triple {20012#(<= ~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)); {20012#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:03,473 INFO L290 TraceCheckUtils]: 60: Hoare triple {20012#(<= ~counter~0 6)} ~cond := #in~cond; {20012#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:03,473 INFO L290 TraceCheckUtils]: 61: Hoare triple {20012#(<= ~counter~0 6)} assume !(0 == ~cond); {20012#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:03,474 INFO L290 TraceCheckUtils]: 62: Hoare triple {20012#(<= ~counter~0 6)} assume true; {20012#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:03,474 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {20012#(<= ~counter~0 6)} {20012#(<= ~counter~0 6)} #96#return; {20012#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:03,475 INFO L290 TraceCheckUtils]: 64: Hoare triple {20012#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {20012#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:03,475 INFO L290 TraceCheckUtils]: 65: Hoare triple {20012#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20037#(<= |main_#t~post7| 6)} is VALID [2022-04-08 06:04:03,475 INFO L290 TraceCheckUtils]: 66: Hoare triple {20037#(<= |main_#t~post7| 6)} assume !(#t~post7 < 20);havoc #t~post7; {19831#false} is VALID [2022-04-08 06:04:03,480 INFO L290 TraceCheckUtils]: 67: Hoare triple {19831#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {19831#false} is VALID [2022-04-08 06:04:03,480 INFO L290 TraceCheckUtils]: 68: Hoare triple {19831#false} assume !(#t~post8 < 20);havoc #t~post8; {19831#false} is VALID [2022-04-08 06:04:03,480 INFO L290 TraceCheckUtils]: 69: Hoare triple {19831#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19831#false} is VALID [2022-04-08 06:04:03,480 INFO L290 TraceCheckUtils]: 70: Hoare triple {19831#false} assume !(#t~post6 < 20);havoc #t~post6; {19831#false} is VALID [2022-04-08 06:04:03,480 INFO L272 TraceCheckUtils]: 71: Hoare triple {19831#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)); {19831#false} is VALID [2022-04-08 06:04:03,480 INFO L290 TraceCheckUtils]: 72: Hoare triple {19831#false} ~cond := #in~cond; {19831#false} is VALID [2022-04-08 06:04:03,480 INFO L290 TraceCheckUtils]: 73: Hoare triple {19831#false} assume 0 == ~cond; {19831#false} is VALID [2022-04-08 06:04:03,480 INFO L290 TraceCheckUtils]: 74: Hoare triple {19831#false} assume !false; {19831#false} is VALID [2022-04-08 06:04:03,480 INFO L134 CoverageAnalysis]: Checked inductivity of 100 backedges. 20 proven. 76 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:04:03,480 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:04:03,839 INFO L290 TraceCheckUtils]: 74: Hoare triple {19831#false} assume !false; {19831#false} is VALID [2022-04-08 06:04:03,839 INFO L290 TraceCheckUtils]: 73: Hoare triple {19831#false} assume 0 == ~cond; {19831#false} is VALID [2022-04-08 06:04:03,839 INFO L290 TraceCheckUtils]: 72: Hoare triple {19831#false} ~cond := #in~cond; {19831#false} is VALID [2022-04-08 06:04:03,839 INFO L272 TraceCheckUtils]: 71: Hoare triple {19831#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)); {19831#false} is VALID [2022-04-08 06:04:03,839 INFO L290 TraceCheckUtils]: 70: Hoare triple {19831#false} assume !(#t~post6 < 20);havoc #t~post6; {19831#false} is VALID [2022-04-08 06:04:03,839 INFO L290 TraceCheckUtils]: 69: Hoare triple {19831#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19831#false} is VALID [2022-04-08 06:04:03,840 INFO L290 TraceCheckUtils]: 68: Hoare triple {19831#false} assume !(#t~post8 < 20);havoc #t~post8; {19831#false} is VALID [2022-04-08 06:04:03,843 INFO L290 TraceCheckUtils]: 67: Hoare triple {19831#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {19831#false} is VALID [2022-04-08 06:04:03,847 INFO L290 TraceCheckUtils]: 66: Hoare triple {20089#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {19831#false} is VALID [2022-04-08 06:04:03,847 INFO L290 TraceCheckUtils]: 65: Hoare triple {20093#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20089#(< |main_#t~post7| 20)} is VALID [2022-04-08 06:04:03,848 INFO L290 TraceCheckUtils]: 64: Hoare triple {20093#(< ~counter~0 20)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {20093#(< ~counter~0 20)} is VALID [2022-04-08 06:04:03,848 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {19830#true} {20093#(< ~counter~0 20)} #96#return; {20093#(< ~counter~0 20)} is VALID [2022-04-08 06:04:03,848 INFO L290 TraceCheckUtils]: 62: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-08 06:04:03,848 INFO L290 TraceCheckUtils]: 61: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-08 06:04:03,848 INFO L290 TraceCheckUtils]: 60: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-08 06:04:03,849 INFO L272 TraceCheckUtils]: 59: Hoare triple {20093#(< ~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)); {19830#true} is VALID [2022-04-08 06:04:03,849 INFO L290 TraceCheckUtils]: 58: Hoare triple {20093#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {20093#(< ~counter~0 20)} is VALID [2022-04-08 06:04:03,850 INFO L290 TraceCheckUtils]: 57: Hoare triple {20118#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20093#(< ~counter~0 20)} is VALID [2022-04-08 06:04:03,850 INFO L290 TraceCheckUtils]: 56: Hoare triple {20118#(< ~counter~0 19)} assume !!(0 != ~r~0); {20118#(< ~counter~0 19)} is VALID [2022-04-08 06:04:03,850 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {19830#true} {20118#(< ~counter~0 19)} #94#return; {20118#(< ~counter~0 19)} is VALID [2022-04-08 06:04:03,850 INFO L290 TraceCheckUtils]: 54: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-08 06:04:03,851 INFO L290 TraceCheckUtils]: 53: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-08 06:04:03,851 INFO L290 TraceCheckUtils]: 52: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-08 06:04:03,851 INFO L272 TraceCheckUtils]: 51: Hoare triple {20118#(< ~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)); {19830#true} is VALID [2022-04-08 06:04:03,851 INFO L290 TraceCheckUtils]: 50: Hoare triple {20118#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {20118#(< ~counter~0 19)} is VALID [2022-04-08 06:04:03,851 INFO L290 TraceCheckUtils]: 49: Hoare triple {20143#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20118#(< ~counter~0 19)} is VALID [2022-04-08 06:04:03,852 INFO L290 TraceCheckUtils]: 48: Hoare triple {20143#(< ~counter~0 18)} assume !(~r~0 < 0); {20143#(< ~counter~0 18)} is VALID [2022-04-08 06:04:03,852 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {19830#true} {20143#(< ~counter~0 18)} #98#return; {20143#(< ~counter~0 18)} is VALID [2022-04-08 06:04:03,852 INFO L290 TraceCheckUtils]: 46: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-08 06:04:03,852 INFO L290 TraceCheckUtils]: 45: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-08 06:04:03,852 INFO L290 TraceCheckUtils]: 44: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-08 06:04:03,852 INFO L272 TraceCheckUtils]: 43: Hoare triple {20143#(< ~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)); {19830#true} is VALID [2022-04-08 06:04:03,853 INFO L290 TraceCheckUtils]: 42: Hoare triple {20143#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {20143#(< ~counter~0 18)} is VALID [2022-04-08 06:04:03,853 INFO L290 TraceCheckUtils]: 41: Hoare triple {20168#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {20143#(< ~counter~0 18)} is VALID [2022-04-08 06:04:03,853 INFO L290 TraceCheckUtils]: 40: Hoare triple {20168#(< ~counter~0 17)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {20168#(< ~counter~0 17)} is VALID [2022-04-08 06:04:03,854 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {19830#true} {20168#(< ~counter~0 17)} #98#return; {20168#(< ~counter~0 17)} is VALID [2022-04-08 06:04:03,854 INFO L290 TraceCheckUtils]: 38: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-08 06:04:03,854 INFO L290 TraceCheckUtils]: 37: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-08 06:04:03,854 INFO L290 TraceCheckUtils]: 36: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-08 06:04:03,854 INFO L272 TraceCheckUtils]: 35: Hoare triple {20168#(< ~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)); {19830#true} is VALID [2022-04-08 06:04:03,854 INFO L290 TraceCheckUtils]: 34: Hoare triple {20168#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {20168#(< ~counter~0 17)} is VALID [2022-04-08 06:04:03,855 INFO L290 TraceCheckUtils]: 33: Hoare triple {20193#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {20168#(< ~counter~0 17)} is VALID [2022-04-08 06:04:03,855 INFO L290 TraceCheckUtils]: 32: Hoare triple {20193#(< ~counter~0 16)} assume !(~r~0 > 0); {20193#(< ~counter~0 16)} is VALID [2022-04-08 06:04:03,856 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {19830#true} {20193#(< ~counter~0 16)} #96#return; {20193#(< ~counter~0 16)} is VALID [2022-04-08 06:04:03,856 INFO L290 TraceCheckUtils]: 30: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-08 06:04:03,856 INFO L290 TraceCheckUtils]: 29: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-08 06:04:03,856 INFO L290 TraceCheckUtils]: 28: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-08 06:04:03,856 INFO L272 TraceCheckUtils]: 27: Hoare triple {20193#(< ~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)); {19830#true} is VALID [2022-04-08 06:04:03,856 INFO L290 TraceCheckUtils]: 26: Hoare triple {20193#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {20193#(< ~counter~0 16)} is VALID [2022-04-08 06:04:03,857 INFO L290 TraceCheckUtils]: 25: Hoare triple {20218#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20193#(< ~counter~0 16)} is VALID [2022-04-08 06:04:03,857 INFO L290 TraceCheckUtils]: 24: Hoare triple {20218#(< ~counter~0 15)} assume !!(0 != ~r~0); {20218#(< ~counter~0 15)} is VALID [2022-04-08 06:04:03,857 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {19830#true} {20218#(< ~counter~0 15)} #94#return; {20218#(< ~counter~0 15)} is VALID [2022-04-08 06:04:03,858 INFO L290 TraceCheckUtils]: 22: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-08 06:04:03,858 INFO L290 TraceCheckUtils]: 21: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-08 06:04:03,858 INFO L290 TraceCheckUtils]: 20: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-08 06:04:03,858 INFO L272 TraceCheckUtils]: 19: Hoare triple {20218#(< ~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)); {19830#true} is VALID [2022-04-08 06:04:03,858 INFO L290 TraceCheckUtils]: 18: Hoare triple {20218#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {20218#(< ~counter~0 15)} is VALID [2022-04-08 06:04:03,859 INFO L290 TraceCheckUtils]: 17: Hoare triple {20243#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20218#(< ~counter~0 15)} is VALID [2022-04-08 06:04:03,859 INFO L290 TraceCheckUtils]: 16: Hoare triple {20243#(< ~counter~0 14)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {20243#(< ~counter~0 14)} is VALID [2022-04-08 06:04:03,859 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {19830#true} {20243#(< ~counter~0 14)} #92#return; {20243#(< ~counter~0 14)} is VALID [2022-04-08 06:04:03,859 INFO L290 TraceCheckUtils]: 14: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-08 06:04:03,859 INFO L290 TraceCheckUtils]: 13: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-08 06:04:03,859 INFO L290 TraceCheckUtils]: 12: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-08 06:04:03,859 INFO L272 TraceCheckUtils]: 11: Hoare triple {20243#(< ~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)); {19830#true} is VALID [2022-04-08 06:04:03,860 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19830#true} {20243#(< ~counter~0 14)} #90#return; {20243#(< ~counter~0 14)} is VALID [2022-04-08 06:04:03,860 INFO L290 TraceCheckUtils]: 9: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-08 06:04:03,860 INFO L290 TraceCheckUtils]: 8: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-08 06:04:03,860 INFO L290 TraceCheckUtils]: 7: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-08 06:04:03,860 INFO L272 TraceCheckUtils]: 6: Hoare triple {20243#(< ~counter~0 14)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {19830#true} is VALID [2022-04-08 06:04:03,860 INFO L290 TraceCheckUtils]: 5: Hoare triple {20243#(< ~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; {20243#(< ~counter~0 14)} is VALID [2022-04-08 06:04:03,861 INFO L272 TraceCheckUtils]: 4: Hoare triple {20243#(< ~counter~0 14)} call #t~ret9 := main(); {20243#(< ~counter~0 14)} is VALID [2022-04-08 06:04:03,861 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20243#(< ~counter~0 14)} {19830#true} #102#return; {20243#(< ~counter~0 14)} is VALID [2022-04-08 06:04:03,861 INFO L290 TraceCheckUtils]: 2: Hoare triple {20243#(< ~counter~0 14)} assume true; {20243#(< ~counter~0 14)} is VALID [2022-04-08 06:04:03,862 INFO L290 TraceCheckUtils]: 1: Hoare triple {19830#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {20243#(< ~counter~0 14)} is VALID [2022-04-08 06:04:03,862 INFO L272 TraceCheckUtils]: 0: Hoare triple {19830#true} call ULTIMATE.init(); {19830#true} is VALID [2022-04-08 06:04:03,862 INFO L134 CoverageAnalysis]: Checked inductivity of 100 backedges. 20 proven. 16 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-08 06:04:03,863 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:04:03,863 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [886134322] [2022-04-08 06:04:03,863 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:04:03,863 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [461238604] [2022-04-08 06:04:03,863 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [461238604] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:04:03,863 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:04:03,863 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-08 06:04:03,863 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:04:03,863 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1155154218] [2022-04-08 06:04:03,863 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1155154218] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:04:03,863 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:04:03,863 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 06:04:03,863 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [970258583] [2022-04-08 06:04:03,864 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:04:03,864 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 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 75 [2022-04-08 06:04:03,864 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:04:03,864 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 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:04:03,910 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:04:03,910 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 06:04:03,910 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:04:03,910 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 06:04:03,910 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-08 06:04:03,911 INFO L87 Difference]: Start difference. First operand 213 states and 276 transitions. Second operand has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 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:04:04,455 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:04:04,455 INFO L93 Difference]: Finished difference Result 286 states and 378 transitions. [2022-04-08 06:04:04,455 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 06:04:04,455 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 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 75 [2022-04-08 06:04:04,456 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:04:04,456 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 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:04:04,457 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 157 transitions. [2022-04-08 06:04:04,457 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 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:04:04,458 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 157 transitions. [2022-04-08 06:04:04,458 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 157 transitions. [2022-04-08 06:04:04,565 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 157 edges. 157 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:04:04,568 INFO L225 Difference]: With dead ends: 286 [2022-04-08 06:04:04,568 INFO L226 Difference]: Without dead ends: 222 [2022-04-08 06:04:04,569 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 154 GetRequests, 133 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 29 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=205, Invalid=301, Unknown=0, NotChecked=0, Total=506 [2022-04-08 06:04:04,569 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 54 mSDsluCounter, 153 mSDsCounter, 0 mSdLazyCounter, 81 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 54 SdHoareTripleChecker+Valid, 201 SdHoareTripleChecker+Invalid, 130 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 81 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:04:04,571 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [54 Valid, 201 Invalid, 130 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 81 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:04:04,575 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 222 states. [2022-04-08 06:04:04,775 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 222 to 222. [2022-04-08 06:04:04,775 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:04:04,776 INFO L82 GeneralOperation]: Start isEquivalent. First operand 222 states. Second operand has 222 states, 166 states have (on average 1.2108433734939759) internal successors, (201), 168 states have internal predecessors, (201), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 39 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 06:04:04,776 INFO L74 IsIncluded]: Start isIncluded. First operand 222 states. Second operand has 222 states, 166 states have (on average 1.2108433734939759) internal successors, (201), 168 states have internal predecessors, (201), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 39 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 06:04:04,776 INFO L87 Difference]: Start difference. First operand 222 states. Second operand has 222 states, 166 states have (on average 1.2108433734939759) internal successors, (201), 168 states have internal predecessors, (201), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 39 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 06:04:04,780 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:04:04,780 INFO L93 Difference]: Finished difference Result 222 states and 285 transitions. [2022-04-08 06:04:04,780 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 285 transitions. [2022-04-08 06:04:04,780 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:04:04,780 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:04:04,781 INFO L74 IsIncluded]: Start isIncluded. First operand has 222 states, 166 states have (on average 1.2108433734939759) internal successors, (201), 168 states have internal predecessors, (201), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 39 states have call predecessors, (41), 41 states have call successors, (41) Second operand 222 states. [2022-04-08 06:04:04,781 INFO L87 Difference]: Start difference. First operand has 222 states, 166 states have (on average 1.2108433734939759) internal successors, (201), 168 states have internal predecessors, (201), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 39 states have call predecessors, (41), 41 states have call successors, (41) Second operand 222 states. [2022-04-08 06:04:04,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:04:04,784 INFO L93 Difference]: Finished difference Result 222 states and 285 transitions. [2022-04-08 06:04:04,784 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 285 transitions. [2022-04-08 06:04:04,785 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:04:04,785 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:04:04,785 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:04:04,785 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:04:04,785 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 222 states, 166 states have (on average 1.2108433734939759) internal successors, (201), 168 states have internal predecessors, (201), 43 states have call successors, (43), 14 states have call predecessors, (43), 12 states have return successors, (41), 39 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 06:04:04,789 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 222 states to 222 states and 285 transitions. [2022-04-08 06:04:04,789 INFO L78 Accepts]: Start accepts. Automaton has 222 states and 285 transitions. Word has length 75 [2022-04-08 06:04:04,789 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:04:04,789 INFO L478 AbstractCegarLoop]: Abstraction has 222 states and 285 transitions. [2022-04-08 06:04:04,789 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 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:04:04,789 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 222 states and 285 transitions. [2022-04-08 06:04:13,468 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 285 edges. 283 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-08 06:04:13,468 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 285 transitions. [2022-04-08 06:04:13,469 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-08 06:04:13,469 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:04:13,469 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 5, 5, 5, 5, 4, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:04:13,485 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:04:13,673 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:04:13,673 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:04:13,674 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:04:13,674 INFO L85 PathProgramCache]: Analyzing trace with hash -1970775776, now seen corresponding path program 7 times [2022-04-08 06:04:13,674 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:04:13,674 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1103695035] [2022-04-08 06:04:13,674 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:04:13,674 INFO L85 PathProgramCache]: Analyzing trace with hash -1970775776, now seen corresponding path program 8 times [2022-04-08 06:04:13,674 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:04:13,674 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1179949151] [2022-04-08 06:04:13,675 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:04:13,675 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:04:13,688 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:04:13,688 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [434472582] [2022-04-08 06:04:13,688 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:04:13,688 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:04:13,688 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:04:13,689 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:04:13,690 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:04:13,734 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:04:13,735 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:04:13,736 INFO L263 TraceCheckSpWp]: Trace formula consists of 214 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-08 06:04:13,751 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:04:13,752 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:04:14,111 INFO L272 TraceCheckUtils]: 0: Hoare triple {21767#true} call ULTIMATE.init(); {21767#true} is VALID [2022-04-08 06:04:14,111 INFO L290 TraceCheckUtils]: 1: Hoare triple {21767#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,112 INFO L290 TraceCheckUtils]: 2: Hoare triple {21775#(<= ~counter~0 0)} assume true; {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,112 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21775#(<= ~counter~0 0)} {21767#true} #102#return; {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,112 INFO L272 TraceCheckUtils]: 4: Hoare triple {21775#(<= ~counter~0 0)} call #t~ret9 := main(); {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,112 INFO L290 TraceCheckUtils]: 5: Hoare triple {21775#(<= ~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; {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,113 INFO L272 TraceCheckUtils]: 6: Hoare triple {21775#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,113 INFO L290 TraceCheckUtils]: 7: Hoare triple {21775#(<= ~counter~0 0)} ~cond := #in~cond; {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,113 INFO L290 TraceCheckUtils]: 8: Hoare triple {21775#(<= ~counter~0 0)} assume !(0 == ~cond); {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,114 INFO L290 TraceCheckUtils]: 9: Hoare triple {21775#(<= ~counter~0 0)} assume true; {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,114 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21775#(<= ~counter~0 0)} {21775#(<= ~counter~0 0)} #90#return; {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,114 INFO L272 TraceCheckUtils]: 11: Hoare triple {21775#(<= ~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)); {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,115 INFO L290 TraceCheckUtils]: 12: Hoare triple {21775#(<= ~counter~0 0)} ~cond := #in~cond; {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,115 INFO L290 TraceCheckUtils]: 13: Hoare triple {21775#(<= ~counter~0 0)} assume !(0 == ~cond); {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,115 INFO L290 TraceCheckUtils]: 14: Hoare triple {21775#(<= ~counter~0 0)} assume true; {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,116 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21775#(<= ~counter~0 0)} {21775#(<= ~counter~0 0)} #92#return; {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,116 INFO L290 TraceCheckUtils]: 16: Hoare triple {21775#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {21775#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:14,117 INFO L290 TraceCheckUtils]: 17: Hoare triple {21775#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21824#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:14,117 INFO L290 TraceCheckUtils]: 18: Hoare triple {21824#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {21824#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:14,117 INFO L272 TraceCheckUtils]: 19: Hoare triple {21824#(<= ~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)); {21824#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:14,118 INFO L290 TraceCheckUtils]: 20: Hoare triple {21824#(<= ~counter~0 1)} ~cond := #in~cond; {21824#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:14,118 INFO L290 TraceCheckUtils]: 21: Hoare triple {21824#(<= ~counter~0 1)} assume !(0 == ~cond); {21824#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:14,118 INFO L290 TraceCheckUtils]: 22: Hoare triple {21824#(<= ~counter~0 1)} assume true; {21824#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:14,119 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {21824#(<= ~counter~0 1)} {21824#(<= ~counter~0 1)} #94#return; {21824#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:14,119 INFO L290 TraceCheckUtils]: 24: Hoare triple {21824#(<= ~counter~0 1)} assume !!(0 != ~r~0); {21824#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:14,119 INFO L290 TraceCheckUtils]: 25: Hoare triple {21824#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21849#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:14,120 INFO L290 TraceCheckUtils]: 26: Hoare triple {21849#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {21849#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:14,120 INFO L272 TraceCheckUtils]: 27: Hoare triple {21849#(<= ~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)); {21849#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:14,120 INFO L290 TraceCheckUtils]: 28: Hoare triple {21849#(<= ~counter~0 2)} ~cond := #in~cond; {21849#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:14,121 INFO L290 TraceCheckUtils]: 29: Hoare triple {21849#(<= ~counter~0 2)} assume !(0 == ~cond); {21849#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:14,121 INFO L290 TraceCheckUtils]: 30: Hoare triple {21849#(<= ~counter~0 2)} assume true; {21849#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:14,122 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {21849#(<= ~counter~0 2)} {21849#(<= ~counter~0 2)} #96#return; {21849#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:14,122 INFO L290 TraceCheckUtils]: 32: Hoare triple {21849#(<= ~counter~0 2)} assume !(~r~0 > 0); {21849#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:14,122 INFO L290 TraceCheckUtils]: 33: Hoare triple {21849#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21874#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:14,123 INFO L290 TraceCheckUtils]: 34: Hoare triple {21874#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {21874#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:14,123 INFO L272 TraceCheckUtils]: 35: Hoare triple {21874#(<= ~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)); {21874#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:14,123 INFO L290 TraceCheckUtils]: 36: Hoare triple {21874#(<= ~counter~0 3)} ~cond := #in~cond; {21874#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:14,124 INFO L290 TraceCheckUtils]: 37: Hoare triple {21874#(<= ~counter~0 3)} assume !(0 == ~cond); {21874#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:14,124 INFO L290 TraceCheckUtils]: 38: Hoare triple {21874#(<= ~counter~0 3)} assume true; {21874#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:14,124 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {21874#(<= ~counter~0 3)} {21874#(<= ~counter~0 3)} #98#return; {21874#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:14,125 INFO L290 TraceCheckUtils]: 40: Hoare triple {21874#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {21874#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:14,125 INFO L290 TraceCheckUtils]: 41: Hoare triple {21874#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21899#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:14,125 INFO L290 TraceCheckUtils]: 42: Hoare triple {21899#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {21899#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:14,126 INFO L272 TraceCheckUtils]: 43: Hoare triple {21899#(<= ~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)); {21899#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:14,126 INFO L290 TraceCheckUtils]: 44: Hoare triple {21899#(<= ~counter~0 4)} ~cond := #in~cond; {21899#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:14,126 INFO L290 TraceCheckUtils]: 45: Hoare triple {21899#(<= ~counter~0 4)} assume !(0 == ~cond); {21899#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:14,127 INFO L290 TraceCheckUtils]: 46: Hoare triple {21899#(<= ~counter~0 4)} assume true; {21899#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:14,127 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {21899#(<= ~counter~0 4)} {21899#(<= ~counter~0 4)} #98#return; {21899#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:14,127 INFO L290 TraceCheckUtils]: 48: Hoare triple {21899#(<= ~counter~0 4)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {21899#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:14,128 INFO L290 TraceCheckUtils]: 49: Hoare triple {21899#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21924#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:14,128 INFO L290 TraceCheckUtils]: 50: Hoare triple {21924#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {21924#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:14,129 INFO L272 TraceCheckUtils]: 51: Hoare triple {21924#(<= ~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)); {21924#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:14,129 INFO L290 TraceCheckUtils]: 52: Hoare triple {21924#(<= ~counter~0 5)} ~cond := #in~cond; {21924#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:14,129 INFO L290 TraceCheckUtils]: 53: Hoare triple {21924#(<= ~counter~0 5)} assume !(0 == ~cond); {21924#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:14,129 INFO L290 TraceCheckUtils]: 54: Hoare triple {21924#(<= ~counter~0 5)} assume true; {21924#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:14,130 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {21924#(<= ~counter~0 5)} {21924#(<= ~counter~0 5)} #98#return; {21924#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:14,130 INFO L290 TraceCheckUtils]: 56: Hoare triple {21924#(<= ~counter~0 5)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {21924#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:14,131 INFO L290 TraceCheckUtils]: 57: Hoare triple {21924#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21949#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:14,131 INFO L290 TraceCheckUtils]: 58: Hoare triple {21949#(<= ~counter~0 6)} assume !!(#t~post8 < 20);havoc #t~post8; {21949#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:14,132 INFO L272 TraceCheckUtils]: 59: Hoare triple {21949#(<= ~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)); {21949#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:14,132 INFO L290 TraceCheckUtils]: 60: Hoare triple {21949#(<= ~counter~0 6)} ~cond := #in~cond; {21949#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:14,132 INFO L290 TraceCheckUtils]: 61: Hoare triple {21949#(<= ~counter~0 6)} assume !(0 == ~cond); {21949#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:14,132 INFO L290 TraceCheckUtils]: 62: Hoare triple {21949#(<= ~counter~0 6)} assume true; {21949#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:14,133 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {21949#(<= ~counter~0 6)} {21949#(<= ~counter~0 6)} #98#return; {21949#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:14,133 INFO L290 TraceCheckUtils]: 64: Hoare triple {21949#(<= ~counter~0 6)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {21949#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:14,138 INFO L290 TraceCheckUtils]: 65: Hoare triple {21949#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21974#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:14,139 INFO L290 TraceCheckUtils]: 66: Hoare triple {21974#(<= ~counter~0 7)} assume !!(#t~post8 < 20);havoc #t~post8; {21974#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:14,147 INFO L272 TraceCheckUtils]: 67: Hoare triple {21974#(<= ~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)); {21974#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:14,147 INFO L290 TraceCheckUtils]: 68: Hoare triple {21974#(<= ~counter~0 7)} ~cond := #in~cond; {21974#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:14,148 INFO L290 TraceCheckUtils]: 69: Hoare triple {21974#(<= ~counter~0 7)} assume !(0 == ~cond); {21974#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:14,148 INFO L290 TraceCheckUtils]: 70: Hoare triple {21974#(<= ~counter~0 7)} assume true; {21974#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:14,149 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {21974#(<= ~counter~0 7)} {21974#(<= ~counter~0 7)} #98#return; {21974#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:14,149 INFO L290 TraceCheckUtils]: 72: Hoare triple {21974#(<= ~counter~0 7)} assume !(~r~0 < 0); {21974#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:14,149 INFO L290 TraceCheckUtils]: 73: Hoare triple {21974#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21999#(<= |main_#t~post6| 7)} is VALID [2022-04-08 06:04:14,150 INFO L290 TraceCheckUtils]: 74: Hoare triple {21999#(<= |main_#t~post6| 7)} assume !(#t~post6 < 20);havoc #t~post6; {21768#false} is VALID [2022-04-08 06:04:14,150 INFO L272 TraceCheckUtils]: 75: Hoare triple {21768#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)); {21768#false} is VALID [2022-04-08 06:04:14,150 INFO L290 TraceCheckUtils]: 76: Hoare triple {21768#false} ~cond := #in~cond; {21768#false} is VALID [2022-04-08 06:04:14,150 INFO L290 TraceCheckUtils]: 77: Hoare triple {21768#false} assume 0 == ~cond; {21768#false} is VALID [2022-04-08 06:04:14,150 INFO L290 TraceCheckUtils]: 78: Hoare triple {21768#false} assume !false; {21768#false} is VALID [2022-04-08 06:04:14,150 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 14 proven. 126 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:04:14,150 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:04:14,552 INFO L290 TraceCheckUtils]: 78: Hoare triple {21768#false} assume !false; {21768#false} is VALID [2022-04-08 06:04:14,552 INFO L290 TraceCheckUtils]: 77: Hoare triple {21768#false} assume 0 == ~cond; {21768#false} is VALID [2022-04-08 06:04:14,553 INFO L290 TraceCheckUtils]: 76: Hoare triple {21768#false} ~cond := #in~cond; {21768#false} is VALID [2022-04-08 06:04:14,553 INFO L272 TraceCheckUtils]: 75: Hoare triple {21768#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)); {21768#false} is VALID [2022-04-08 06:04:14,553 INFO L290 TraceCheckUtils]: 74: Hoare triple {22027#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {21768#false} is VALID [2022-04-08 06:04:14,553 INFO L290 TraceCheckUtils]: 73: Hoare triple {22031#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22027#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:04:14,553 INFO L290 TraceCheckUtils]: 72: Hoare triple {22031#(< ~counter~0 20)} assume !(~r~0 < 0); {22031#(< ~counter~0 20)} is VALID [2022-04-08 06:04:14,554 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {21767#true} {22031#(< ~counter~0 20)} #98#return; {22031#(< ~counter~0 20)} is VALID [2022-04-08 06:04:14,554 INFO L290 TraceCheckUtils]: 70: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-08 06:04:14,554 INFO L290 TraceCheckUtils]: 69: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-08 06:04:14,554 INFO L290 TraceCheckUtils]: 68: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-08 06:04:14,554 INFO L272 TraceCheckUtils]: 67: Hoare triple {22031#(< ~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)); {21767#true} is VALID [2022-04-08 06:04:14,555 INFO L290 TraceCheckUtils]: 66: Hoare triple {22031#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {22031#(< ~counter~0 20)} is VALID [2022-04-08 06:04:14,555 INFO L290 TraceCheckUtils]: 65: Hoare triple {22056#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22031#(< ~counter~0 20)} is VALID [2022-04-08 06:04:14,556 INFO L290 TraceCheckUtils]: 64: Hoare triple {22056#(< ~counter~0 19)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {22056#(< ~counter~0 19)} is VALID [2022-04-08 06:04:14,556 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {21767#true} {22056#(< ~counter~0 19)} #98#return; {22056#(< ~counter~0 19)} is VALID [2022-04-08 06:04:14,556 INFO L290 TraceCheckUtils]: 62: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-08 06:04:14,556 INFO L290 TraceCheckUtils]: 61: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-08 06:04:14,556 INFO L290 TraceCheckUtils]: 60: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-08 06:04:14,556 INFO L272 TraceCheckUtils]: 59: Hoare triple {22056#(< ~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)); {21767#true} is VALID [2022-04-08 06:04:14,557 INFO L290 TraceCheckUtils]: 58: Hoare triple {22056#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {22056#(< ~counter~0 19)} is VALID [2022-04-08 06:04:14,557 INFO L290 TraceCheckUtils]: 57: Hoare triple {22081#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22056#(< ~counter~0 19)} is VALID [2022-04-08 06:04:14,557 INFO L290 TraceCheckUtils]: 56: Hoare triple {22081#(< ~counter~0 18)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {22081#(< ~counter~0 18)} is VALID [2022-04-08 06:04:14,558 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {21767#true} {22081#(< ~counter~0 18)} #98#return; {22081#(< ~counter~0 18)} is VALID [2022-04-08 06:04:14,558 INFO L290 TraceCheckUtils]: 54: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-08 06:04:14,558 INFO L290 TraceCheckUtils]: 53: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-08 06:04:14,558 INFO L290 TraceCheckUtils]: 52: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-08 06:04:14,558 INFO L272 TraceCheckUtils]: 51: Hoare triple {22081#(< ~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)); {21767#true} is VALID [2022-04-08 06:04:14,558 INFO L290 TraceCheckUtils]: 50: Hoare triple {22081#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {22081#(< ~counter~0 18)} is VALID [2022-04-08 06:04:14,559 INFO L290 TraceCheckUtils]: 49: Hoare triple {22106#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22081#(< ~counter~0 18)} is VALID [2022-04-08 06:04:14,559 INFO L290 TraceCheckUtils]: 48: Hoare triple {22106#(< ~counter~0 17)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {22106#(< ~counter~0 17)} is VALID [2022-04-08 06:04:14,560 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {21767#true} {22106#(< ~counter~0 17)} #98#return; {22106#(< ~counter~0 17)} is VALID [2022-04-08 06:04:14,560 INFO L290 TraceCheckUtils]: 46: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-08 06:04:14,560 INFO L290 TraceCheckUtils]: 45: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-08 06:04:14,560 INFO L290 TraceCheckUtils]: 44: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-08 06:04:14,560 INFO L272 TraceCheckUtils]: 43: Hoare triple {22106#(< ~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)); {21767#true} is VALID [2022-04-08 06:04:14,560 INFO L290 TraceCheckUtils]: 42: Hoare triple {22106#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {22106#(< ~counter~0 17)} is VALID [2022-04-08 06:04:14,561 INFO L290 TraceCheckUtils]: 41: Hoare triple {22131#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22106#(< ~counter~0 17)} is VALID [2022-04-08 06:04:14,561 INFO L290 TraceCheckUtils]: 40: Hoare triple {22131#(< ~counter~0 16)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {22131#(< ~counter~0 16)} is VALID [2022-04-08 06:04:14,561 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {21767#true} {22131#(< ~counter~0 16)} #98#return; {22131#(< ~counter~0 16)} is VALID [2022-04-08 06:04:14,562 INFO L290 TraceCheckUtils]: 38: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-08 06:04:14,562 INFO L290 TraceCheckUtils]: 37: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-08 06:04:14,562 INFO L290 TraceCheckUtils]: 36: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-08 06:04:14,562 INFO L272 TraceCheckUtils]: 35: Hoare triple {22131#(< ~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)); {21767#true} is VALID [2022-04-08 06:04:14,562 INFO L290 TraceCheckUtils]: 34: Hoare triple {22131#(< ~counter~0 16)} assume !!(#t~post8 < 20);havoc #t~post8; {22131#(< ~counter~0 16)} is VALID [2022-04-08 06:04:14,562 INFO L290 TraceCheckUtils]: 33: Hoare triple {22156#(< ~counter~0 15)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22131#(< ~counter~0 16)} is VALID [2022-04-08 06:04:14,563 INFO L290 TraceCheckUtils]: 32: Hoare triple {22156#(< ~counter~0 15)} assume !(~r~0 > 0); {22156#(< ~counter~0 15)} is VALID [2022-04-08 06:04:14,563 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {21767#true} {22156#(< ~counter~0 15)} #96#return; {22156#(< ~counter~0 15)} is VALID [2022-04-08 06:04:14,563 INFO L290 TraceCheckUtils]: 30: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-08 06:04:14,563 INFO L290 TraceCheckUtils]: 29: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-08 06:04:14,563 INFO L290 TraceCheckUtils]: 28: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-08 06:04:14,564 INFO L272 TraceCheckUtils]: 27: Hoare triple {22156#(< ~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)); {21767#true} is VALID [2022-04-08 06:04:14,564 INFO L290 TraceCheckUtils]: 26: Hoare triple {22156#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {22156#(< ~counter~0 15)} is VALID [2022-04-08 06:04:14,564 INFO L290 TraceCheckUtils]: 25: Hoare triple {22181#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22156#(< ~counter~0 15)} is VALID [2022-04-08 06:04:14,564 INFO L290 TraceCheckUtils]: 24: Hoare triple {22181#(< ~counter~0 14)} assume !!(0 != ~r~0); {22181#(< ~counter~0 14)} is VALID [2022-04-08 06:04:14,565 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {21767#true} {22181#(< ~counter~0 14)} #94#return; {22181#(< ~counter~0 14)} is VALID [2022-04-08 06:04:14,565 INFO L290 TraceCheckUtils]: 22: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-08 06:04:14,565 INFO L290 TraceCheckUtils]: 21: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-08 06:04:14,565 INFO L290 TraceCheckUtils]: 20: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-08 06:04:14,565 INFO L272 TraceCheckUtils]: 19: Hoare triple {22181#(< ~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)); {21767#true} is VALID [2022-04-08 06:04:14,567 INFO L290 TraceCheckUtils]: 18: Hoare triple {22181#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {22181#(< ~counter~0 14)} is VALID [2022-04-08 06:04:14,568 INFO L290 TraceCheckUtils]: 17: Hoare triple {22206#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22181#(< ~counter~0 14)} is VALID [2022-04-08 06:04:14,568 INFO L290 TraceCheckUtils]: 16: Hoare triple {22206#(< ~counter~0 13)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {22206#(< ~counter~0 13)} is VALID [2022-04-08 06:04:14,568 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21767#true} {22206#(< ~counter~0 13)} #92#return; {22206#(< ~counter~0 13)} is VALID [2022-04-08 06:04:14,568 INFO L290 TraceCheckUtils]: 14: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-08 06:04:14,568 INFO L290 TraceCheckUtils]: 13: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-08 06:04:14,568 INFO L290 TraceCheckUtils]: 12: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-08 06:04:14,569 INFO L272 TraceCheckUtils]: 11: Hoare triple {22206#(< ~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)); {21767#true} is VALID [2022-04-08 06:04:14,569 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21767#true} {22206#(< ~counter~0 13)} #90#return; {22206#(< ~counter~0 13)} is VALID [2022-04-08 06:04:14,569 INFO L290 TraceCheckUtils]: 9: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-08 06:04:14,569 INFO L290 TraceCheckUtils]: 8: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-08 06:04:14,569 INFO L290 TraceCheckUtils]: 7: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-08 06:04:14,569 INFO L272 TraceCheckUtils]: 6: Hoare triple {22206#(< ~counter~0 13)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {21767#true} is VALID [2022-04-08 06:04:14,569 INFO L290 TraceCheckUtils]: 5: Hoare triple {22206#(< ~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; {22206#(< ~counter~0 13)} is VALID [2022-04-08 06:04:14,570 INFO L272 TraceCheckUtils]: 4: Hoare triple {22206#(< ~counter~0 13)} call #t~ret9 := main(); {22206#(< ~counter~0 13)} is VALID [2022-04-08 06:04:14,570 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22206#(< ~counter~0 13)} {21767#true} #102#return; {22206#(< ~counter~0 13)} is VALID [2022-04-08 06:04:14,570 INFO L290 TraceCheckUtils]: 2: Hoare triple {22206#(< ~counter~0 13)} assume true; {22206#(< ~counter~0 13)} is VALID [2022-04-08 06:04:14,571 INFO L290 TraceCheckUtils]: 1: Hoare triple {21767#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {22206#(< ~counter~0 13)} is VALID [2022-04-08 06:04:14,571 INFO L272 TraceCheckUtils]: 0: Hoare triple {21767#true} call ULTIMATE.init(); {21767#true} is VALID [2022-04-08 06:04:14,574 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 14 proven. 42 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-08 06:04:14,574 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:04:14,574 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1179949151] [2022-04-08 06:04:14,574 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:04:14,574 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [434472582] [2022-04-08 06:04:14,575 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [434472582] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:04:14,575 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:04:14,575 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-08 06:04:14,575 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:04:14,575 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1103695035] [2022-04-08 06:04:14,575 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1103695035] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:04:14,575 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:04:14,575 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 06:04:14,575 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2054579055] [2022-04-08 06:04:14,575 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:04:14,576 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 4.909090909090909) internal successors, (54), 10 states have internal predecessors, (54), 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 79 [2022-04-08 06:04:14,576 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:04:14,576 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 4.909090909090909) internal successors, (54), 10 states have internal predecessors, (54), 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:04:14,625 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:04:14,625 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 06:04:14,625 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:04:14,626 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 06:04:14,626 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-08 06:04:14,627 INFO L87 Difference]: Start difference. First operand 222 states and 285 transitions. Second operand has 11 states, 11 states have (on average 4.909090909090909) internal successors, (54), 10 states have internal predecessors, (54), 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:04:15,253 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:04:15,253 INFO L93 Difference]: Finished difference Result 257 states and 329 transitions. [2022-04-08 06:04:15,253 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 06:04:15,253 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 4.909090909090909) internal successors, (54), 10 states have internal predecessors, (54), 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 79 [2022-04-08 06:04:15,253 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:04:15,253 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 4.909090909090909) internal successors, (54), 10 states have internal predecessors, (54), 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:04:15,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 155 transitions. [2022-04-08 06:04:15,255 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 4.909090909090909) internal successors, (54), 10 states have internal predecessors, (54), 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:04:15,256 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 155 transitions. [2022-04-08 06:04:15,256 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 155 transitions. [2022-04-08 06:04:15,391 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:04:15,395 INFO L225 Difference]: With dead ends: 257 [2022-04-08 06:04:15,395 INFO L226 Difference]: Without dead ends: 252 [2022-04-08 06:04:15,396 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 161 GetRequests, 139 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=225, Invalid=327, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:04:15,396 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 88 mSDsluCounter, 142 mSDsCounter, 0 mSdLazyCounter, 79 mSolverCounterSat, 70 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 88 SdHoareTripleChecker+Valid, 193 SdHoareTripleChecker+Invalid, 149 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 70 IncrementalHoareTripleChecker+Valid, 79 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:04:15,397 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [88 Valid, 193 Invalid, 149 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [70 Valid, 79 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:04:15,397 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 252 states. [2022-04-08 06:04:15,645 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 252 to 243. [2022-04-08 06:04:15,645 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:04:15,645 INFO L82 GeneralOperation]: Start isEquivalent. First operand 252 states. Second operand has 243 states, 178 states have (on average 1.2078651685393258) internal successors, (215), 185 states have internal predecessors, (215), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 41 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 06:04:15,645 INFO L74 IsIncluded]: Start isIncluded. First operand 252 states. Second operand has 243 states, 178 states have (on average 1.2078651685393258) internal successors, (215), 185 states have internal predecessors, (215), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 41 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 06:04:15,646 INFO L87 Difference]: Start difference. First operand 252 states. Second operand has 243 states, 178 states have (on average 1.2078651685393258) internal successors, (215), 185 states have internal predecessors, (215), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 41 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 06:04:15,665 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:04:15,666 INFO L93 Difference]: Finished difference Result 252 states and 323 transitions. [2022-04-08 06:04:15,666 INFO L276 IsEmpty]: Start isEmpty. Operand 252 states and 323 transitions. [2022-04-08 06:04:15,666 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:04:15,666 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:04:15,667 INFO L74 IsIncluded]: Start isIncluded. First operand has 243 states, 178 states have (on average 1.2078651685393258) internal successors, (215), 185 states have internal predecessors, (215), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 41 states have call predecessors, (48), 48 states have call successors, (48) Second operand 252 states. [2022-04-08 06:04:15,667 INFO L87 Difference]: Start difference. First operand has 243 states, 178 states have (on average 1.2078651685393258) internal successors, (215), 185 states have internal predecessors, (215), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 41 states have call predecessors, (48), 48 states have call successors, (48) Second operand 252 states. [2022-04-08 06:04:15,672 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:04:15,672 INFO L93 Difference]: Finished difference Result 252 states and 323 transitions. [2022-04-08 06:04:15,672 INFO L276 IsEmpty]: Start isEmpty. Operand 252 states and 323 transitions. [2022-04-08 06:04:15,672 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:04:15,672 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:04:15,673 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:04:15,673 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:04:15,673 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 243 states, 178 states have (on average 1.2078651685393258) internal successors, (215), 185 states have internal predecessors, (215), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 41 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 06:04:15,677 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 243 states to 243 states and 313 transitions. [2022-04-08 06:04:15,678 INFO L78 Accepts]: Start accepts. Automaton has 243 states and 313 transitions. Word has length 79 [2022-04-08 06:04:15,678 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:04:15,678 INFO L478 AbstractCegarLoop]: Abstraction has 243 states and 313 transitions. [2022-04-08 06:04:15,678 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 4.909090909090909) internal successors, (54), 10 states have internal predecessors, (54), 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:04:15,678 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 243 states and 313 transitions. [2022-04-08 06:04:23,145 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 313 edges. 313 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:04:23,145 INFO L276 IsEmpty]: Start isEmpty. Operand 243 states and 313 transitions. [2022-04-08 06:04:23,146 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 82 [2022-04-08 06:04:23,146 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:04:23,146 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:04:23,167 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:04:23,362 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:04:23,362 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:04:23,363 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:04:23,363 INFO L85 PathProgramCache]: Analyzing trace with hash 1693648491, now seen corresponding path program 1 times [2022-04-08 06:04:23,363 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:04:23,363 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [807890104] [2022-04-08 06:04:23,363 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:04:23,363 INFO L85 PathProgramCache]: Analyzing trace with hash 1693648491, now seen corresponding path program 2 times [2022-04-08 06:04:23,363 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:04:23,363 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1246616867] [2022-04-08 06:04:23,364 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:04:23,364 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:04:23,374 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:04:23,375 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [781683076] [2022-04-08 06:04:23,375 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:04:23,375 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:04:23,375 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:04:23,376 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:04:23,376 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:04:23,419 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:04:23,419 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:04:23,420 INFO L263 TraceCheckSpWp]: Trace formula consists of 211 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-08 06:04:23,434 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:04:23,435 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:04:23,819 INFO L272 TraceCheckUtils]: 0: Hoare triple {23772#true} call ULTIMATE.init(); {23772#true} is VALID [2022-04-08 06:04:23,820 INFO L290 TraceCheckUtils]: 1: Hoare triple {23772#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,820 INFO L290 TraceCheckUtils]: 2: Hoare triple {23780#(<= ~counter~0 0)} assume true; {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,821 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23780#(<= ~counter~0 0)} {23772#true} #102#return; {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,821 INFO L272 TraceCheckUtils]: 4: Hoare triple {23780#(<= ~counter~0 0)} call #t~ret9 := main(); {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,822 INFO L290 TraceCheckUtils]: 5: Hoare triple {23780#(<= ~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; {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,822 INFO L272 TraceCheckUtils]: 6: Hoare triple {23780#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,822 INFO L290 TraceCheckUtils]: 7: Hoare triple {23780#(<= ~counter~0 0)} ~cond := #in~cond; {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,823 INFO L290 TraceCheckUtils]: 8: Hoare triple {23780#(<= ~counter~0 0)} assume !(0 == ~cond); {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,823 INFO L290 TraceCheckUtils]: 9: Hoare triple {23780#(<= ~counter~0 0)} assume true; {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,824 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23780#(<= ~counter~0 0)} {23780#(<= ~counter~0 0)} #90#return; {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,824 INFO L272 TraceCheckUtils]: 11: Hoare triple {23780#(<= ~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)); {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,824 INFO L290 TraceCheckUtils]: 12: Hoare triple {23780#(<= ~counter~0 0)} ~cond := #in~cond; {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,824 INFO L290 TraceCheckUtils]: 13: Hoare triple {23780#(<= ~counter~0 0)} assume !(0 == ~cond); {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,825 INFO L290 TraceCheckUtils]: 14: Hoare triple {23780#(<= ~counter~0 0)} assume true; {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,825 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {23780#(<= ~counter~0 0)} {23780#(<= ~counter~0 0)} #92#return; {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,825 INFO L290 TraceCheckUtils]: 16: Hoare triple {23780#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {23780#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:23,826 INFO L290 TraceCheckUtils]: 17: Hoare triple {23780#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23829#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:23,826 INFO L290 TraceCheckUtils]: 18: Hoare triple {23829#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {23829#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:23,827 INFO L272 TraceCheckUtils]: 19: Hoare triple {23829#(<= ~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)); {23829#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:23,827 INFO L290 TraceCheckUtils]: 20: Hoare triple {23829#(<= ~counter~0 1)} ~cond := #in~cond; {23829#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:23,827 INFO L290 TraceCheckUtils]: 21: Hoare triple {23829#(<= ~counter~0 1)} assume !(0 == ~cond); {23829#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:23,828 INFO L290 TraceCheckUtils]: 22: Hoare triple {23829#(<= ~counter~0 1)} assume true; {23829#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:23,828 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {23829#(<= ~counter~0 1)} {23829#(<= ~counter~0 1)} #94#return; {23829#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:23,829 INFO L290 TraceCheckUtils]: 24: Hoare triple {23829#(<= ~counter~0 1)} assume !!(0 != ~r~0); {23829#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:23,829 INFO L290 TraceCheckUtils]: 25: Hoare triple {23829#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {23854#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:23,829 INFO L290 TraceCheckUtils]: 26: Hoare triple {23854#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {23854#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:23,830 INFO L272 TraceCheckUtils]: 27: Hoare triple {23854#(<= ~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)); {23854#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:23,830 INFO L290 TraceCheckUtils]: 28: Hoare triple {23854#(<= ~counter~0 2)} ~cond := #in~cond; {23854#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:23,831 INFO L290 TraceCheckUtils]: 29: Hoare triple {23854#(<= ~counter~0 2)} assume !(0 == ~cond); {23854#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:23,831 INFO L290 TraceCheckUtils]: 30: Hoare triple {23854#(<= ~counter~0 2)} assume true; {23854#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:23,831 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {23854#(<= ~counter~0 2)} {23854#(<= ~counter~0 2)} #96#return; {23854#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:23,832 INFO L290 TraceCheckUtils]: 32: Hoare triple {23854#(<= ~counter~0 2)} assume !(~r~0 > 0); {23854#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:23,832 INFO L290 TraceCheckUtils]: 33: Hoare triple {23854#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {23879#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:23,833 INFO L290 TraceCheckUtils]: 34: Hoare triple {23879#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {23879#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:23,833 INFO L272 TraceCheckUtils]: 35: Hoare triple {23879#(<= ~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)); {23879#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:23,833 INFO L290 TraceCheckUtils]: 36: Hoare triple {23879#(<= ~counter~0 3)} ~cond := #in~cond; {23879#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:23,834 INFO L290 TraceCheckUtils]: 37: Hoare triple {23879#(<= ~counter~0 3)} assume !(0 == ~cond); {23879#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:23,834 INFO L290 TraceCheckUtils]: 38: Hoare triple {23879#(<= ~counter~0 3)} assume true; {23879#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:23,835 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {23879#(<= ~counter~0 3)} {23879#(<= ~counter~0 3)} #98#return; {23879#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:23,835 INFO L290 TraceCheckUtils]: 40: Hoare triple {23879#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {23879#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:23,836 INFO L290 TraceCheckUtils]: 41: Hoare triple {23879#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {23904#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:23,836 INFO L290 TraceCheckUtils]: 42: Hoare triple {23904#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {23904#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:23,836 INFO L272 TraceCheckUtils]: 43: Hoare triple {23904#(<= ~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)); {23904#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:23,837 INFO L290 TraceCheckUtils]: 44: Hoare triple {23904#(<= ~counter~0 4)} ~cond := #in~cond; {23904#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:23,837 INFO L290 TraceCheckUtils]: 45: Hoare triple {23904#(<= ~counter~0 4)} assume !(0 == ~cond); {23904#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:23,837 INFO L290 TraceCheckUtils]: 46: Hoare triple {23904#(<= ~counter~0 4)} assume true; {23904#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:23,838 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23904#(<= ~counter~0 4)} {23904#(<= ~counter~0 4)} #98#return; {23904#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:23,838 INFO L290 TraceCheckUtils]: 48: Hoare triple {23904#(<= ~counter~0 4)} assume !(~r~0 < 0); {23904#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:23,839 INFO L290 TraceCheckUtils]: 49: Hoare triple {23904#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23929#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:23,839 INFO L290 TraceCheckUtils]: 50: Hoare triple {23929#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {23929#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:23,840 INFO L272 TraceCheckUtils]: 51: Hoare triple {23929#(<= ~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)); {23929#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:23,840 INFO L290 TraceCheckUtils]: 52: Hoare triple {23929#(<= ~counter~0 5)} ~cond := #in~cond; {23929#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:23,840 INFO L290 TraceCheckUtils]: 53: Hoare triple {23929#(<= ~counter~0 5)} assume !(0 == ~cond); {23929#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:23,840 INFO L290 TraceCheckUtils]: 54: Hoare triple {23929#(<= ~counter~0 5)} assume true; {23929#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:23,841 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {23929#(<= ~counter~0 5)} {23929#(<= ~counter~0 5)} #94#return; {23929#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:23,841 INFO L290 TraceCheckUtils]: 56: Hoare triple {23929#(<= ~counter~0 5)} assume !!(0 != ~r~0); {23929#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:23,842 INFO L290 TraceCheckUtils]: 57: Hoare triple {23929#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {23954#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:23,848 INFO L290 TraceCheckUtils]: 58: Hoare triple {23954#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {23954#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:23,848 INFO L272 TraceCheckUtils]: 59: Hoare triple {23954#(<= ~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)); {23954#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:23,848 INFO L290 TraceCheckUtils]: 60: Hoare triple {23954#(<= ~counter~0 6)} ~cond := #in~cond; {23954#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:23,849 INFO L290 TraceCheckUtils]: 61: Hoare triple {23954#(<= ~counter~0 6)} assume !(0 == ~cond); {23954#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:23,849 INFO L290 TraceCheckUtils]: 62: Hoare triple {23954#(<= ~counter~0 6)} assume true; {23954#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:23,850 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {23954#(<= ~counter~0 6)} {23954#(<= ~counter~0 6)} #96#return; {23954#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:23,850 INFO L290 TraceCheckUtils]: 64: Hoare triple {23954#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {23954#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:23,851 INFO L290 TraceCheckUtils]: 65: Hoare triple {23954#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {23979#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:23,851 INFO L290 TraceCheckUtils]: 66: Hoare triple {23979#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {23979#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:23,852 INFO L272 TraceCheckUtils]: 67: Hoare triple {23979#(<= ~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)); {23979#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:23,852 INFO L290 TraceCheckUtils]: 68: Hoare triple {23979#(<= ~counter~0 7)} ~cond := #in~cond; {23979#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:23,852 INFO L290 TraceCheckUtils]: 69: Hoare triple {23979#(<= ~counter~0 7)} assume !(0 == ~cond); {23979#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:23,853 INFO L290 TraceCheckUtils]: 70: Hoare triple {23979#(<= ~counter~0 7)} assume true; {23979#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:23,853 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {23979#(<= ~counter~0 7)} {23979#(<= ~counter~0 7)} #96#return; {23979#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:23,853 INFO L290 TraceCheckUtils]: 72: Hoare triple {23979#(<= ~counter~0 7)} assume !(~r~0 > 0); {23979#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:23,854 INFO L290 TraceCheckUtils]: 73: Hoare triple {23979#(<= ~counter~0 7)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24004#(<= |main_#t~post8| 7)} is VALID [2022-04-08 06:04:23,854 INFO L290 TraceCheckUtils]: 74: Hoare triple {24004#(<= |main_#t~post8| 7)} assume !(#t~post8 < 20);havoc #t~post8; {23773#false} is VALID [2022-04-08 06:04:23,854 INFO L290 TraceCheckUtils]: 75: Hoare triple {23773#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23773#false} is VALID [2022-04-08 06:04:23,854 INFO L290 TraceCheckUtils]: 76: Hoare triple {23773#false} assume !(#t~post6 < 20);havoc #t~post6; {23773#false} is VALID [2022-04-08 06:04:23,854 INFO L272 TraceCheckUtils]: 77: Hoare triple {23773#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)); {23773#false} is VALID [2022-04-08 06:04:23,854 INFO L290 TraceCheckUtils]: 78: Hoare triple {23773#false} ~cond := #in~cond; {23773#false} is VALID [2022-04-08 06:04:23,854 INFO L290 TraceCheckUtils]: 79: Hoare triple {23773#false} assume 0 == ~cond; {23773#false} is VALID [2022-04-08 06:04:23,855 INFO L290 TraceCheckUtils]: 80: Hoare triple {23773#false} assume !false; {23773#false} is VALID [2022-04-08 06:04:23,855 INFO L134 CoverageAnalysis]: Checked inductivity of 130 backedges. 18 proven. 108 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:04:23,855 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:04:24,292 INFO L290 TraceCheckUtils]: 80: Hoare triple {23773#false} assume !false; {23773#false} is VALID [2022-04-08 06:04:24,292 INFO L290 TraceCheckUtils]: 79: Hoare triple {23773#false} assume 0 == ~cond; {23773#false} is VALID [2022-04-08 06:04:24,292 INFO L290 TraceCheckUtils]: 78: Hoare triple {23773#false} ~cond := #in~cond; {23773#false} is VALID [2022-04-08 06:04:24,292 INFO L272 TraceCheckUtils]: 77: Hoare triple {23773#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)); {23773#false} is VALID [2022-04-08 06:04:24,292 INFO L290 TraceCheckUtils]: 76: Hoare triple {23773#false} assume !(#t~post6 < 20);havoc #t~post6; {23773#false} is VALID [2022-04-08 06:04:24,292 INFO L290 TraceCheckUtils]: 75: Hoare triple {23773#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23773#false} is VALID [2022-04-08 06:04:24,292 INFO L290 TraceCheckUtils]: 74: Hoare triple {24044#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {23773#false} is VALID [2022-04-08 06:04:24,293 INFO L290 TraceCheckUtils]: 73: Hoare triple {24048#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24044#(< |main_#t~post8| 20)} is VALID [2022-04-08 06:04:24,293 INFO L290 TraceCheckUtils]: 72: Hoare triple {24048#(< ~counter~0 20)} assume !(~r~0 > 0); {24048#(< ~counter~0 20)} is VALID [2022-04-08 06:04:24,294 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {23772#true} {24048#(< ~counter~0 20)} #96#return; {24048#(< ~counter~0 20)} is VALID [2022-04-08 06:04:24,294 INFO L290 TraceCheckUtils]: 70: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-08 06:04:24,294 INFO L290 TraceCheckUtils]: 69: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-08 06:04:24,294 INFO L290 TraceCheckUtils]: 68: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-08 06:04:24,294 INFO L272 TraceCheckUtils]: 67: Hoare triple {24048#(< ~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)); {23772#true} is VALID [2022-04-08 06:04:24,294 INFO L290 TraceCheckUtils]: 66: Hoare triple {24048#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {24048#(< ~counter~0 20)} is VALID [2022-04-08 06:04:24,295 INFO L290 TraceCheckUtils]: 65: Hoare triple {24073#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24048#(< ~counter~0 20)} is VALID [2022-04-08 06:04:24,295 INFO L290 TraceCheckUtils]: 64: Hoare triple {24073#(< ~counter~0 19)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24073#(< ~counter~0 19)} is VALID [2022-04-08 06:04:24,296 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {23772#true} {24073#(< ~counter~0 19)} #96#return; {24073#(< ~counter~0 19)} is VALID [2022-04-08 06:04:24,296 INFO L290 TraceCheckUtils]: 62: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-08 06:04:24,296 INFO L290 TraceCheckUtils]: 61: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-08 06:04:24,296 INFO L290 TraceCheckUtils]: 60: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-08 06:04:24,296 INFO L272 TraceCheckUtils]: 59: Hoare triple {24073#(< ~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)); {23772#true} is VALID [2022-04-08 06:04:24,297 INFO L290 TraceCheckUtils]: 58: Hoare triple {24073#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {24073#(< ~counter~0 19)} is VALID [2022-04-08 06:04:24,297 INFO L290 TraceCheckUtils]: 57: Hoare triple {24098#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24073#(< ~counter~0 19)} is VALID [2022-04-08 06:04:24,297 INFO L290 TraceCheckUtils]: 56: Hoare triple {24098#(< ~counter~0 18)} assume !!(0 != ~r~0); {24098#(< ~counter~0 18)} is VALID [2022-04-08 06:04:24,298 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {23772#true} {24098#(< ~counter~0 18)} #94#return; {24098#(< ~counter~0 18)} is VALID [2022-04-08 06:04:24,298 INFO L290 TraceCheckUtils]: 54: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-08 06:04:24,298 INFO L290 TraceCheckUtils]: 53: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-08 06:04:24,298 INFO L290 TraceCheckUtils]: 52: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-08 06:04:24,298 INFO L272 TraceCheckUtils]: 51: Hoare triple {24098#(< ~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)); {23772#true} is VALID [2022-04-08 06:04:24,299 INFO L290 TraceCheckUtils]: 50: Hoare triple {24098#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {24098#(< ~counter~0 18)} is VALID [2022-04-08 06:04:24,299 INFO L290 TraceCheckUtils]: 49: Hoare triple {24123#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24098#(< ~counter~0 18)} is VALID [2022-04-08 06:04:24,299 INFO L290 TraceCheckUtils]: 48: Hoare triple {24123#(< ~counter~0 17)} assume !(~r~0 < 0); {24123#(< ~counter~0 17)} is VALID [2022-04-08 06:04:24,300 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23772#true} {24123#(< ~counter~0 17)} #98#return; {24123#(< ~counter~0 17)} is VALID [2022-04-08 06:04:24,300 INFO L290 TraceCheckUtils]: 46: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-08 06:04:24,300 INFO L290 TraceCheckUtils]: 45: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-08 06:04:24,300 INFO L290 TraceCheckUtils]: 44: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-08 06:04:24,300 INFO L272 TraceCheckUtils]: 43: Hoare triple {24123#(< ~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)); {23772#true} is VALID [2022-04-08 06:04:24,300 INFO L290 TraceCheckUtils]: 42: Hoare triple {24123#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {24123#(< ~counter~0 17)} is VALID [2022-04-08 06:04:24,301 INFO L290 TraceCheckUtils]: 41: Hoare triple {24148#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24123#(< ~counter~0 17)} is VALID [2022-04-08 06:04:24,301 INFO L290 TraceCheckUtils]: 40: Hoare triple {24148#(< ~counter~0 16)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {24148#(< ~counter~0 16)} is VALID [2022-04-08 06:04:24,302 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {23772#true} {24148#(< ~counter~0 16)} #98#return; {24148#(< ~counter~0 16)} is VALID [2022-04-08 06:04:24,302 INFO L290 TraceCheckUtils]: 38: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-08 06:04:24,302 INFO L290 TraceCheckUtils]: 37: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-08 06:04:24,302 INFO L290 TraceCheckUtils]: 36: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-08 06:04:24,302 INFO L272 TraceCheckUtils]: 35: Hoare triple {24148#(< ~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)); {23772#true} is VALID [2022-04-08 06:04:24,302 INFO L290 TraceCheckUtils]: 34: Hoare triple {24148#(< ~counter~0 16)} assume !!(#t~post8 < 20);havoc #t~post8; {24148#(< ~counter~0 16)} is VALID [2022-04-08 06:04:24,303 INFO L290 TraceCheckUtils]: 33: Hoare triple {24173#(< ~counter~0 15)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24148#(< ~counter~0 16)} is VALID [2022-04-08 06:04:24,303 INFO L290 TraceCheckUtils]: 32: Hoare triple {24173#(< ~counter~0 15)} assume !(~r~0 > 0); {24173#(< ~counter~0 15)} is VALID [2022-04-08 06:04:24,303 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {23772#true} {24173#(< ~counter~0 15)} #96#return; {24173#(< ~counter~0 15)} is VALID [2022-04-08 06:04:24,304 INFO L290 TraceCheckUtils]: 30: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-08 06:04:24,304 INFO L290 TraceCheckUtils]: 29: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-08 06:04:24,304 INFO L290 TraceCheckUtils]: 28: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-08 06:04:24,304 INFO L272 TraceCheckUtils]: 27: Hoare triple {24173#(< ~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)); {23772#true} is VALID [2022-04-08 06:04:24,304 INFO L290 TraceCheckUtils]: 26: Hoare triple {24173#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {24173#(< ~counter~0 15)} is VALID [2022-04-08 06:04:24,304 INFO L290 TraceCheckUtils]: 25: Hoare triple {24198#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24173#(< ~counter~0 15)} is VALID [2022-04-08 06:04:24,305 INFO L290 TraceCheckUtils]: 24: Hoare triple {24198#(< ~counter~0 14)} assume !!(0 != ~r~0); {24198#(< ~counter~0 14)} is VALID [2022-04-08 06:04:24,305 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {23772#true} {24198#(< ~counter~0 14)} #94#return; {24198#(< ~counter~0 14)} is VALID [2022-04-08 06:04:24,305 INFO L290 TraceCheckUtils]: 22: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-08 06:04:24,305 INFO L290 TraceCheckUtils]: 21: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-08 06:04:24,306 INFO L290 TraceCheckUtils]: 20: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-08 06:04:24,306 INFO L272 TraceCheckUtils]: 19: Hoare triple {24198#(< ~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)); {23772#true} is VALID [2022-04-08 06:04:24,306 INFO L290 TraceCheckUtils]: 18: Hoare triple {24198#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {24198#(< ~counter~0 14)} is VALID [2022-04-08 06:04:24,306 INFO L290 TraceCheckUtils]: 17: Hoare triple {24223#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24198#(< ~counter~0 14)} is VALID [2022-04-08 06:04:24,307 INFO L290 TraceCheckUtils]: 16: Hoare triple {24223#(< ~counter~0 13)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {24223#(< ~counter~0 13)} is VALID [2022-04-08 06:04:24,307 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {23772#true} {24223#(< ~counter~0 13)} #92#return; {24223#(< ~counter~0 13)} is VALID [2022-04-08 06:04:24,307 INFO L290 TraceCheckUtils]: 14: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-08 06:04:24,307 INFO L290 TraceCheckUtils]: 13: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-08 06:04:24,307 INFO L290 TraceCheckUtils]: 12: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-08 06:04:24,307 INFO L272 TraceCheckUtils]: 11: Hoare triple {24223#(< ~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)); {23772#true} is VALID [2022-04-08 06:04:24,308 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23772#true} {24223#(< ~counter~0 13)} #90#return; {24223#(< ~counter~0 13)} is VALID [2022-04-08 06:04:24,308 INFO L290 TraceCheckUtils]: 9: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-08 06:04:24,308 INFO L290 TraceCheckUtils]: 8: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-08 06:04:24,308 INFO L290 TraceCheckUtils]: 7: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-08 06:04:24,308 INFO L272 TraceCheckUtils]: 6: Hoare triple {24223#(< ~counter~0 13)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {23772#true} is VALID [2022-04-08 06:04:24,308 INFO L290 TraceCheckUtils]: 5: Hoare triple {24223#(< ~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; {24223#(< ~counter~0 13)} is VALID [2022-04-08 06:04:24,309 INFO L272 TraceCheckUtils]: 4: Hoare triple {24223#(< ~counter~0 13)} call #t~ret9 := main(); {24223#(< ~counter~0 13)} is VALID [2022-04-08 06:04:24,309 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24223#(< ~counter~0 13)} {23772#true} #102#return; {24223#(< ~counter~0 13)} is VALID [2022-04-08 06:04:24,309 INFO L290 TraceCheckUtils]: 2: Hoare triple {24223#(< ~counter~0 13)} assume true; {24223#(< ~counter~0 13)} is VALID [2022-04-08 06:04:24,310 INFO L290 TraceCheckUtils]: 1: Hoare triple {23772#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {24223#(< ~counter~0 13)} is VALID [2022-04-08 06:04:24,310 INFO L272 TraceCheckUtils]: 0: Hoare triple {23772#true} call ULTIMATE.init(); {23772#true} is VALID [2022-04-08 06:04:24,310 INFO L134 CoverageAnalysis]: Checked inductivity of 130 backedges. 18 proven. 24 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-08 06:04:24,310 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:04:24,310 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1246616867] [2022-04-08 06:04:24,310 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:04:24,310 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [781683076] [2022-04-08 06:04:24,310 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [781683076] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:04:24,310 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:04:24,311 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-08 06:04:24,311 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:04:24,311 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [807890104] [2022-04-08 06:04:24,311 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [807890104] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:04:24,311 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:04:24,311 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 06:04:24,311 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1335384240] [2022-04-08 06:04:24,311 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:04:24,311 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.090909090909091) internal successors, (56), 10 states have internal predecessors, (56), 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 81 [2022-04-08 06:04:24,312 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:04:24,312 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 5.090909090909091) internal successors, (56), 10 states have internal predecessors, (56), 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:04:24,362 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:04:24,362 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 06:04:24,362 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:04:24,362 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 06:04:24,363 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-08 06:04:24,363 INFO L87 Difference]: Start difference. First operand 243 states and 313 transitions. Second operand has 11 states, 11 states have (on average 5.090909090909091) internal successors, (56), 10 states have internal predecessors, (56), 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:04:25,009 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:04:25,010 INFO L93 Difference]: Finished difference Result 342 states and 455 transitions. [2022-04-08 06:04:25,010 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-08 06:04:25,010 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.090909090909091) internal successors, (56), 10 states have internal predecessors, (56), 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 81 [2022-04-08 06:04:25,010 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:04:25,010 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.090909090909091) internal successors, (56), 10 states have internal predecessors, (56), 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:04:25,014 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 177 transitions. [2022-04-08 06:04:25,014 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.090909090909091) internal successors, (56), 10 states have internal predecessors, (56), 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:04:25,016 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 177 transitions. [2022-04-08 06:04:25,016 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 177 transitions. [2022-04-08 06:04:25,148 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 177 edges. 177 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:04:25,152 INFO L225 Difference]: With dead ends: 342 [2022-04-08 06:04:25,153 INFO L226 Difference]: Without dead ends: 254 [2022-04-08 06:04:25,153 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 166 GetRequests, 143 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=243, Invalid=357, Unknown=0, NotChecked=0, Total=600 [2022-04-08 06:04:25,154 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 91 mSDsluCounter, 140 mSDsCounter, 0 mSdLazyCounter, 68 mSolverCounterSat, 80 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 91 SdHoareTripleChecker+Valid, 191 SdHoareTripleChecker+Invalid, 148 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 80 IncrementalHoareTripleChecker+Valid, 68 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:04:25,154 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [91 Valid, 191 Invalid, 148 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [80 Valid, 68 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:04:25,157 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 254 states. [2022-04-08 06:04:25,379 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 254 to 248. [2022-04-08 06:04:25,379 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:04:25,380 INFO L82 GeneralOperation]: Start isEquivalent. First operand 254 states. Second operand has 248 states, 183 states have (on average 1.2076502732240437) internal successors, (221), 189 states have internal predecessors, (221), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 06:04:25,380 INFO L74 IsIncluded]: Start isIncluded. First operand 254 states. Second operand has 248 states, 183 states have (on average 1.2076502732240437) internal successors, (221), 189 states have internal predecessors, (221), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 06:04:25,380 INFO L87 Difference]: Start difference. First operand 254 states. Second operand has 248 states, 183 states have (on average 1.2076502732240437) internal successors, (221), 189 states have internal predecessors, (221), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 06:04:25,385 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:04:25,385 INFO L93 Difference]: Finished difference Result 254 states and 325 transitions. [2022-04-08 06:04:25,386 INFO L276 IsEmpty]: Start isEmpty. Operand 254 states and 325 transitions. [2022-04-08 06:04:25,387 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:04:25,387 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:04:25,387 INFO L74 IsIncluded]: Start isIncluded. First operand has 248 states, 183 states have (on average 1.2076502732240437) internal successors, (221), 189 states have internal predecessors, (221), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) Second operand 254 states. [2022-04-08 06:04:25,387 INFO L87 Difference]: Start difference. First operand has 248 states, 183 states have (on average 1.2076502732240437) internal successors, (221), 189 states have internal predecessors, (221), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) Second operand 254 states. [2022-04-08 06:04:25,391 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:04:25,391 INFO L93 Difference]: Finished difference Result 254 states and 325 transitions. [2022-04-08 06:04:25,391 INFO L276 IsEmpty]: Start isEmpty. Operand 254 states and 325 transitions. [2022-04-08 06:04:25,391 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:04:25,391 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:04:25,391 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:04:25,392 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:04:25,392 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 248 states, 183 states have (on average 1.2076502732240437) internal successors, (221), 189 states have internal predecessors, (221), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 42 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 06:04:25,396 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 248 states to 248 states and 319 transitions. [2022-04-08 06:04:25,396 INFO L78 Accepts]: Start accepts. Automaton has 248 states and 319 transitions. Word has length 81 [2022-04-08 06:04:25,396 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:04:25,397 INFO L478 AbstractCegarLoop]: Abstraction has 248 states and 319 transitions. [2022-04-08 06:04:25,397 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 5.090909090909091) internal successors, (56), 10 states have internal predecessors, (56), 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:04:25,397 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 248 states and 319 transitions. [2022-04-08 06:04:30,964 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 319 edges. 318 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:04:30,964 INFO L276 IsEmpty]: Start isEmpty. Operand 248 states and 319 transitions. [2022-04-08 06:04:30,965 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 84 [2022-04-08 06:04:30,965 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:04:30,965 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:04:30,981 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:04:31,165 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:04:31,165 INFO L403 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:04:31,166 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:04:31,166 INFO L85 PathProgramCache]: Analyzing trace with hash -918360272, now seen corresponding path program 3 times [2022-04-08 06:04:31,166 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:04:31,166 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [97933423] [2022-04-08 06:04:31,166 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:04:31,166 INFO L85 PathProgramCache]: Analyzing trace with hash -918360272, now seen corresponding path program 4 times [2022-04-08 06:04:31,166 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:04:31,167 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1209124485] [2022-04-08 06:04:31,167 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:04:31,167 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:04:31,177 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:04:31,177 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [76527639] [2022-04-08 06:04:31,177 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:04:31,177 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:04:31,177 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:04:31,178 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:04:31,183 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:04:31,282 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:04:31,282 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:04:31,283 INFO L263 TraceCheckSpWp]: Trace formula consists of 220 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-08 06:04:31,297 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:04:31,298 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:04:31,641 INFO L272 TraceCheckUtils]: 0: Hoare triple {25975#true} call ULTIMATE.init(); {25975#true} is VALID [2022-04-08 06:04:31,641 INFO L290 TraceCheckUtils]: 1: Hoare triple {25975#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,642 INFO L290 TraceCheckUtils]: 2: Hoare triple {25983#(<= ~counter~0 0)} assume true; {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,642 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25983#(<= ~counter~0 0)} {25975#true} #102#return; {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,642 INFO L272 TraceCheckUtils]: 4: Hoare triple {25983#(<= ~counter~0 0)} call #t~ret9 := main(); {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,643 INFO L290 TraceCheckUtils]: 5: Hoare triple {25983#(<= ~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; {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,643 INFO L272 TraceCheckUtils]: 6: Hoare triple {25983#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,643 INFO L290 TraceCheckUtils]: 7: Hoare triple {25983#(<= ~counter~0 0)} ~cond := #in~cond; {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,644 INFO L290 TraceCheckUtils]: 8: Hoare triple {25983#(<= ~counter~0 0)} assume !(0 == ~cond); {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,644 INFO L290 TraceCheckUtils]: 9: Hoare triple {25983#(<= ~counter~0 0)} assume true; {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,644 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {25983#(<= ~counter~0 0)} {25983#(<= ~counter~0 0)} #90#return; {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,645 INFO L272 TraceCheckUtils]: 11: Hoare triple {25983#(<= ~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)); {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,645 INFO L290 TraceCheckUtils]: 12: Hoare triple {25983#(<= ~counter~0 0)} ~cond := #in~cond; {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,645 INFO L290 TraceCheckUtils]: 13: Hoare triple {25983#(<= ~counter~0 0)} assume !(0 == ~cond); {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,645 INFO L290 TraceCheckUtils]: 14: Hoare triple {25983#(<= ~counter~0 0)} assume true; {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,646 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {25983#(<= ~counter~0 0)} {25983#(<= ~counter~0 0)} #92#return; {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,646 INFO L290 TraceCheckUtils]: 16: Hoare triple {25983#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {25983#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:31,647 INFO L290 TraceCheckUtils]: 17: Hoare triple {25983#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26032#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:31,647 INFO L290 TraceCheckUtils]: 18: Hoare triple {26032#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {26032#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:31,648 INFO L272 TraceCheckUtils]: 19: Hoare triple {26032#(<= ~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)); {26032#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:31,648 INFO L290 TraceCheckUtils]: 20: Hoare triple {26032#(<= ~counter~0 1)} ~cond := #in~cond; {26032#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:31,648 INFO L290 TraceCheckUtils]: 21: Hoare triple {26032#(<= ~counter~0 1)} assume !(0 == ~cond); {26032#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:31,648 INFO L290 TraceCheckUtils]: 22: Hoare triple {26032#(<= ~counter~0 1)} assume true; {26032#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:31,649 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {26032#(<= ~counter~0 1)} {26032#(<= ~counter~0 1)} #94#return; {26032#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:31,649 INFO L290 TraceCheckUtils]: 24: Hoare triple {26032#(<= ~counter~0 1)} assume !!(0 != ~r~0); {26032#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:31,650 INFO L290 TraceCheckUtils]: 25: Hoare triple {26032#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26057#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:31,650 INFO L290 TraceCheckUtils]: 26: Hoare triple {26057#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {26057#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:31,650 INFO L272 TraceCheckUtils]: 27: Hoare triple {26057#(<= ~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)); {26057#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:31,651 INFO L290 TraceCheckUtils]: 28: Hoare triple {26057#(<= ~counter~0 2)} ~cond := #in~cond; {26057#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:31,651 INFO L290 TraceCheckUtils]: 29: Hoare triple {26057#(<= ~counter~0 2)} assume !(0 == ~cond); {26057#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:31,651 INFO L290 TraceCheckUtils]: 30: Hoare triple {26057#(<= ~counter~0 2)} assume true; {26057#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:31,652 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {26057#(<= ~counter~0 2)} {26057#(<= ~counter~0 2)} #96#return; {26057#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:31,652 INFO L290 TraceCheckUtils]: 32: Hoare triple {26057#(<= ~counter~0 2)} assume !(~r~0 > 0); {26057#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:31,652 INFO L290 TraceCheckUtils]: 33: Hoare triple {26057#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {26082#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:31,653 INFO L290 TraceCheckUtils]: 34: Hoare triple {26082#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {26082#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:31,653 INFO L272 TraceCheckUtils]: 35: Hoare triple {26082#(<= ~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)); {26082#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:31,654 INFO L290 TraceCheckUtils]: 36: Hoare triple {26082#(<= ~counter~0 3)} ~cond := #in~cond; {26082#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:31,654 INFO L290 TraceCheckUtils]: 37: Hoare triple {26082#(<= ~counter~0 3)} assume !(0 == ~cond); {26082#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:31,654 INFO L290 TraceCheckUtils]: 38: Hoare triple {26082#(<= ~counter~0 3)} assume true; {26082#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:31,655 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {26082#(<= ~counter~0 3)} {26082#(<= ~counter~0 3)} #98#return; {26082#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:31,655 INFO L290 TraceCheckUtils]: 40: Hoare triple {26082#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {26082#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:31,655 INFO L290 TraceCheckUtils]: 41: Hoare triple {26082#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {26107#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:31,656 INFO L290 TraceCheckUtils]: 42: Hoare triple {26107#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {26107#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:31,656 INFO L272 TraceCheckUtils]: 43: Hoare triple {26107#(<= ~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)); {26107#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:31,656 INFO L290 TraceCheckUtils]: 44: Hoare triple {26107#(<= ~counter~0 4)} ~cond := #in~cond; {26107#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:31,657 INFO L290 TraceCheckUtils]: 45: Hoare triple {26107#(<= ~counter~0 4)} assume !(0 == ~cond); {26107#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:31,657 INFO L290 TraceCheckUtils]: 46: Hoare triple {26107#(<= ~counter~0 4)} assume true; {26107#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:31,658 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {26107#(<= ~counter~0 4)} {26107#(<= ~counter~0 4)} #98#return; {26107#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:31,658 INFO L290 TraceCheckUtils]: 48: Hoare triple {26107#(<= ~counter~0 4)} assume !(~r~0 < 0); {26107#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:31,658 INFO L290 TraceCheckUtils]: 49: Hoare triple {26107#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26132#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:31,659 INFO L290 TraceCheckUtils]: 50: Hoare triple {26132#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {26132#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:31,659 INFO L272 TraceCheckUtils]: 51: Hoare triple {26132#(<= ~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)); {26132#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:31,659 INFO L290 TraceCheckUtils]: 52: Hoare triple {26132#(<= ~counter~0 5)} ~cond := #in~cond; {26132#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:31,660 INFO L290 TraceCheckUtils]: 53: Hoare triple {26132#(<= ~counter~0 5)} assume !(0 == ~cond); {26132#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:31,660 INFO L290 TraceCheckUtils]: 54: Hoare triple {26132#(<= ~counter~0 5)} assume true; {26132#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:31,660 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {26132#(<= ~counter~0 5)} {26132#(<= ~counter~0 5)} #94#return; {26132#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:31,661 INFO L290 TraceCheckUtils]: 56: Hoare triple {26132#(<= ~counter~0 5)} assume !!(0 != ~r~0); {26132#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:31,661 INFO L290 TraceCheckUtils]: 57: Hoare triple {26132#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26157#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:31,662 INFO L290 TraceCheckUtils]: 58: Hoare triple {26157#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {26157#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:31,662 INFO L272 TraceCheckUtils]: 59: Hoare triple {26157#(<= ~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)); {26157#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:31,662 INFO L290 TraceCheckUtils]: 60: Hoare triple {26157#(<= ~counter~0 6)} ~cond := #in~cond; {26157#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:31,663 INFO L290 TraceCheckUtils]: 61: Hoare triple {26157#(<= ~counter~0 6)} assume !(0 == ~cond); {26157#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:31,663 INFO L290 TraceCheckUtils]: 62: Hoare triple {26157#(<= ~counter~0 6)} assume true; {26157#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:31,663 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {26157#(<= ~counter~0 6)} {26157#(<= ~counter~0 6)} #96#return; {26157#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:31,664 INFO L290 TraceCheckUtils]: 64: Hoare triple {26157#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26157#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:31,664 INFO L290 TraceCheckUtils]: 65: Hoare triple {26157#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26182#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:31,664 INFO L290 TraceCheckUtils]: 66: Hoare triple {26182#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {26182#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:31,665 INFO L272 TraceCheckUtils]: 67: Hoare triple {26182#(<= ~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)); {26182#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:31,665 INFO L290 TraceCheckUtils]: 68: Hoare triple {26182#(<= ~counter~0 7)} ~cond := #in~cond; {26182#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:31,665 INFO L290 TraceCheckUtils]: 69: Hoare triple {26182#(<= ~counter~0 7)} assume !(0 == ~cond); {26182#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:31,666 INFO L290 TraceCheckUtils]: 70: Hoare triple {26182#(<= ~counter~0 7)} assume true; {26182#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:31,666 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {26182#(<= ~counter~0 7)} {26182#(<= ~counter~0 7)} #96#return; {26182#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:31,666 INFO L290 TraceCheckUtils]: 72: Hoare triple {26182#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26182#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:31,667 INFO L290 TraceCheckUtils]: 73: Hoare triple {26182#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26207#(<= |main_#t~post7| 7)} is VALID [2022-04-08 06:04:31,667 INFO L290 TraceCheckUtils]: 74: Hoare triple {26207#(<= |main_#t~post7| 7)} assume !(#t~post7 < 20);havoc #t~post7; {25976#false} is VALID [2022-04-08 06:04:31,667 INFO L290 TraceCheckUtils]: 75: Hoare triple {25976#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {25976#false} is VALID [2022-04-08 06:04:31,667 INFO L290 TraceCheckUtils]: 76: Hoare triple {25976#false} assume !(#t~post8 < 20);havoc #t~post8; {25976#false} is VALID [2022-04-08 06:04:31,667 INFO L290 TraceCheckUtils]: 77: Hoare triple {25976#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25976#false} is VALID [2022-04-08 06:04:31,667 INFO L290 TraceCheckUtils]: 78: Hoare triple {25976#false} assume !(#t~post6 < 20);havoc #t~post6; {25976#false} is VALID [2022-04-08 06:04:31,667 INFO L272 TraceCheckUtils]: 79: Hoare triple {25976#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)); {25976#false} is VALID [2022-04-08 06:04:31,668 INFO L290 TraceCheckUtils]: 80: Hoare triple {25976#false} ~cond := #in~cond; {25976#false} is VALID [2022-04-08 06:04:31,668 INFO L290 TraceCheckUtils]: 81: Hoare triple {25976#false} assume 0 == ~cond; {25976#false} is VALID [2022-04-08 06:04:31,668 INFO L290 TraceCheckUtils]: 82: Hoare triple {25976#false} assume !false; {25976#false} is VALID [2022-04-08 06:04:31,668 INFO L134 CoverageAnalysis]: Checked inductivity of 136 backedges. 22 proven. 110 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:04:31,668 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:04:32,055 INFO L290 TraceCheckUtils]: 82: Hoare triple {25976#false} assume !false; {25976#false} is VALID [2022-04-08 06:04:32,055 INFO L290 TraceCheckUtils]: 81: Hoare triple {25976#false} assume 0 == ~cond; {25976#false} is VALID [2022-04-08 06:04:32,055 INFO L290 TraceCheckUtils]: 80: Hoare triple {25976#false} ~cond := #in~cond; {25976#false} is VALID [2022-04-08 06:04:32,055 INFO L272 TraceCheckUtils]: 79: Hoare triple {25976#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)); {25976#false} is VALID [2022-04-08 06:04:32,055 INFO L290 TraceCheckUtils]: 78: Hoare triple {25976#false} assume !(#t~post6 < 20);havoc #t~post6; {25976#false} is VALID [2022-04-08 06:04:32,055 INFO L290 TraceCheckUtils]: 77: Hoare triple {25976#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25976#false} is VALID [2022-04-08 06:04:32,055 INFO L290 TraceCheckUtils]: 76: Hoare triple {25976#false} assume !(#t~post8 < 20);havoc #t~post8; {25976#false} is VALID [2022-04-08 06:04:32,055 INFO L290 TraceCheckUtils]: 75: Hoare triple {25976#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {25976#false} is VALID [2022-04-08 06:04:32,056 INFO L290 TraceCheckUtils]: 74: Hoare triple {26259#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {25976#false} is VALID [2022-04-08 06:04:32,056 INFO L290 TraceCheckUtils]: 73: Hoare triple {26263#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26259#(< |main_#t~post7| 20)} is VALID [2022-04-08 06:04:32,056 INFO L290 TraceCheckUtils]: 72: Hoare triple {26263#(< ~counter~0 20)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26263#(< ~counter~0 20)} is VALID [2022-04-08 06:04:32,057 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {25975#true} {26263#(< ~counter~0 20)} #96#return; {26263#(< ~counter~0 20)} is VALID [2022-04-08 06:04:32,057 INFO L290 TraceCheckUtils]: 70: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-08 06:04:32,057 INFO L290 TraceCheckUtils]: 69: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-08 06:04:32,057 INFO L290 TraceCheckUtils]: 68: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-08 06:04:32,057 INFO L272 TraceCheckUtils]: 67: Hoare triple {26263#(< ~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)); {25975#true} is VALID [2022-04-08 06:04:32,057 INFO L290 TraceCheckUtils]: 66: Hoare triple {26263#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {26263#(< ~counter~0 20)} is VALID [2022-04-08 06:04:32,058 INFO L290 TraceCheckUtils]: 65: Hoare triple {26288#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26263#(< ~counter~0 20)} is VALID [2022-04-08 06:04:32,059 INFO L290 TraceCheckUtils]: 64: Hoare triple {26288#(< ~counter~0 19)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26288#(< ~counter~0 19)} is VALID [2022-04-08 06:04:32,059 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {25975#true} {26288#(< ~counter~0 19)} #96#return; {26288#(< ~counter~0 19)} is VALID [2022-04-08 06:04:32,059 INFO L290 TraceCheckUtils]: 62: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-08 06:04:32,059 INFO L290 TraceCheckUtils]: 61: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-08 06:04:32,059 INFO L290 TraceCheckUtils]: 60: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-08 06:04:32,059 INFO L272 TraceCheckUtils]: 59: Hoare triple {26288#(< ~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)); {25975#true} is VALID [2022-04-08 06:04:32,060 INFO L290 TraceCheckUtils]: 58: Hoare triple {26288#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {26288#(< ~counter~0 19)} is VALID [2022-04-08 06:04:32,060 INFO L290 TraceCheckUtils]: 57: Hoare triple {26313#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26288#(< ~counter~0 19)} is VALID [2022-04-08 06:04:32,060 INFO L290 TraceCheckUtils]: 56: Hoare triple {26313#(< ~counter~0 18)} assume !!(0 != ~r~0); {26313#(< ~counter~0 18)} is VALID [2022-04-08 06:04:32,061 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {25975#true} {26313#(< ~counter~0 18)} #94#return; {26313#(< ~counter~0 18)} is VALID [2022-04-08 06:04:32,061 INFO L290 TraceCheckUtils]: 54: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-08 06:04:32,061 INFO L290 TraceCheckUtils]: 53: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-08 06:04:32,061 INFO L290 TraceCheckUtils]: 52: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-08 06:04:32,061 INFO L272 TraceCheckUtils]: 51: Hoare triple {26313#(< ~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)); {25975#true} is VALID [2022-04-08 06:04:32,061 INFO L290 TraceCheckUtils]: 50: Hoare triple {26313#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {26313#(< ~counter~0 18)} is VALID [2022-04-08 06:04:32,062 INFO L290 TraceCheckUtils]: 49: Hoare triple {26338#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26313#(< ~counter~0 18)} is VALID [2022-04-08 06:04:32,062 INFO L290 TraceCheckUtils]: 48: Hoare triple {26338#(< ~counter~0 17)} assume !(~r~0 < 0); {26338#(< ~counter~0 17)} is VALID [2022-04-08 06:04:32,063 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {25975#true} {26338#(< ~counter~0 17)} #98#return; {26338#(< ~counter~0 17)} is VALID [2022-04-08 06:04:32,063 INFO L290 TraceCheckUtils]: 46: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-08 06:04:32,063 INFO L290 TraceCheckUtils]: 45: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-08 06:04:32,063 INFO L290 TraceCheckUtils]: 44: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-08 06:04:32,063 INFO L272 TraceCheckUtils]: 43: Hoare triple {26338#(< ~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)); {25975#true} is VALID [2022-04-08 06:04:32,063 INFO L290 TraceCheckUtils]: 42: Hoare triple {26338#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {26338#(< ~counter~0 17)} is VALID [2022-04-08 06:04:32,064 INFO L290 TraceCheckUtils]: 41: Hoare triple {26363#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {26338#(< ~counter~0 17)} is VALID [2022-04-08 06:04:32,064 INFO L290 TraceCheckUtils]: 40: Hoare triple {26363#(< ~counter~0 16)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {26363#(< ~counter~0 16)} is VALID [2022-04-08 06:04:32,064 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {25975#true} {26363#(< ~counter~0 16)} #98#return; {26363#(< ~counter~0 16)} is VALID [2022-04-08 06:04:32,065 INFO L290 TraceCheckUtils]: 38: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-08 06:04:32,065 INFO L290 TraceCheckUtils]: 37: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-08 06:04:32,065 INFO L290 TraceCheckUtils]: 36: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-08 06:04:32,065 INFO L272 TraceCheckUtils]: 35: Hoare triple {26363#(< ~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)); {25975#true} is VALID [2022-04-08 06:04:32,065 INFO L290 TraceCheckUtils]: 34: Hoare triple {26363#(< ~counter~0 16)} assume !!(#t~post8 < 20);havoc #t~post8; {26363#(< ~counter~0 16)} is VALID [2022-04-08 06:04:32,066 INFO L290 TraceCheckUtils]: 33: Hoare triple {26388#(< ~counter~0 15)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {26363#(< ~counter~0 16)} is VALID [2022-04-08 06:04:32,066 INFO L290 TraceCheckUtils]: 32: Hoare triple {26388#(< ~counter~0 15)} assume !(~r~0 > 0); {26388#(< ~counter~0 15)} is VALID [2022-04-08 06:04:32,066 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {25975#true} {26388#(< ~counter~0 15)} #96#return; {26388#(< ~counter~0 15)} is VALID [2022-04-08 06:04:32,066 INFO L290 TraceCheckUtils]: 30: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-08 06:04:32,066 INFO L290 TraceCheckUtils]: 29: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-08 06:04:32,067 INFO L290 TraceCheckUtils]: 28: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-08 06:04:32,067 INFO L272 TraceCheckUtils]: 27: Hoare triple {26388#(< ~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)); {25975#true} is VALID [2022-04-08 06:04:32,067 INFO L290 TraceCheckUtils]: 26: Hoare triple {26388#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {26388#(< ~counter~0 15)} is VALID [2022-04-08 06:04:32,067 INFO L290 TraceCheckUtils]: 25: Hoare triple {26413#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26388#(< ~counter~0 15)} is VALID [2022-04-08 06:04:32,068 INFO L290 TraceCheckUtils]: 24: Hoare triple {26413#(< ~counter~0 14)} assume !!(0 != ~r~0); {26413#(< ~counter~0 14)} is VALID [2022-04-08 06:04:32,068 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {25975#true} {26413#(< ~counter~0 14)} #94#return; {26413#(< ~counter~0 14)} is VALID [2022-04-08 06:04:32,068 INFO L290 TraceCheckUtils]: 22: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-08 06:04:32,068 INFO L290 TraceCheckUtils]: 21: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-08 06:04:32,068 INFO L290 TraceCheckUtils]: 20: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-08 06:04:32,068 INFO L272 TraceCheckUtils]: 19: Hoare triple {26413#(< ~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)); {25975#true} is VALID [2022-04-08 06:04:32,069 INFO L290 TraceCheckUtils]: 18: Hoare triple {26413#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {26413#(< ~counter~0 14)} is VALID [2022-04-08 06:04:32,069 INFO L290 TraceCheckUtils]: 17: Hoare triple {26438#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26413#(< ~counter~0 14)} is VALID [2022-04-08 06:04:32,069 INFO L290 TraceCheckUtils]: 16: Hoare triple {26438#(< ~counter~0 13)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {26438#(< ~counter~0 13)} is VALID [2022-04-08 06:04:32,070 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {25975#true} {26438#(< ~counter~0 13)} #92#return; {26438#(< ~counter~0 13)} is VALID [2022-04-08 06:04:32,070 INFO L290 TraceCheckUtils]: 14: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-08 06:04:32,070 INFO L290 TraceCheckUtils]: 13: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-08 06:04:32,070 INFO L290 TraceCheckUtils]: 12: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-08 06:04:32,070 INFO L272 TraceCheckUtils]: 11: Hoare triple {26438#(< ~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)); {25975#true} is VALID [2022-04-08 06:04:32,071 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {25975#true} {26438#(< ~counter~0 13)} #90#return; {26438#(< ~counter~0 13)} is VALID [2022-04-08 06:04:32,071 INFO L290 TraceCheckUtils]: 9: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-08 06:04:32,071 INFO L290 TraceCheckUtils]: 8: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-08 06:04:32,071 INFO L290 TraceCheckUtils]: 7: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-08 06:04:32,071 INFO L272 TraceCheckUtils]: 6: Hoare triple {26438#(< ~counter~0 13)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {25975#true} is VALID [2022-04-08 06:04:32,071 INFO L290 TraceCheckUtils]: 5: Hoare triple {26438#(< ~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; {26438#(< ~counter~0 13)} is VALID [2022-04-08 06:04:32,071 INFO L272 TraceCheckUtils]: 4: Hoare triple {26438#(< ~counter~0 13)} call #t~ret9 := main(); {26438#(< ~counter~0 13)} is VALID [2022-04-08 06:04:32,072 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26438#(< ~counter~0 13)} {25975#true} #102#return; {26438#(< ~counter~0 13)} is VALID [2022-04-08 06:04:32,072 INFO L290 TraceCheckUtils]: 2: Hoare triple {26438#(< ~counter~0 13)} assume true; {26438#(< ~counter~0 13)} is VALID [2022-04-08 06:04:32,072 INFO L290 TraceCheckUtils]: 1: Hoare triple {25975#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {26438#(< ~counter~0 13)} is VALID [2022-04-08 06:04:32,072 INFO L272 TraceCheckUtils]: 0: Hoare triple {25975#true} call ULTIMATE.init(); {25975#true} is VALID [2022-04-08 06:04:32,073 INFO L134 CoverageAnalysis]: Checked inductivity of 136 backedges. 22 proven. 26 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-08 06:04:32,073 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:04:32,073 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1209124485] [2022-04-08 06:04:32,073 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:04:32,073 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [76527639] [2022-04-08 06:04:32,073 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [76527639] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:04:32,073 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:04:32,073 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-08 06:04:32,073 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:04:32,073 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [97933423] [2022-04-08 06:04:32,074 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [97933423] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:04:32,074 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:04:32,074 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 06:04:32,074 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1102536346] [2022-04-08 06:04:32,074 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:04:32,074 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.2727272727272725) internal successors, (58), 10 states have internal predecessors, (58), 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 83 [2022-04-08 06:04:32,074 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:04:32,074 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 5.2727272727272725) internal successors, (58), 10 states have internal predecessors, (58), 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:04:32,136 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:04:32,136 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 06:04:32,136 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:04:32,136 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 06:04:32,137 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-08 06:04:32,137 INFO L87 Difference]: Start difference. First operand 248 states and 319 transitions. Second operand has 11 states, 11 states have (on average 5.2727272727272725) internal successors, (58), 10 states have internal predecessors, (58), 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:04:32,802 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:04:32,802 INFO L93 Difference]: Finished difference Result 321 states and 421 transitions. [2022-04-08 06:04:32,802 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-08 06:04:32,802 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.2727272727272725) internal successors, (58), 10 states have internal predecessors, (58), 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 83 [2022-04-08 06:04:32,802 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:04:32,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.2727272727272725) internal successors, (58), 10 states have internal predecessors, (58), 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:04:32,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 177 transitions. [2022-04-08 06:04:32,804 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.2727272727272725) internal successors, (58), 10 states have internal predecessors, (58), 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:04:32,805 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 177 transitions. [2022-04-08 06:04:32,805 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 177 transitions. [2022-04-08 06:04:32,924 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 177 edges. 177 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:04:32,929 INFO L225 Difference]: With dead ends: 321 [2022-04-08 06:04:32,929 INFO L226 Difference]: Without dead ends: 257 [2022-04-08 06:04:32,929 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 171 GetRequests, 147 SyntacticMatches, 0 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 37 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=266, Invalid=384, Unknown=0, NotChecked=0, Total=650 [2022-04-08 06:04:32,929 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 89 mSDsluCounter, 152 mSDsCounter, 0 mSdLazyCounter, 81 mSolverCounterSat, 78 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 89 SdHoareTripleChecker+Valid, 203 SdHoareTripleChecker+Invalid, 159 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 78 IncrementalHoareTripleChecker+Valid, 81 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:04:32,930 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [89 Valid, 203 Invalid, 159 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [78 Valid, 81 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:04:32,930 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 257 states. [2022-04-08 06:04:33,161 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 257 to 257. [2022-04-08 06:04:33,161 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:04:33,162 INFO L82 GeneralOperation]: Start isEquivalent. First operand 257 states. Second operand has 257 states, 192 states have (on average 1.1979166666666667) internal successors, (230), 195 states have internal predecessors, (230), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 45 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 06:04:33,162 INFO L74 IsIncluded]: Start isIncluded. First operand 257 states. Second operand has 257 states, 192 states have (on average 1.1979166666666667) internal successors, (230), 195 states have internal predecessors, (230), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 45 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 06:04:33,162 INFO L87 Difference]: Start difference. First operand 257 states. Second operand has 257 states, 192 states have (on average 1.1979166666666667) internal successors, (230), 195 states have internal predecessors, (230), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 45 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 06:04:33,166 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:04:33,166 INFO L93 Difference]: Finished difference Result 257 states and 328 transitions. [2022-04-08 06:04:33,166 INFO L276 IsEmpty]: Start isEmpty. Operand 257 states and 328 transitions. [2022-04-08 06:04:33,167 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:04:33,167 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:04:33,167 INFO L74 IsIncluded]: Start isIncluded. First operand has 257 states, 192 states have (on average 1.1979166666666667) internal successors, (230), 195 states have internal predecessors, (230), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 45 states have call predecessors, (48), 48 states have call successors, (48) Second operand 257 states. [2022-04-08 06:04:33,167 INFO L87 Difference]: Start difference. First operand has 257 states, 192 states have (on average 1.1979166666666667) internal successors, (230), 195 states have internal predecessors, (230), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 45 states have call predecessors, (48), 48 states have call successors, (48) Second operand 257 states. [2022-04-08 06:04:33,171 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:04:33,171 INFO L93 Difference]: Finished difference Result 257 states and 328 transitions. [2022-04-08 06:04:33,171 INFO L276 IsEmpty]: Start isEmpty. Operand 257 states and 328 transitions. [2022-04-08 06:04:33,172 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:04:33,172 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:04:33,172 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:04:33,172 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:04:33,172 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 257 states, 192 states have (on average 1.1979166666666667) internal successors, (230), 195 states have internal predecessors, (230), 50 states have call successors, (50), 16 states have call predecessors, (50), 14 states have return successors, (48), 45 states have call predecessors, (48), 48 states have call successors, (48) [2022-04-08 06:04:33,177 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 257 states to 257 states and 328 transitions. [2022-04-08 06:04:33,177 INFO L78 Accepts]: Start accepts. Automaton has 257 states and 328 transitions. Word has length 83 [2022-04-08 06:04:33,177 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:04:33,177 INFO L478 AbstractCegarLoop]: Abstraction has 257 states and 328 transitions. [2022-04-08 06:04:33,177 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 5.2727272727272725) internal successors, (58), 10 states have internal predecessors, (58), 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:04:33,177 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 257 states and 328 transitions. [2022-04-08 06:04:45,485 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 328 edges. 324 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-08 06:04:45,485 INFO L276 IsEmpty]: Start isEmpty. Operand 257 states and 328 transitions. [2022-04-08 06:04:45,486 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 88 [2022-04-08 06:04:45,486 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:04:45,486 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:04:45,504 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2022-04-08 06:04:45,699 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:04:45,699 INFO L403 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:04:45,700 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:04:45,700 INFO L85 PathProgramCache]: Analyzing trace with hash 1698627479, now seen corresponding path program 1 times [2022-04-08 06:04:45,700 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:04:45,700 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1779848771] [2022-04-08 06:04:45,700 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:04:45,700 INFO L85 PathProgramCache]: Analyzing trace with hash 1698627479, now seen corresponding path program 2 times [2022-04-08 06:04:45,700 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:04:45,700 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1960457907] [2022-04-08 06:04:45,700 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:04:45,701 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:04:45,711 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:04:45,711 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [677082928] [2022-04-08 06:04:45,712 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:04:45,712 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:04:45,712 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:04:45,712 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:04:45,713 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:04:45,762 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:04:45,762 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:04:45,763 INFO L263 TraceCheckSpWp]: Trace formula consists of 221 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-08 06:04:45,778 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:04:45,779 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:04:46,185 INFO L272 TraceCheckUtils]: 0: Hoare triple {28174#true} call ULTIMATE.init(); {28174#true} is VALID [2022-04-08 06:04:46,186 INFO L290 TraceCheckUtils]: 1: Hoare triple {28174#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,186 INFO L290 TraceCheckUtils]: 2: Hoare triple {28182#(<= ~counter~0 0)} assume true; {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,187 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28182#(<= ~counter~0 0)} {28174#true} #102#return; {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,187 INFO L272 TraceCheckUtils]: 4: Hoare triple {28182#(<= ~counter~0 0)} call #t~ret9 := main(); {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,187 INFO L290 TraceCheckUtils]: 5: Hoare triple {28182#(<= ~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; {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,188 INFO L272 TraceCheckUtils]: 6: Hoare triple {28182#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,188 INFO L290 TraceCheckUtils]: 7: Hoare triple {28182#(<= ~counter~0 0)} ~cond := #in~cond; {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,188 INFO L290 TraceCheckUtils]: 8: Hoare triple {28182#(<= ~counter~0 0)} assume !(0 == ~cond); {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,188 INFO L290 TraceCheckUtils]: 9: Hoare triple {28182#(<= ~counter~0 0)} assume true; {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,189 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28182#(<= ~counter~0 0)} {28182#(<= ~counter~0 0)} #90#return; {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,189 INFO L272 TraceCheckUtils]: 11: Hoare triple {28182#(<= ~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)); {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,189 INFO L290 TraceCheckUtils]: 12: Hoare triple {28182#(<= ~counter~0 0)} ~cond := #in~cond; {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,190 INFO L290 TraceCheckUtils]: 13: Hoare triple {28182#(<= ~counter~0 0)} assume !(0 == ~cond); {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,190 INFO L290 TraceCheckUtils]: 14: Hoare triple {28182#(<= ~counter~0 0)} assume true; {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,190 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {28182#(<= ~counter~0 0)} {28182#(<= ~counter~0 0)} #92#return; {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,191 INFO L290 TraceCheckUtils]: 16: Hoare triple {28182#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {28182#(<= ~counter~0 0)} is VALID [2022-04-08 06:04:46,191 INFO L290 TraceCheckUtils]: 17: Hoare triple {28182#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {28231#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:46,192 INFO L290 TraceCheckUtils]: 18: Hoare triple {28231#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {28231#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:46,192 INFO L272 TraceCheckUtils]: 19: Hoare triple {28231#(<= ~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)); {28231#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:46,192 INFO L290 TraceCheckUtils]: 20: Hoare triple {28231#(<= ~counter~0 1)} ~cond := #in~cond; {28231#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:46,193 INFO L290 TraceCheckUtils]: 21: Hoare triple {28231#(<= ~counter~0 1)} assume !(0 == ~cond); {28231#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:46,193 INFO L290 TraceCheckUtils]: 22: Hoare triple {28231#(<= ~counter~0 1)} assume true; {28231#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:46,193 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {28231#(<= ~counter~0 1)} {28231#(<= ~counter~0 1)} #94#return; {28231#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:46,194 INFO L290 TraceCheckUtils]: 24: Hoare triple {28231#(<= ~counter~0 1)} assume !!(0 != ~r~0); {28231#(<= ~counter~0 1)} is VALID [2022-04-08 06:04:46,194 INFO L290 TraceCheckUtils]: 25: Hoare triple {28231#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28256#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:46,194 INFO L290 TraceCheckUtils]: 26: Hoare triple {28256#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {28256#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:46,195 INFO L272 TraceCheckUtils]: 27: Hoare triple {28256#(<= ~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)); {28256#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:46,195 INFO L290 TraceCheckUtils]: 28: Hoare triple {28256#(<= ~counter~0 2)} ~cond := #in~cond; {28256#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:46,196 INFO L290 TraceCheckUtils]: 29: Hoare triple {28256#(<= ~counter~0 2)} assume !(0 == ~cond); {28256#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:46,196 INFO L290 TraceCheckUtils]: 30: Hoare triple {28256#(<= ~counter~0 2)} assume true; {28256#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:46,196 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {28256#(<= ~counter~0 2)} {28256#(<= ~counter~0 2)} #96#return; {28256#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:46,197 INFO L290 TraceCheckUtils]: 32: Hoare triple {28256#(<= ~counter~0 2)} assume !(~r~0 > 0); {28256#(<= ~counter~0 2)} is VALID [2022-04-08 06:04:46,197 INFO L290 TraceCheckUtils]: 33: Hoare triple {28256#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28281#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:46,197 INFO L290 TraceCheckUtils]: 34: Hoare triple {28281#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {28281#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:46,198 INFO L272 TraceCheckUtils]: 35: Hoare triple {28281#(<= ~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)); {28281#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:46,198 INFO L290 TraceCheckUtils]: 36: Hoare triple {28281#(<= ~counter~0 3)} ~cond := #in~cond; {28281#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:46,198 INFO L290 TraceCheckUtils]: 37: Hoare triple {28281#(<= ~counter~0 3)} assume !(0 == ~cond); {28281#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:46,199 INFO L290 TraceCheckUtils]: 38: Hoare triple {28281#(<= ~counter~0 3)} assume true; {28281#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:46,199 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {28281#(<= ~counter~0 3)} {28281#(<= ~counter~0 3)} #98#return; {28281#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:46,199 INFO L290 TraceCheckUtils]: 40: Hoare triple {28281#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {28281#(<= ~counter~0 3)} is VALID [2022-04-08 06:04:46,200 INFO L290 TraceCheckUtils]: 41: Hoare triple {28281#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28306#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:46,200 INFO L290 TraceCheckUtils]: 42: Hoare triple {28306#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {28306#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:46,201 INFO L272 TraceCheckUtils]: 43: Hoare triple {28306#(<= ~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)); {28306#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:46,201 INFO L290 TraceCheckUtils]: 44: Hoare triple {28306#(<= ~counter~0 4)} ~cond := #in~cond; {28306#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:46,201 INFO L290 TraceCheckUtils]: 45: Hoare triple {28306#(<= ~counter~0 4)} assume !(0 == ~cond); {28306#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:46,201 INFO L290 TraceCheckUtils]: 46: Hoare triple {28306#(<= ~counter~0 4)} assume true; {28306#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:46,202 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {28306#(<= ~counter~0 4)} {28306#(<= ~counter~0 4)} #98#return; {28306#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:46,202 INFO L290 TraceCheckUtils]: 48: Hoare triple {28306#(<= ~counter~0 4)} assume !(~r~0 < 0); {28306#(<= ~counter~0 4)} is VALID [2022-04-08 06:04:46,203 INFO L290 TraceCheckUtils]: 49: Hoare triple {28306#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {28331#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:46,203 INFO L290 TraceCheckUtils]: 50: Hoare triple {28331#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {28331#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:46,203 INFO L272 TraceCheckUtils]: 51: Hoare triple {28331#(<= ~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)); {28331#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:46,204 INFO L290 TraceCheckUtils]: 52: Hoare triple {28331#(<= ~counter~0 5)} ~cond := #in~cond; {28331#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:46,204 INFO L290 TraceCheckUtils]: 53: Hoare triple {28331#(<= ~counter~0 5)} assume !(0 == ~cond); {28331#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:46,204 INFO L290 TraceCheckUtils]: 54: Hoare triple {28331#(<= ~counter~0 5)} assume true; {28331#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:46,205 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {28331#(<= ~counter~0 5)} {28331#(<= ~counter~0 5)} #94#return; {28331#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:46,205 INFO L290 TraceCheckUtils]: 56: Hoare triple {28331#(<= ~counter~0 5)} assume !!(0 != ~r~0); {28331#(<= ~counter~0 5)} is VALID [2022-04-08 06:04:46,205 INFO L290 TraceCheckUtils]: 57: Hoare triple {28331#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28356#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:46,206 INFO L290 TraceCheckUtils]: 58: Hoare triple {28356#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {28356#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:46,206 INFO L272 TraceCheckUtils]: 59: Hoare triple {28356#(<= ~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)); {28356#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:46,206 INFO L290 TraceCheckUtils]: 60: Hoare triple {28356#(<= ~counter~0 6)} ~cond := #in~cond; {28356#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:46,207 INFO L290 TraceCheckUtils]: 61: Hoare triple {28356#(<= ~counter~0 6)} assume !(0 == ~cond); {28356#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:46,207 INFO L290 TraceCheckUtils]: 62: Hoare triple {28356#(<= ~counter~0 6)} assume true; {28356#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:46,207 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {28356#(<= ~counter~0 6)} {28356#(<= ~counter~0 6)} #96#return; {28356#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:46,208 INFO L290 TraceCheckUtils]: 64: Hoare triple {28356#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {28356#(<= ~counter~0 6)} is VALID [2022-04-08 06:04:46,208 INFO L290 TraceCheckUtils]: 65: Hoare triple {28356#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28381#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:46,209 INFO L290 TraceCheckUtils]: 66: Hoare triple {28381#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {28381#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:46,209 INFO L272 TraceCheckUtils]: 67: Hoare triple {28381#(<= ~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)); {28381#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:46,209 INFO L290 TraceCheckUtils]: 68: Hoare triple {28381#(<= ~counter~0 7)} ~cond := #in~cond; {28381#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:46,210 INFO L290 TraceCheckUtils]: 69: Hoare triple {28381#(<= ~counter~0 7)} assume !(0 == ~cond); {28381#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:46,215 INFO L290 TraceCheckUtils]: 70: Hoare triple {28381#(<= ~counter~0 7)} assume true; {28381#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:46,216 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {28381#(<= ~counter~0 7)} {28381#(<= ~counter~0 7)} #96#return; {28381#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:46,216 INFO L290 TraceCheckUtils]: 72: Hoare triple {28381#(<= ~counter~0 7)} assume !(~r~0 > 0); {28381#(<= ~counter~0 7)} is VALID [2022-04-08 06:04:46,216 INFO L290 TraceCheckUtils]: 73: Hoare triple {28381#(<= ~counter~0 7)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28406#(<= ~counter~0 8)} is VALID [2022-04-08 06:04:46,217 INFO L290 TraceCheckUtils]: 74: Hoare triple {28406#(<= ~counter~0 8)} assume !!(#t~post8 < 20);havoc #t~post8; {28406#(<= ~counter~0 8)} is VALID [2022-04-08 06:04:46,217 INFO L272 TraceCheckUtils]: 75: Hoare triple {28406#(<= ~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)); {28406#(<= ~counter~0 8)} is VALID [2022-04-08 06:04:46,218 INFO L290 TraceCheckUtils]: 76: Hoare triple {28406#(<= ~counter~0 8)} ~cond := #in~cond; {28406#(<= ~counter~0 8)} is VALID [2022-04-08 06:04:46,218 INFO L290 TraceCheckUtils]: 77: Hoare triple {28406#(<= ~counter~0 8)} assume !(0 == ~cond); {28406#(<= ~counter~0 8)} is VALID [2022-04-08 06:04:46,218 INFO L290 TraceCheckUtils]: 78: Hoare triple {28406#(<= ~counter~0 8)} assume true; {28406#(<= ~counter~0 8)} is VALID [2022-04-08 06:04:46,219 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {28406#(<= ~counter~0 8)} {28406#(<= ~counter~0 8)} #98#return; {28406#(<= ~counter~0 8)} is VALID [2022-04-08 06:04:46,219 INFO L290 TraceCheckUtils]: 80: Hoare triple {28406#(<= ~counter~0 8)} assume !(~r~0 < 0); {28406#(<= ~counter~0 8)} is VALID [2022-04-08 06:04:46,220 INFO L290 TraceCheckUtils]: 81: Hoare triple {28406#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {28431#(<= |main_#t~post6| 8)} is VALID [2022-04-08 06:04:46,220 INFO L290 TraceCheckUtils]: 82: Hoare triple {28431#(<= |main_#t~post6| 8)} assume !(#t~post6 < 20);havoc #t~post6; {28175#false} is VALID [2022-04-08 06:04:46,220 INFO L272 TraceCheckUtils]: 83: Hoare triple {28175#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)); {28175#false} is VALID [2022-04-08 06:04:46,220 INFO L290 TraceCheckUtils]: 84: Hoare triple {28175#false} ~cond := #in~cond; {28175#false} is VALID [2022-04-08 06:04:46,220 INFO L290 TraceCheckUtils]: 85: Hoare triple {28175#false} assume 0 == ~cond; {28175#false} is VALID [2022-04-08 06:04:46,220 INFO L290 TraceCheckUtils]: 86: Hoare triple {28175#false} assume !false; {28175#false} is VALID [2022-04-08 06:04:46,221 INFO L134 CoverageAnalysis]: Checked inductivity of 164 backedges. 16 proven. 144 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:04:46,221 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:04:46,655 INFO L290 TraceCheckUtils]: 86: Hoare triple {28175#false} assume !false; {28175#false} is VALID [2022-04-08 06:04:46,655 INFO L290 TraceCheckUtils]: 85: Hoare triple {28175#false} assume 0 == ~cond; {28175#false} is VALID [2022-04-08 06:04:46,655 INFO L290 TraceCheckUtils]: 84: Hoare triple {28175#false} ~cond := #in~cond; {28175#false} is VALID [2022-04-08 06:04:46,655 INFO L272 TraceCheckUtils]: 83: Hoare triple {28175#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)); {28175#false} is VALID [2022-04-08 06:04:46,655 INFO L290 TraceCheckUtils]: 82: Hoare triple {28459#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {28175#false} is VALID [2022-04-08 06:04:46,656 INFO L290 TraceCheckUtils]: 81: Hoare triple {28463#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {28459#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:04:46,656 INFO L290 TraceCheckUtils]: 80: Hoare triple {28463#(< ~counter~0 20)} assume !(~r~0 < 0); {28463#(< ~counter~0 20)} is VALID [2022-04-08 06:04:46,656 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {28174#true} {28463#(< ~counter~0 20)} #98#return; {28463#(< ~counter~0 20)} is VALID [2022-04-08 06:04:46,657 INFO L290 TraceCheckUtils]: 78: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-08 06:04:46,657 INFO L290 TraceCheckUtils]: 77: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-08 06:04:46,657 INFO L290 TraceCheckUtils]: 76: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-08 06:04:46,657 INFO L272 TraceCheckUtils]: 75: Hoare triple {28463#(< ~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)); {28174#true} is VALID [2022-04-08 06:04:46,657 INFO L290 TraceCheckUtils]: 74: Hoare triple {28463#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {28463#(< ~counter~0 20)} is VALID [2022-04-08 06:04:46,658 INFO L290 TraceCheckUtils]: 73: Hoare triple {28488#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28463#(< ~counter~0 20)} is VALID [2022-04-08 06:04:46,658 INFO L290 TraceCheckUtils]: 72: Hoare triple {28488#(< ~counter~0 19)} assume !(~r~0 > 0); {28488#(< ~counter~0 19)} is VALID [2022-04-08 06:04:46,659 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {28174#true} {28488#(< ~counter~0 19)} #96#return; {28488#(< ~counter~0 19)} is VALID [2022-04-08 06:04:46,659 INFO L290 TraceCheckUtils]: 70: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-08 06:04:46,659 INFO L290 TraceCheckUtils]: 69: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-08 06:04:46,659 INFO L290 TraceCheckUtils]: 68: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-08 06:04:46,659 INFO L272 TraceCheckUtils]: 67: Hoare triple {28488#(< ~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)); {28174#true} is VALID [2022-04-08 06:04:46,659 INFO L290 TraceCheckUtils]: 66: Hoare triple {28488#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {28488#(< ~counter~0 19)} is VALID [2022-04-08 06:04:46,660 INFO L290 TraceCheckUtils]: 65: Hoare triple {28513#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28488#(< ~counter~0 19)} is VALID [2022-04-08 06:04:46,660 INFO L290 TraceCheckUtils]: 64: Hoare triple {28513#(< ~counter~0 18)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {28513#(< ~counter~0 18)} is VALID [2022-04-08 06:04:46,660 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {28174#true} {28513#(< ~counter~0 18)} #96#return; {28513#(< ~counter~0 18)} is VALID [2022-04-08 06:04:46,661 INFO L290 TraceCheckUtils]: 62: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-08 06:04:46,661 INFO L290 TraceCheckUtils]: 61: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-08 06:04:46,661 INFO L290 TraceCheckUtils]: 60: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-08 06:04:46,661 INFO L272 TraceCheckUtils]: 59: Hoare triple {28513#(< ~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)); {28174#true} is VALID [2022-04-08 06:04:46,661 INFO L290 TraceCheckUtils]: 58: Hoare triple {28513#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {28513#(< ~counter~0 18)} is VALID [2022-04-08 06:04:46,662 INFO L290 TraceCheckUtils]: 57: Hoare triple {28538#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28513#(< ~counter~0 18)} is VALID [2022-04-08 06:04:46,662 INFO L290 TraceCheckUtils]: 56: Hoare triple {28538#(< ~counter~0 17)} assume !!(0 != ~r~0); {28538#(< ~counter~0 17)} is VALID [2022-04-08 06:04:46,662 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {28174#true} {28538#(< ~counter~0 17)} #94#return; {28538#(< ~counter~0 17)} is VALID [2022-04-08 06:04:46,662 INFO L290 TraceCheckUtils]: 54: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-08 06:04:46,662 INFO L290 TraceCheckUtils]: 53: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-08 06:04:46,663 INFO L290 TraceCheckUtils]: 52: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-08 06:04:46,663 INFO L272 TraceCheckUtils]: 51: Hoare triple {28538#(< ~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)); {28174#true} is VALID [2022-04-08 06:04:46,663 INFO L290 TraceCheckUtils]: 50: Hoare triple {28538#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {28538#(< ~counter~0 17)} is VALID [2022-04-08 06:04:46,663 INFO L290 TraceCheckUtils]: 49: Hoare triple {28563#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {28538#(< ~counter~0 17)} is VALID [2022-04-08 06:04:46,664 INFO L290 TraceCheckUtils]: 48: Hoare triple {28563#(< ~counter~0 16)} assume !(~r~0 < 0); {28563#(< ~counter~0 16)} is VALID [2022-04-08 06:04:46,664 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {28174#true} {28563#(< ~counter~0 16)} #98#return; {28563#(< ~counter~0 16)} is VALID [2022-04-08 06:04:46,664 INFO L290 TraceCheckUtils]: 46: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-08 06:04:46,664 INFO L290 TraceCheckUtils]: 45: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-08 06:04:46,664 INFO L290 TraceCheckUtils]: 44: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-08 06:04:46,664 INFO L272 TraceCheckUtils]: 43: Hoare triple {28563#(< ~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)); {28174#true} is VALID [2022-04-08 06:04:46,665 INFO L290 TraceCheckUtils]: 42: Hoare triple {28563#(< ~counter~0 16)} assume !!(#t~post8 < 20);havoc #t~post8; {28563#(< ~counter~0 16)} is VALID [2022-04-08 06:04:46,665 INFO L290 TraceCheckUtils]: 41: Hoare triple {28588#(< ~counter~0 15)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28563#(< ~counter~0 16)} is VALID [2022-04-08 06:04:46,665 INFO L290 TraceCheckUtils]: 40: Hoare triple {28588#(< ~counter~0 15)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {28588#(< ~counter~0 15)} is VALID [2022-04-08 06:04:46,666 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {28174#true} {28588#(< ~counter~0 15)} #98#return; {28588#(< ~counter~0 15)} is VALID [2022-04-08 06:04:46,666 INFO L290 TraceCheckUtils]: 38: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-08 06:04:46,666 INFO L290 TraceCheckUtils]: 37: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-08 06:04:46,666 INFO L290 TraceCheckUtils]: 36: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-08 06:04:46,666 INFO L272 TraceCheckUtils]: 35: Hoare triple {28588#(< ~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)); {28174#true} is VALID [2022-04-08 06:04:46,666 INFO L290 TraceCheckUtils]: 34: Hoare triple {28588#(< ~counter~0 15)} assume !!(#t~post8 < 20);havoc #t~post8; {28588#(< ~counter~0 15)} is VALID [2022-04-08 06:04:46,667 INFO L290 TraceCheckUtils]: 33: Hoare triple {28613#(< ~counter~0 14)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28588#(< ~counter~0 15)} is VALID [2022-04-08 06:04:46,667 INFO L290 TraceCheckUtils]: 32: Hoare triple {28613#(< ~counter~0 14)} assume !(~r~0 > 0); {28613#(< ~counter~0 14)} is VALID [2022-04-08 06:04:46,668 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {28174#true} {28613#(< ~counter~0 14)} #96#return; {28613#(< ~counter~0 14)} is VALID [2022-04-08 06:04:46,668 INFO L290 TraceCheckUtils]: 30: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-08 06:04:46,668 INFO L290 TraceCheckUtils]: 29: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-08 06:04:46,668 INFO L290 TraceCheckUtils]: 28: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-08 06:04:46,668 INFO L272 TraceCheckUtils]: 27: Hoare triple {28613#(< ~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)); {28174#true} is VALID [2022-04-08 06:04:46,668 INFO L290 TraceCheckUtils]: 26: Hoare triple {28613#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {28613#(< ~counter~0 14)} is VALID [2022-04-08 06:04:46,669 INFO L290 TraceCheckUtils]: 25: Hoare triple {28638#(< ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28613#(< ~counter~0 14)} is VALID [2022-04-08 06:04:46,669 INFO L290 TraceCheckUtils]: 24: Hoare triple {28638#(< ~counter~0 13)} assume !!(0 != ~r~0); {28638#(< ~counter~0 13)} is VALID [2022-04-08 06:04:46,670 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {28174#true} {28638#(< ~counter~0 13)} #94#return; {28638#(< ~counter~0 13)} is VALID [2022-04-08 06:04:46,670 INFO L290 TraceCheckUtils]: 22: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-08 06:04:46,670 INFO L290 TraceCheckUtils]: 21: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-08 06:04:46,670 INFO L290 TraceCheckUtils]: 20: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-08 06:04:46,670 INFO L272 TraceCheckUtils]: 19: Hoare triple {28638#(< ~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)); {28174#true} is VALID [2022-04-08 06:04:46,670 INFO L290 TraceCheckUtils]: 18: Hoare triple {28638#(< ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {28638#(< ~counter~0 13)} is VALID [2022-04-08 06:04:46,671 INFO L290 TraceCheckUtils]: 17: Hoare triple {28663#(< ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {28638#(< ~counter~0 13)} is VALID [2022-04-08 06:04:46,671 INFO L290 TraceCheckUtils]: 16: Hoare triple {28663#(< ~counter~0 12)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {28663#(< ~counter~0 12)} is VALID [2022-04-08 06:04:46,671 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {28174#true} {28663#(< ~counter~0 12)} #92#return; {28663#(< ~counter~0 12)} is VALID [2022-04-08 06:04:46,671 INFO L290 TraceCheckUtils]: 14: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-08 06:04:46,672 INFO L290 TraceCheckUtils]: 13: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-08 06:04:46,672 INFO L290 TraceCheckUtils]: 12: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-08 06:04:46,672 INFO L272 TraceCheckUtils]: 11: Hoare triple {28663#(< ~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)); {28174#true} is VALID [2022-04-08 06:04:46,672 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28174#true} {28663#(< ~counter~0 12)} #90#return; {28663#(< ~counter~0 12)} is VALID [2022-04-08 06:04:46,672 INFO L290 TraceCheckUtils]: 9: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-08 06:04:46,672 INFO L290 TraceCheckUtils]: 8: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-08 06:04:46,672 INFO L290 TraceCheckUtils]: 7: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-08 06:04:46,672 INFO L272 TraceCheckUtils]: 6: Hoare triple {28663#(< ~counter~0 12)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {28174#true} is VALID [2022-04-08 06:04:46,673 INFO L290 TraceCheckUtils]: 5: Hoare triple {28663#(< ~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; {28663#(< ~counter~0 12)} is VALID [2022-04-08 06:04:46,673 INFO L272 TraceCheckUtils]: 4: Hoare triple {28663#(< ~counter~0 12)} call #t~ret9 := main(); {28663#(< ~counter~0 12)} is VALID [2022-04-08 06:04:46,673 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28663#(< ~counter~0 12)} {28174#true} #102#return; {28663#(< ~counter~0 12)} is VALID [2022-04-08 06:04:46,674 INFO L290 TraceCheckUtils]: 2: Hoare triple {28663#(< ~counter~0 12)} assume true; {28663#(< ~counter~0 12)} is VALID [2022-04-08 06:04:46,674 INFO L290 TraceCheckUtils]: 1: Hoare triple {28174#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {28663#(< ~counter~0 12)} is VALID [2022-04-08 06:04:46,674 INFO L272 TraceCheckUtils]: 0: Hoare triple {28174#true} call ULTIMATE.init(); {28174#true} is VALID [2022-04-08 06:04:46,674 INFO L134 CoverageAnalysis]: Checked inductivity of 164 backedges. 16 proven. 32 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-08 06:04:46,674 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:04:46,675 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1960457907] [2022-04-08 06:04:46,675 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:04:46,675 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [677082928] [2022-04-08 06:04:46,675 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [677082928] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:04:46,675 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:04:46,675 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-08 06:04:46,675 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:04:46,675 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1779848771] [2022-04-08 06:04:46,675 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1779848771] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:04:46,675 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:04:46,675 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-08 06:04:46,675 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1012977308] [2022-04-08 06:04:46,675 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:04:46,676 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 5.0) internal successors, (60), 11 states have internal predecessors, (60), 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 87 [2022-04-08 06:04:46,677 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:04:46,677 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 5.0) internal successors, (60), 11 states have internal predecessors, (60), 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:04:46,734 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:04:46,734 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-08 06:04:46,734 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:04:46,734 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-08 06:04:46,734 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-08 06:04:46,734 INFO L87 Difference]: Start difference. First operand 257 states and 328 transitions. Second operand has 12 states, 12 states have (on average 5.0) internal successors, (60), 11 states have internal predecessors, (60), 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:04:47,481 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:04:47,481 INFO L93 Difference]: Finished difference Result 292 states and 372 transitions. [2022-04-08 06:04:47,481 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-08 06:04:47,481 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 5.0) internal successors, (60), 11 states have internal predecessors, (60), 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 87 [2022-04-08 06:04:47,481 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:04:47,481 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 5.0) internal successors, (60), 11 states have internal predecessors, (60), 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:04:47,483 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 175 transitions. [2022-04-08 06:04:47,483 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 5.0) internal successors, (60), 11 states have internal predecessors, (60), 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:04:47,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 175 transitions. [2022-04-08 06:04:47,484 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 175 transitions. [2022-04-08 06:04:47,612 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:04:47,621 INFO L225 Difference]: With dead ends: 292 [2022-04-08 06:04:47,621 INFO L226 Difference]: Without dead ends: 287 [2022-04-08 06:04:47,621 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 178 GetRequests, 153 SyntacticMatches, 0 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 35 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=288, Invalid=414, Unknown=0, NotChecked=0, Total=702 [2022-04-08 06:04:47,621 INFO L913 BasicCegarLoop]: 54 mSDtfsCounter, 106 mSDsluCounter, 157 mSDsCounter, 0 mSdLazyCounter, 96 mSolverCounterSat, 92 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 106 SdHoareTripleChecker+Valid, 211 SdHoareTripleChecker+Invalid, 188 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 92 IncrementalHoareTripleChecker+Valid, 96 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:04:47,622 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [106 Valid, 211 Invalid, 188 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [92 Valid, 96 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:04:47,622 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 287 states. [2022-04-08 06:04:47,869 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 287 to 278. [2022-04-08 06:04:47,869 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:04:47,869 INFO L82 GeneralOperation]: Start isEquivalent. First operand 287 states. Second operand has 278 states, 204 states have (on average 1.196078431372549) internal successors, (244), 212 states have internal predecessors, (244), 57 states have call successors, (57), 18 states have call predecessors, (57), 16 states have return successors, (55), 47 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-08 06:04:47,870 INFO L74 IsIncluded]: Start isIncluded. First operand 287 states. Second operand has 278 states, 204 states have (on average 1.196078431372549) internal successors, (244), 212 states have internal predecessors, (244), 57 states have call successors, (57), 18 states have call predecessors, (57), 16 states have return successors, (55), 47 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-08 06:04:47,870 INFO L87 Difference]: Start difference. First operand 287 states. Second operand has 278 states, 204 states have (on average 1.196078431372549) internal successors, (244), 212 states have internal predecessors, (244), 57 states have call successors, (57), 18 states have call predecessors, (57), 16 states have return successors, (55), 47 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-08 06:04:47,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:04:47,874 INFO L93 Difference]: Finished difference Result 287 states and 366 transitions. [2022-04-08 06:04:47,874 INFO L276 IsEmpty]: Start isEmpty. Operand 287 states and 366 transitions. [2022-04-08 06:04:47,874 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:04:47,874 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:04:47,875 INFO L74 IsIncluded]: Start isIncluded. First operand has 278 states, 204 states have (on average 1.196078431372549) internal successors, (244), 212 states have internal predecessors, (244), 57 states have call successors, (57), 18 states have call predecessors, (57), 16 states have return successors, (55), 47 states have call predecessors, (55), 55 states have call successors, (55) Second operand 287 states. [2022-04-08 06:04:47,875 INFO L87 Difference]: Start difference. First operand has 278 states, 204 states have (on average 1.196078431372549) internal successors, (244), 212 states have internal predecessors, (244), 57 states have call successors, (57), 18 states have call predecessors, (57), 16 states have return successors, (55), 47 states have call predecessors, (55), 55 states have call successors, (55) Second operand 287 states. [2022-04-08 06:04:47,879 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:04:47,880 INFO L93 Difference]: Finished difference Result 287 states and 366 transitions. [2022-04-08 06:04:47,880 INFO L276 IsEmpty]: Start isEmpty. Operand 287 states and 366 transitions. [2022-04-08 06:04:47,880 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:04:47,881 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:04:47,881 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:04:47,881 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:04:47,882 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 278 states, 204 states have (on average 1.196078431372549) internal successors, (244), 212 states have internal predecessors, (244), 57 states have call successors, (57), 18 states have call predecessors, (57), 16 states have return successors, (55), 47 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-08 06:04:47,891 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 278 states to 278 states and 356 transitions. [2022-04-08 06:04:47,892 INFO L78 Accepts]: Start accepts. Automaton has 278 states and 356 transitions. Word has length 87 [2022-04-08 06:04:47,892 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:04:47,892 INFO L478 AbstractCegarLoop]: Abstraction has 278 states and 356 transitions. [2022-04-08 06:04:47,893 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 5.0) internal successors, (60), 11 states have internal predecessors, (60), 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:04:47,893 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 278 states and 356 transitions. [2022-04-08 06:05:01,563 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 356 edges. 352 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-08 06:05:01,564 INFO L276 IsEmpty]: Start isEmpty. Operand 278 states and 356 transitions. [2022-04-08 06:05:01,564 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 90 [2022-04-08 06:05:01,564 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:05:01,564 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:05:01,581 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:05:01,765 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:05:01,765 INFO L403 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:05:01,765 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:05:01,765 INFO L85 PathProgramCache]: Analyzing trace with hash 2133755932, now seen corresponding path program 3 times [2022-04-08 06:05:01,765 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:05:01,766 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1343557005] [2022-04-08 06:05:01,766 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:05:01,766 INFO L85 PathProgramCache]: Analyzing trace with hash 2133755932, now seen corresponding path program 4 times [2022-04-08 06:05:01,766 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:05:01,766 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1975197151] [2022-04-08 06:05:01,766 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:05:01,766 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:05:01,776 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:05:01,776 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1130697899] [2022-04-08 06:05:01,777 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:05:01,777 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:05:01,777 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:05:01,778 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:05:01,778 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Waiting until timeout for monitored process [2022-04-08 06:05:01,823 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:05:01,823 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:05:01,824 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-08 06:05:01,835 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:05:01,836 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:05:02,051 INFO L272 TraceCheckUtils]: 0: Hoare triple {30441#true} call ULTIMATE.init(); {30441#true} is VALID [2022-04-08 06:05:02,051 INFO L290 TraceCheckUtils]: 1: Hoare triple {30441#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {30441#true} is VALID [2022-04-08 06:05:02,051 INFO L290 TraceCheckUtils]: 2: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,051 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30441#true} {30441#true} #102#return; {30441#true} is VALID [2022-04-08 06:05:02,051 INFO L272 TraceCheckUtils]: 4: Hoare triple {30441#true} call #t~ret9 := main(); {30441#true} is VALID [2022-04-08 06:05:02,051 INFO L290 TraceCheckUtils]: 5: Hoare triple {30441#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; {30441#true} is VALID [2022-04-08 06:05:02,051 INFO L272 TraceCheckUtils]: 6: Hoare triple {30441#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {30441#true} is VALID [2022-04-08 06:05:02,051 INFO L290 TraceCheckUtils]: 7: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,052 INFO L290 TraceCheckUtils]: 8: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,052 INFO L290 TraceCheckUtils]: 9: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,052 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30441#true} {30441#true} #90#return; {30441#true} is VALID [2022-04-08 06:05:02,052 INFO L272 TraceCheckUtils]: 11: Hoare triple {30441#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)); {30441#true} is VALID [2022-04-08 06:05:02,052 INFO L290 TraceCheckUtils]: 12: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,052 INFO L290 TraceCheckUtils]: 13: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,052 INFO L290 TraceCheckUtils]: 14: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,052 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {30441#true} {30441#true} #92#return; {30441#true} is VALID [2022-04-08 06:05:02,053 INFO L290 TraceCheckUtils]: 16: Hoare triple {30441#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,053 INFO L290 TraceCheckUtils]: 17: Hoare triple {30494#(<= main_~v~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,053 INFO L290 TraceCheckUtils]: 18: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,053 INFO L272 TraceCheckUtils]: 19: Hoare triple {30494#(<= 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)); {30441#true} is VALID [2022-04-08 06:05:02,053 INFO L290 TraceCheckUtils]: 20: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,053 INFO L290 TraceCheckUtils]: 21: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,053 INFO L290 TraceCheckUtils]: 22: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,054 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #94#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,054 INFO L290 TraceCheckUtils]: 24: Hoare triple {30494#(<= main_~v~0 1)} assume !!(0 != ~r~0); {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,054 INFO L290 TraceCheckUtils]: 25: Hoare triple {30494#(<= main_~v~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,055 INFO L290 TraceCheckUtils]: 26: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post7 < 20);havoc #t~post7; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,055 INFO L272 TraceCheckUtils]: 27: Hoare triple {30494#(<= 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)); {30441#true} is VALID [2022-04-08 06:05:02,055 INFO L290 TraceCheckUtils]: 28: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,055 INFO L290 TraceCheckUtils]: 29: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,055 INFO L290 TraceCheckUtils]: 30: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,055 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #96#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,056 INFO L290 TraceCheckUtils]: 32: Hoare triple {30494#(<= main_~v~0 1)} assume !(~r~0 > 0); {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,056 INFO L290 TraceCheckUtils]: 33: Hoare triple {30494#(<= main_~v~0 1)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,056 INFO L290 TraceCheckUtils]: 34: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post8 < 20);havoc #t~post8; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,056 INFO L272 TraceCheckUtils]: 35: Hoare triple {30494#(<= 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)); {30441#true} is VALID [2022-04-08 06:05:02,056 INFO L290 TraceCheckUtils]: 36: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,057 INFO L290 TraceCheckUtils]: 37: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,057 INFO L290 TraceCheckUtils]: 38: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,057 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #98#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,057 INFO L290 TraceCheckUtils]: 40: Hoare triple {30494#(<= main_~v~0 1)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,058 INFO L290 TraceCheckUtils]: 41: Hoare triple {30494#(<= main_~v~0 1)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,058 INFO L290 TraceCheckUtils]: 42: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post8 < 20);havoc #t~post8; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,058 INFO L272 TraceCheckUtils]: 43: Hoare triple {30494#(<= 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)); {30441#true} is VALID [2022-04-08 06:05:02,058 INFO L290 TraceCheckUtils]: 44: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,058 INFO L290 TraceCheckUtils]: 45: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,058 INFO L290 TraceCheckUtils]: 46: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,059 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #98#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,059 INFO L290 TraceCheckUtils]: 48: Hoare triple {30494#(<= main_~v~0 1)} assume !(~r~0 < 0); {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,059 INFO L290 TraceCheckUtils]: 49: Hoare triple {30494#(<= main_~v~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,059 INFO L290 TraceCheckUtils]: 50: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,059 INFO L272 TraceCheckUtils]: 51: Hoare triple {30494#(<= 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)); {30441#true} is VALID [2022-04-08 06:05:02,060 INFO L290 TraceCheckUtils]: 52: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,060 INFO L290 TraceCheckUtils]: 53: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,060 INFO L290 TraceCheckUtils]: 54: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,060 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #94#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,060 INFO L290 TraceCheckUtils]: 56: Hoare triple {30494#(<= main_~v~0 1)} assume !!(0 != ~r~0); {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,061 INFO L290 TraceCheckUtils]: 57: Hoare triple {30494#(<= main_~v~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,061 INFO L290 TraceCheckUtils]: 58: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post7 < 20);havoc #t~post7; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,061 INFO L272 TraceCheckUtils]: 59: Hoare triple {30494#(<= 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)); {30441#true} is VALID [2022-04-08 06:05:02,061 INFO L290 TraceCheckUtils]: 60: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,061 INFO L290 TraceCheckUtils]: 61: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,061 INFO L290 TraceCheckUtils]: 62: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,062 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #96#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,062 INFO L290 TraceCheckUtils]: 64: Hoare triple {30494#(<= main_~v~0 1)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,063 INFO L290 TraceCheckUtils]: 65: Hoare triple {30639#(< 0 (+ main_~r~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,063 INFO L290 TraceCheckUtils]: 66: Hoare triple {30639#(< 0 (+ main_~r~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,063 INFO L272 TraceCheckUtils]: 67: Hoare triple {30639#(< 0 (+ main_~r~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)); {30441#true} is VALID [2022-04-08 06:05:02,063 INFO L290 TraceCheckUtils]: 68: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,063 INFO L290 TraceCheckUtils]: 69: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,063 INFO L290 TraceCheckUtils]: 70: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,064 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {30441#true} {30639#(< 0 (+ main_~r~0 1))} #96#return; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,064 INFO L290 TraceCheckUtils]: 72: Hoare triple {30639#(< 0 (+ main_~r~0 1))} assume !(~r~0 > 0); {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,064 INFO L290 TraceCheckUtils]: 73: Hoare triple {30639#(< 0 (+ main_~r~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,064 INFO L290 TraceCheckUtils]: 74: Hoare triple {30639#(< 0 (+ main_~r~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,065 INFO L272 TraceCheckUtils]: 75: Hoare triple {30639#(< 0 (+ main_~r~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)); {30441#true} is VALID [2022-04-08 06:05:02,065 INFO L290 TraceCheckUtils]: 76: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,065 INFO L290 TraceCheckUtils]: 77: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,065 INFO L290 TraceCheckUtils]: 78: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,065 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {30441#true} {30639#(< 0 (+ main_~r~0 1))} #98#return; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,066 INFO L290 TraceCheckUtils]: 80: Hoare triple {30639#(< 0 (+ main_~r~0 1))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {30442#false} is VALID [2022-04-08 06:05:02,066 INFO L290 TraceCheckUtils]: 81: Hoare triple {30442#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {30442#false} is VALID [2022-04-08 06:05:02,066 INFO L290 TraceCheckUtils]: 82: Hoare triple {30442#false} assume !(#t~post8 < 20);havoc #t~post8; {30442#false} is VALID [2022-04-08 06:05:02,066 INFO L290 TraceCheckUtils]: 83: Hoare triple {30442#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30442#false} is VALID [2022-04-08 06:05:02,066 INFO L290 TraceCheckUtils]: 84: Hoare triple {30442#false} assume !(#t~post6 < 20);havoc #t~post6; {30442#false} is VALID [2022-04-08 06:05:02,067 INFO L272 TraceCheckUtils]: 85: Hoare triple {30442#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)); {30442#false} is VALID [2022-04-08 06:05:02,067 INFO L290 TraceCheckUtils]: 86: Hoare triple {30442#false} ~cond := #in~cond; {30442#false} is VALID [2022-04-08 06:05:02,067 INFO L290 TraceCheckUtils]: 87: Hoare triple {30442#false} assume 0 == ~cond; {30442#false} is VALID [2022-04-08 06:05:02,067 INFO L290 TraceCheckUtils]: 88: Hoare triple {30442#false} assume !false; {30442#false} is VALID [2022-04-08 06:05:02,067 INFO L134 CoverageAnalysis]: Checked inductivity of 170 backedges. 26 proven. 16 refuted. 0 times theorem prover too weak. 128 trivial. 0 not checked. [2022-04-08 06:05:02,067 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:05:02,302 INFO L290 TraceCheckUtils]: 88: Hoare triple {30442#false} assume !false; {30442#false} is VALID [2022-04-08 06:05:02,303 INFO L290 TraceCheckUtils]: 87: Hoare triple {30442#false} assume 0 == ~cond; {30442#false} is VALID [2022-04-08 06:05:02,303 INFO L290 TraceCheckUtils]: 86: Hoare triple {30442#false} ~cond := #in~cond; {30442#false} is VALID [2022-04-08 06:05:02,303 INFO L272 TraceCheckUtils]: 85: Hoare triple {30442#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)); {30442#false} is VALID [2022-04-08 06:05:02,303 INFO L290 TraceCheckUtils]: 84: Hoare triple {30442#false} assume !(#t~post6 < 20);havoc #t~post6; {30442#false} is VALID [2022-04-08 06:05:02,303 INFO L290 TraceCheckUtils]: 83: Hoare triple {30442#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30442#false} is VALID [2022-04-08 06:05:02,303 INFO L290 TraceCheckUtils]: 82: Hoare triple {30442#false} assume !(#t~post8 < 20);havoc #t~post8; {30442#false} is VALID [2022-04-08 06:05:02,303 INFO L290 TraceCheckUtils]: 81: Hoare triple {30442#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {30442#false} is VALID [2022-04-08 06:05:02,304 INFO L290 TraceCheckUtils]: 80: Hoare triple {30639#(< 0 (+ main_~r~0 1))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {30442#false} is VALID [2022-04-08 06:05:02,304 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {30441#true} {30639#(< 0 (+ main_~r~0 1))} #98#return; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,305 INFO L290 TraceCheckUtils]: 78: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,305 INFO L290 TraceCheckUtils]: 77: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,305 INFO L290 TraceCheckUtils]: 76: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,305 INFO L272 TraceCheckUtils]: 75: Hoare triple {30639#(< 0 (+ main_~r~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)); {30441#true} is VALID [2022-04-08 06:05:02,305 INFO L290 TraceCheckUtils]: 74: Hoare triple {30639#(< 0 (+ main_~r~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,305 INFO L290 TraceCheckUtils]: 73: Hoare triple {30639#(< 0 (+ main_~r~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,306 INFO L290 TraceCheckUtils]: 72: Hoare triple {30639#(< 0 (+ main_~r~0 1))} assume !(~r~0 > 0); {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,306 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {30441#true} {30639#(< 0 (+ main_~r~0 1))} #96#return; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,306 INFO L290 TraceCheckUtils]: 70: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,306 INFO L290 TraceCheckUtils]: 69: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,306 INFO L290 TraceCheckUtils]: 68: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,306 INFO L272 TraceCheckUtils]: 67: Hoare triple {30639#(< 0 (+ main_~r~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)); {30441#true} is VALID [2022-04-08 06:05:02,307 INFO L290 TraceCheckUtils]: 66: Hoare triple {30639#(< 0 (+ main_~r~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,307 INFO L290 TraceCheckUtils]: 65: Hoare triple {30639#(< 0 (+ main_~r~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,307 INFO L290 TraceCheckUtils]: 64: Hoare triple {30494#(<= main_~v~0 1)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 06:05:02,311 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #96#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,311 INFO L290 TraceCheckUtils]: 62: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,311 INFO L290 TraceCheckUtils]: 61: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,312 INFO L290 TraceCheckUtils]: 60: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,312 INFO L272 TraceCheckUtils]: 59: Hoare triple {30494#(<= 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)); {30441#true} is VALID [2022-04-08 06:05:02,312 INFO L290 TraceCheckUtils]: 58: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post7 < 20);havoc #t~post7; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,312 INFO L290 TraceCheckUtils]: 57: Hoare triple {30494#(<= main_~v~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,313 INFO L290 TraceCheckUtils]: 56: Hoare triple {30494#(<= main_~v~0 1)} assume !!(0 != ~r~0); {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,313 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #94#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,313 INFO L290 TraceCheckUtils]: 54: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,313 INFO L290 TraceCheckUtils]: 53: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,313 INFO L290 TraceCheckUtils]: 52: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,313 INFO L272 TraceCheckUtils]: 51: Hoare triple {30494#(<= 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)); {30441#true} is VALID [2022-04-08 06:05:02,314 INFO L290 TraceCheckUtils]: 50: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,314 INFO L290 TraceCheckUtils]: 49: Hoare triple {30494#(<= main_~v~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,314 INFO L290 TraceCheckUtils]: 48: Hoare triple {30494#(<= main_~v~0 1)} assume !(~r~0 < 0); {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,315 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #98#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,315 INFO L290 TraceCheckUtils]: 46: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,315 INFO L290 TraceCheckUtils]: 45: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,315 INFO L290 TraceCheckUtils]: 44: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,315 INFO L272 TraceCheckUtils]: 43: Hoare triple {30494#(<= 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)); {30441#true} is VALID [2022-04-08 06:05:02,315 INFO L290 TraceCheckUtils]: 42: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post8 < 20);havoc #t~post8; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,316 INFO L290 TraceCheckUtils]: 41: Hoare triple {30494#(<= main_~v~0 1)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,316 INFO L290 TraceCheckUtils]: 40: Hoare triple {30494#(<= main_~v~0 1)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,316 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #98#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,316 INFO L290 TraceCheckUtils]: 38: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,317 INFO L290 TraceCheckUtils]: 37: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,317 INFO L290 TraceCheckUtils]: 36: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,317 INFO L272 TraceCheckUtils]: 35: Hoare triple {30494#(<= 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)); {30441#true} is VALID [2022-04-08 06:05:02,317 INFO L290 TraceCheckUtils]: 34: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post8 < 20);havoc #t~post8; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,317 INFO L290 TraceCheckUtils]: 33: Hoare triple {30494#(<= main_~v~0 1)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,318 INFO L290 TraceCheckUtils]: 32: Hoare triple {30494#(<= main_~v~0 1)} assume !(~r~0 > 0); {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,318 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #96#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,318 INFO L290 TraceCheckUtils]: 30: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,318 INFO L290 TraceCheckUtils]: 29: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,318 INFO L290 TraceCheckUtils]: 28: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,318 INFO L272 TraceCheckUtils]: 27: Hoare triple {30494#(<= 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)); {30441#true} is VALID [2022-04-08 06:05:02,319 INFO L290 TraceCheckUtils]: 26: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post7 < 20);havoc #t~post7; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,319 INFO L290 TraceCheckUtils]: 25: Hoare triple {30494#(<= main_~v~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,319 INFO L290 TraceCheckUtils]: 24: Hoare triple {30494#(<= main_~v~0 1)} assume !!(0 != ~r~0); {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,320 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #94#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,320 INFO L290 TraceCheckUtils]: 22: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,320 INFO L290 TraceCheckUtils]: 21: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,320 INFO L290 TraceCheckUtils]: 20: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,320 INFO L272 TraceCheckUtils]: 19: Hoare triple {30494#(<= 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)); {30441#true} is VALID [2022-04-08 06:05:02,320 INFO L290 TraceCheckUtils]: 18: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,321 INFO L290 TraceCheckUtils]: 17: Hoare triple {30494#(<= main_~v~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,321 INFO L290 TraceCheckUtils]: 16: Hoare triple {30441#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {30494#(<= main_~v~0 1)} is VALID [2022-04-08 06:05:02,321 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {30441#true} {30441#true} #92#return; {30441#true} is VALID [2022-04-08 06:05:02,321 INFO L290 TraceCheckUtils]: 14: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,321 INFO L290 TraceCheckUtils]: 13: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,321 INFO L290 TraceCheckUtils]: 12: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,321 INFO L272 TraceCheckUtils]: 11: Hoare triple {30441#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)); {30441#true} is VALID [2022-04-08 06:05:02,321 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30441#true} {30441#true} #90#return; {30441#true} is VALID [2022-04-08 06:05:02,322 INFO L290 TraceCheckUtils]: 9: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,322 INFO L290 TraceCheckUtils]: 8: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-08 06:05:02,322 INFO L290 TraceCheckUtils]: 7: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-08 06:05:02,322 INFO L272 TraceCheckUtils]: 6: Hoare triple {30441#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {30441#true} is VALID [2022-04-08 06:05:02,322 INFO L290 TraceCheckUtils]: 5: Hoare triple {30441#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; {30441#true} is VALID [2022-04-08 06:05:02,322 INFO L272 TraceCheckUtils]: 4: Hoare triple {30441#true} call #t~ret9 := main(); {30441#true} is VALID [2022-04-08 06:05:02,322 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30441#true} {30441#true} #102#return; {30441#true} is VALID [2022-04-08 06:05:02,322 INFO L290 TraceCheckUtils]: 2: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-08 06:05:02,322 INFO L290 TraceCheckUtils]: 1: Hoare triple {30441#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {30441#true} is VALID [2022-04-08 06:05:02,322 INFO L272 TraceCheckUtils]: 0: Hoare triple {30441#true} call ULTIMATE.init(); {30441#true} is VALID [2022-04-08 06:05:02,322 INFO L134 CoverageAnalysis]: Checked inductivity of 170 backedges. 26 proven. 16 refuted. 0 times theorem prover too weak. 128 trivial. 0 not checked. [2022-04-08 06:05:02,323 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:05:02,323 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1975197151] [2022-04-08 06:05:02,323 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:05:02,323 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1130697899] [2022-04-08 06:05:02,323 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1130697899] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:05:02,323 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:05:02,323 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 4 [2022-04-08 06:05:02,323 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:05:02,323 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1343557005] [2022-04-08 06:05:02,323 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1343557005] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:05:02,323 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:05:02,323 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 06:05:02,324 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [58179457] [2022-04-08 06:05:02,324 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:05:02,324 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 8.5) internal successors, (34), 4 states have internal predecessors, (34), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 89 [2022-04-08 06:05:02,324 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:05:02,324 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 8.5) internal successors, (34), 4 states have internal predecessors, (34), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 06:05:02,360 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:05:02,360 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 06:05:02,360 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:05:02,360 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 06:05:02,361 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 06:05:02,361 INFO L87 Difference]: Start difference. First operand 278 states and 356 transitions. Second operand has 4 states, 4 states have (on average 8.5) internal successors, (34), 4 states have internal predecessors, (34), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 06:05:02,951 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:05:02,951 INFO L93 Difference]: Finished difference Result 427 states and 558 transitions. [2022-04-08 06:05:02,951 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 06:05:02,952 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 8.5) internal successors, (34), 4 states have internal predecessors, (34), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 89 [2022-04-08 06:05:02,952 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:05:02,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 8.5) internal successors, (34), 4 states have internal predecessors, (34), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 06:05:02,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 127 transitions. [2022-04-08 06:05:02,953 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 8.5) internal successors, (34), 4 states have internal predecessors, (34), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 06:05:02,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 127 transitions. [2022-04-08 06:05:02,954 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 127 transitions. [2022-04-08 06:05:03,053 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 127 edges. 127 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:05:03,059 INFO L225 Difference]: With dead ends: 427 [2022-04-08 06:05:03,059 INFO L226 Difference]: Without dead ends: 321 [2022-04-08 06:05:03,059 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 178 GetRequests, 174 SyntacticMatches, 1 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-04-08 06:05:03,060 INFO L913 BasicCegarLoop]: 74 mSDtfsCounter, 11 mSDsluCounter, 68 mSDsCounter, 0 mSdLazyCounter, 44 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 142 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 44 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:05:03,060 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 142 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 44 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:05:03,061 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 321 states. [2022-04-08 06:05:03,436 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 321 to 316. [2022-04-08 06:05:03,436 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:05:03,436 INFO L82 GeneralOperation]: Start isEquivalent. First operand 321 states. Second operand has 316 states, 234 states have (on average 1.205128205128205) internal successors, (282), 240 states have internal predecessors, (282), 65 states have call successors, (65), 18 states have call predecessors, (65), 16 states have return successors, (63), 57 states have call predecessors, (63), 63 states have call successors, (63) [2022-04-08 06:05:03,437 INFO L74 IsIncluded]: Start isIncluded. First operand 321 states. Second operand has 316 states, 234 states have (on average 1.205128205128205) internal successors, (282), 240 states have internal predecessors, (282), 65 states have call successors, (65), 18 states have call predecessors, (65), 16 states have return successors, (63), 57 states have call predecessors, (63), 63 states have call successors, (63) [2022-04-08 06:05:03,437 INFO L87 Difference]: Start difference. First operand 321 states. Second operand has 316 states, 234 states have (on average 1.205128205128205) internal successors, (282), 240 states have internal predecessors, (282), 65 states have call successors, (65), 18 states have call predecessors, (65), 16 states have return successors, (63), 57 states have call predecessors, (63), 63 states have call successors, (63) [2022-04-08 06:05:03,443 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:05:03,444 INFO L93 Difference]: Finished difference Result 321 states and 416 transitions. [2022-04-08 06:05:03,444 INFO L276 IsEmpty]: Start isEmpty. Operand 321 states and 416 transitions. [2022-04-08 06:05:03,444 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:05:03,444 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:05:03,445 INFO L74 IsIncluded]: Start isIncluded. First operand has 316 states, 234 states have (on average 1.205128205128205) internal successors, (282), 240 states have internal predecessors, (282), 65 states have call successors, (65), 18 states have call predecessors, (65), 16 states have return successors, (63), 57 states have call predecessors, (63), 63 states have call successors, (63) Second operand 321 states. [2022-04-08 06:05:03,445 INFO L87 Difference]: Start difference. First operand has 316 states, 234 states have (on average 1.205128205128205) internal successors, (282), 240 states have internal predecessors, (282), 65 states have call successors, (65), 18 states have call predecessors, (65), 16 states have return successors, (63), 57 states have call predecessors, (63), 63 states have call successors, (63) Second operand 321 states. [2022-04-08 06:05:03,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:05:03,450 INFO L93 Difference]: Finished difference Result 321 states and 416 transitions. [2022-04-08 06:05:03,450 INFO L276 IsEmpty]: Start isEmpty. Operand 321 states and 416 transitions. [2022-04-08 06:05:03,451 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:05:03,451 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:05:03,451 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:05:03,451 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:05:03,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 316 states, 234 states have (on average 1.205128205128205) internal successors, (282), 240 states have internal predecessors, (282), 65 states have call successors, (65), 18 states have call predecessors, (65), 16 states have return successors, (63), 57 states have call predecessors, (63), 63 states have call successors, (63) [2022-04-08 06:05:03,457 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 316 states to 316 states and 410 transitions. [2022-04-08 06:05:03,458 INFO L78 Accepts]: Start accepts. Automaton has 316 states and 410 transitions. Word has length 89 [2022-04-08 06:05:03,458 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:05:03,458 INFO L478 AbstractCegarLoop]: Abstraction has 316 states and 410 transitions. [2022-04-08 06:05:03,458 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 8.5) internal successors, (34), 4 states have internal predecessors, (34), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 06:05:03,458 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 316 states and 410 transitions. [2022-04-08 06:05:12,335 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 410 edges. 408 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-08 06:05:12,335 INFO L276 IsEmpty]: Start isEmpty. Operand 316 states and 410 transitions. [2022-04-08 06:05:12,336 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 90 [2022-04-08 06:05:12,336 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:05:12,336 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:05:12,359 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Forceful destruction successful, exit code 0 [2022-04-08 06:05:12,537 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 26 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable24 [2022-04-08 06:05:12,537 INFO L403 AbstractCegarLoop]: === Iteration 26 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:05:12,538 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:05:12,538 INFO L85 PathProgramCache]: Analyzing trace with hash -1322512306, now seen corresponding path program 5 times [2022-04-08 06:05:12,538 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:05:12,538 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2104544026] [2022-04-08 06:05:12,538 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:05:12,538 INFO L85 PathProgramCache]: Analyzing trace with hash -1322512306, now seen corresponding path program 6 times [2022-04-08 06:05:12,539 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:05:12,539 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1706082530] [2022-04-08 06:05:12,539 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:05:12,539 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:05:12,552 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:05:12,552 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [113268157] [2022-04-08 06:05:12,552 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:05:12,552 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:05:12,552 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:05:12,553 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:05:12,554 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Waiting until timeout for monitored process [2022-04-08 06:05:12,717 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-04-08 06:05:12,717 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:05:12,718 INFO L263 TraceCheckSpWp]: Trace formula consists of 230 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-08 06:05:12,743 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:05:12,745 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:05:13,239 INFO L272 TraceCheckUtils]: 0: Hoare triple {33108#true} call ULTIMATE.init(); {33108#true} is VALID [2022-04-08 06:05:13,240 INFO L290 TraceCheckUtils]: 1: Hoare triple {33108#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,240 INFO L290 TraceCheckUtils]: 2: Hoare triple {33116#(<= ~counter~0 0)} assume true; {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,240 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33116#(<= ~counter~0 0)} {33108#true} #102#return; {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,241 INFO L272 TraceCheckUtils]: 4: Hoare triple {33116#(<= ~counter~0 0)} call #t~ret9 := main(); {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,241 INFO L290 TraceCheckUtils]: 5: Hoare triple {33116#(<= ~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; {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,242 INFO L272 TraceCheckUtils]: 6: Hoare triple {33116#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,242 INFO L290 TraceCheckUtils]: 7: Hoare triple {33116#(<= ~counter~0 0)} ~cond := #in~cond; {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,242 INFO L290 TraceCheckUtils]: 8: Hoare triple {33116#(<= ~counter~0 0)} assume !(0 == ~cond); {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,242 INFO L290 TraceCheckUtils]: 9: Hoare triple {33116#(<= ~counter~0 0)} assume true; {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,243 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {33116#(<= ~counter~0 0)} {33116#(<= ~counter~0 0)} #90#return; {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,243 INFO L272 TraceCheckUtils]: 11: Hoare triple {33116#(<= ~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)); {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,244 INFO L290 TraceCheckUtils]: 12: Hoare triple {33116#(<= ~counter~0 0)} ~cond := #in~cond; {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,244 INFO L290 TraceCheckUtils]: 13: Hoare triple {33116#(<= ~counter~0 0)} assume !(0 == ~cond); {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,244 INFO L290 TraceCheckUtils]: 14: Hoare triple {33116#(<= ~counter~0 0)} assume true; {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,245 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {33116#(<= ~counter~0 0)} {33116#(<= ~counter~0 0)} #92#return; {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,245 INFO L290 TraceCheckUtils]: 16: Hoare triple {33116#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {33116#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:13,246 INFO L290 TraceCheckUtils]: 17: Hoare triple {33116#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {33165#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:13,247 INFO L290 TraceCheckUtils]: 18: Hoare triple {33165#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {33165#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:13,247 INFO L272 TraceCheckUtils]: 19: Hoare triple {33165#(<= ~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)); {33165#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:13,248 INFO L290 TraceCheckUtils]: 20: Hoare triple {33165#(<= ~counter~0 1)} ~cond := #in~cond; {33165#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:13,248 INFO L290 TraceCheckUtils]: 21: Hoare triple {33165#(<= ~counter~0 1)} assume !(0 == ~cond); {33165#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:13,248 INFO L290 TraceCheckUtils]: 22: Hoare triple {33165#(<= ~counter~0 1)} assume true; {33165#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:13,249 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {33165#(<= ~counter~0 1)} {33165#(<= ~counter~0 1)} #94#return; {33165#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:13,249 INFO L290 TraceCheckUtils]: 24: Hoare triple {33165#(<= ~counter~0 1)} assume !!(0 != ~r~0); {33165#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:13,250 INFO L290 TraceCheckUtils]: 25: Hoare triple {33165#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {33190#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:13,251 INFO L290 TraceCheckUtils]: 26: Hoare triple {33190#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {33190#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:13,251 INFO L272 TraceCheckUtils]: 27: Hoare triple {33190#(<= ~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)); {33190#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:13,252 INFO L290 TraceCheckUtils]: 28: Hoare triple {33190#(<= ~counter~0 2)} ~cond := #in~cond; {33190#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:13,252 INFO L290 TraceCheckUtils]: 29: Hoare triple {33190#(<= ~counter~0 2)} assume !(0 == ~cond); {33190#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:13,252 INFO L290 TraceCheckUtils]: 30: Hoare triple {33190#(<= ~counter~0 2)} assume true; {33190#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:13,253 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {33190#(<= ~counter~0 2)} {33190#(<= ~counter~0 2)} #96#return; {33190#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:13,253 INFO L290 TraceCheckUtils]: 32: Hoare triple {33190#(<= ~counter~0 2)} assume !(~r~0 > 0); {33190#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:13,254 INFO L290 TraceCheckUtils]: 33: Hoare triple {33190#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {33215#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:13,255 INFO L290 TraceCheckUtils]: 34: Hoare triple {33215#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {33215#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:13,255 INFO L272 TraceCheckUtils]: 35: Hoare triple {33215#(<= ~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)); {33215#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:13,256 INFO L290 TraceCheckUtils]: 36: Hoare triple {33215#(<= ~counter~0 3)} ~cond := #in~cond; {33215#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:13,256 INFO L290 TraceCheckUtils]: 37: Hoare triple {33215#(<= ~counter~0 3)} assume !(0 == ~cond); {33215#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:13,256 INFO L290 TraceCheckUtils]: 38: Hoare triple {33215#(<= ~counter~0 3)} assume true; {33215#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:13,257 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {33215#(<= ~counter~0 3)} {33215#(<= ~counter~0 3)} #98#return; {33215#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:13,257 INFO L290 TraceCheckUtils]: 40: Hoare triple {33215#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {33215#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:13,258 INFO L290 TraceCheckUtils]: 41: Hoare triple {33215#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {33240#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:13,258 INFO L290 TraceCheckUtils]: 42: Hoare triple {33240#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {33240#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:13,259 INFO L272 TraceCheckUtils]: 43: Hoare triple {33240#(<= ~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)); {33240#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:13,259 INFO L290 TraceCheckUtils]: 44: Hoare triple {33240#(<= ~counter~0 4)} ~cond := #in~cond; {33240#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:13,259 INFO L290 TraceCheckUtils]: 45: Hoare triple {33240#(<= ~counter~0 4)} assume !(0 == ~cond); {33240#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:13,260 INFO L290 TraceCheckUtils]: 46: Hoare triple {33240#(<= ~counter~0 4)} assume true; {33240#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:13,260 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {33240#(<= ~counter~0 4)} {33240#(<= ~counter~0 4)} #98#return; {33240#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:13,261 INFO L290 TraceCheckUtils]: 48: Hoare triple {33240#(<= ~counter~0 4)} assume !(~r~0 < 0); {33240#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:13,262 INFO L290 TraceCheckUtils]: 49: Hoare triple {33240#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {33265#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:13,263 INFO L290 TraceCheckUtils]: 50: Hoare triple {33265#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {33265#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:13,263 INFO L272 TraceCheckUtils]: 51: Hoare triple {33265#(<= ~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)); {33265#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:13,264 INFO L290 TraceCheckUtils]: 52: Hoare triple {33265#(<= ~counter~0 5)} ~cond := #in~cond; {33265#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:13,264 INFO L290 TraceCheckUtils]: 53: Hoare triple {33265#(<= ~counter~0 5)} assume !(0 == ~cond); {33265#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:13,264 INFO L290 TraceCheckUtils]: 54: Hoare triple {33265#(<= ~counter~0 5)} assume true; {33265#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:13,265 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {33265#(<= ~counter~0 5)} {33265#(<= ~counter~0 5)} #94#return; {33265#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:13,265 INFO L290 TraceCheckUtils]: 56: Hoare triple {33265#(<= ~counter~0 5)} assume !!(0 != ~r~0); {33265#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:13,266 INFO L290 TraceCheckUtils]: 57: Hoare triple {33265#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {33290#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:13,267 INFO L290 TraceCheckUtils]: 58: Hoare triple {33290#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {33290#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:13,275 INFO L272 TraceCheckUtils]: 59: Hoare triple {33290#(<= ~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)); {33290#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:13,276 INFO L290 TraceCheckUtils]: 60: Hoare triple {33290#(<= ~counter~0 6)} ~cond := #in~cond; {33290#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:13,276 INFO L290 TraceCheckUtils]: 61: Hoare triple {33290#(<= ~counter~0 6)} assume !(0 == ~cond); {33290#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:13,277 INFO L290 TraceCheckUtils]: 62: Hoare triple {33290#(<= ~counter~0 6)} assume true; {33290#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:13,277 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {33290#(<= ~counter~0 6)} {33290#(<= ~counter~0 6)} #96#return; {33290#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:13,278 INFO L290 TraceCheckUtils]: 64: Hoare triple {33290#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {33290#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:13,279 INFO L290 TraceCheckUtils]: 65: Hoare triple {33290#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {33315#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:13,279 INFO L290 TraceCheckUtils]: 66: Hoare triple {33315#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {33315#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:13,280 INFO L272 TraceCheckUtils]: 67: Hoare triple {33315#(<= ~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)); {33315#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:13,280 INFO L290 TraceCheckUtils]: 68: Hoare triple {33315#(<= ~counter~0 7)} ~cond := #in~cond; {33315#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:13,280 INFO L290 TraceCheckUtils]: 69: Hoare triple {33315#(<= ~counter~0 7)} assume !(0 == ~cond); {33315#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:13,281 INFO L290 TraceCheckUtils]: 70: Hoare triple {33315#(<= ~counter~0 7)} assume true; {33315#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:13,281 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {33315#(<= ~counter~0 7)} {33315#(<= ~counter~0 7)} #96#return; {33315#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:13,282 INFO L290 TraceCheckUtils]: 72: Hoare triple {33315#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {33315#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:13,282 INFO L290 TraceCheckUtils]: 73: Hoare triple {33315#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {33340#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:13,283 INFO L290 TraceCheckUtils]: 74: Hoare triple {33340#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {33340#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:13,283 INFO L272 TraceCheckUtils]: 75: Hoare triple {33340#(<= ~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)); {33340#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:13,284 INFO L290 TraceCheckUtils]: 76: Hoare triple {33340#(<= ~counter~0 8)} ~cond := #in~cond; {33340#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:13,284 INFO L290 TraceCheckUtils]: 77: Hoare triple {33340#(<= ~counter~0 8)} assume !(0 == ~cond); {33340#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:13,284 INFO L290 TraceCheckUtils]: 78: Hoare triple {33340#(<= ~counter~0 8)} assume true; {33340#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:13,285 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {33340#(<= ~counter~0 8)} {33340#(<= ~counter~0 8)} #96#return; {33340#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:13,285 INFO L290 TraceCheckUtils]: 80: Hoare triple {33340#(<= ~counter~0 8)} assume !(~r~0 > 0); {33340#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:13,286 INFO L290 TraceCheckUtils]: 81: Hoare triple {33340#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {33365#(<= ~counter~0 9)} is VALID [2022-04-08 06:05:13,286 INFO L290 TraceCheckUtils]: 82: Hoare triple {33365#(<= ~counter~0 9)} assume !(#t~post8 < 20);havoc #t~post8; {33365#(<= ~counter~0 9)} is VALID [2022-04-08 06:05:13,287 INFO L290 TraceCheckUtils]: 83: Hoare triple {33365#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {33372#(<= |main_#t~post6| 9)} is VALID [2022-04-08 06:05:13,287 INFO L290 TraceCheckUtils]: 84: Hoare triple {33372#(<= |main_#t~post6| 9)} assume !(#t~post6 < 20);havoc #t~post6; {33109#false} is VALID [2022-04-08 06:05:13,287 INFO L272 TraceCheckUtils]: 85: Hoare triple {33109#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)); {33109#false} is VALID [2022-04-08 06:05:13,287 INFO L290 TraceCheckUtils]: 86: Hoare triple {33109#false} ~cond := #in~cond; {33109#false} is VALID [2022-04-08 06:05:13,288 INFO L290 TraceCheckUtils]: 87: Hoare triple {33109#false} assume 0 == ~cond; {33109#false} is VALID [2022-04-08 06:05:13,288 INFO L290 TraceCheckUtils]: 88: Hoare triple {33109#false} assume !false; {33109#false} is VALID [2022-04-08 06:05:13,288 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 16 proven. 152 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:05:13,288 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:05:13,794 INFO L290 TraceCheckUtils]: 88: Hoare triple {33109#false} assume !false; {33109#false} is VALID [2022-04-08 06:05:13,795 INFO L290 TraceCheckUtils]: 87: Hoare triple {33109#false} assume 0 == ~cond; {33109#false} is VALID [2022-04-08 06:05:13,795 INFO L290 TraceCheckUtils]: 86: Hoare triple {33109#false} ~cond := #in~cond; {33109#false} is VALID [2022-04-08 06:05:13,795 INFO L272 TraceCheckUtils]: 85: Hoare triple {33109#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)); {33109#false} is VALID [2022-04-08 06:05:13,795 INFO L290 TraceCheckUtils]: 84: Hoare triple {33400#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {33109#false} is VALID [2022-04-08 06:05:13,795 INFO L290 TraceCheckUtils]: 83: Hoare triple {33404#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {33400#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:05:13,796 INFO L290 TraceCheckUtils]: 82: Hoare triple {33404#(< ~counter~0 20)} assume !(#t~post8 < 20);havoc #t~post8; {33404#(< ~counter~0 20)} is VALID [2022-04-08 06:05:13,797 INFO L290 TraceCheckUtils]: 81: Hoare triple {33411#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {33404#(< ~counter~0 20)} is VALID [2022-04-08 06:05:13,797 INFO L290 TraceCheckUtils]: 80: Hoare triple {33411#(< ~counter~0 19)} assume !(~r~0 > 0); {33411#(< ~counter~0 19)} is VALID [2022-04-08 06:05:13,797 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {33108#true} {33411#(< ~counter~0 19)} #96#return; {33411#(< ~counter~0 19)} is VALID [2022-04-08 06:05:13,797 INFO L290 TraceCheckUtils]: 78: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-08 06:05:13,797 INFO L290 TraceCheckUtils]: 77: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-08 06:05:13,798 INFO L290 TraceCheckUtils]: 76: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-08 06:05:13,798 INFO L272 TraceCheckUtils]: 75: Hoare triple {33411#(< ~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)); {33108#true} is VALID [2022-04-08 06:05:13,798 INFO L290 TraceCheckUtils]: 74: Hoare triple {33411#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {33411#(< ~counter~0 19)} is VALID [2022-04-08 06:05:13,798 INFO L290 TraceCheckUtils]: 73: Hoare triple {33436#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {33411#(< ~counter~0 19)} is VALID [2022-04-08 06:05:13,799 INFO L290 TraceCheckUtils]: 72: Hoare triple {33436#(< ~counter~0 18)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {33436#(< ~counter~0 18)} is VALID [2022-04-08 06:05:13,799 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {33108#true} {33436#(< ~counter~0 18)} #96#return; {33436#(< ~counter~0 18)} is VALID [2022-04-08 06:05:13,799 INFO L290 TraceCheckUtils]: 70: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-08 06:05:13,799 INFO L290 TraceCheckUtils]: 69: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-08 06:05:13,799 INFO L290 TraceCheckUtils]: 68: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-08 06:05:13,800 INFO L272 TraceCheckUtils]: 67: Hoare triple {33436#(< ~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)); {33108#true} is VALID [2022-04-08 06:05:13,800 INFO L290 TraceCheckUtils]: 66: Hoare triple {33436#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {33436#(< ~counter~0 18)} is VALID [2022-04-08 06:05:13,800 INFO L290 TraceCheckUtils]: 65: Hoare triple {33461#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {33436#(< ~counter~0 18)} is VALID [2022-04-08 06:05:13,801 INFO L290 TraceCheckUtils]: 64: Hoare triple {33461#(< ~counter~0 17)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {33461#(< ~counter~0 17)} is VALID [2022-04-08 06:05:13,801 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {33108#true} {33461#(< ~counter~0 17)} #96#return; {33461#(< ~counter~0 17)} is VALID [2022-04-08 06:05:13,801 INFO L290 TraceCheckUtils]: 62: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-08 06:05:13,801 INFO L290 TraceCheckUtils]: 61: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-08 06:05:13,801 INFO L290 TraceCheckUtils]: 60: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-08 06:05:13,801 INFO L272 TraceCheckUtils]: 59: Hoare triple {33461#(< ~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)); {33108#true} is VALID [2022-04-08 06:05:13,802 INFO L290 TraceCheckUtils]: 58: Hoare triple {33461#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {33461#(< ~counter~0 17)} is VALID [2022-04-08 06:05:13,802 INFO L290 TraceCheckUtils]: 57: Hoare triple {33486#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {33461#(< ~counter~0 17)} is VALID [2022-04-08 06:05:13,802 INFO L290 TraceCheckUtils]: 56: Hoare triple {33486#(< ~counter~0 16)} assume !!(0 != ~r~0); {33486#(< ~counter~0 16)} is VALID [2022-04-08 06:05:13,803 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {33108#true} {33486#(< ~counter~0 16)} #94#return; {33486#(< ~counter~0 16)} is VALID [2022-04-08 06:05:13,803 INFO L290 TraceCheckUtils]: 54: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-08 06:05:13,803 INFO L290 TraceCheckUtils]: 53: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-08 06:05:13,803 INFO L290 TraceCheckUtils]: 52: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-08 06:05:13,803 INFO L272 TraceCheckUtils]: 51: Hoare triple {33486#(< ~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)); {33108#true} is VALID [2022-04-08 06:05:13,803 INFO L290 TraceCheckUtils]: 50: Hoare triple {33486#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {33486#(< ~counter~0 16)} is VALID [2022-04-08 06:05:13,804 INFO L290 TraceCheckUtils]: 49: Hoare triple {33511#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {33486#(< ~counter~0 16)} is VALID [2022-04-08 06:05:13,804 INFO L290 TraceCheckUtils]: 48: Hoare triple {33511#(< ~counter~0 15)} assume !(~r~0 < 0); {33511#(< ~counter~0 15)} is VALID [2022-04-08 06:05:13,805 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {33108#true} {33511#(< ~counter~0 15)} #98#return; {33511#(< ~counter~0 15)} is VALID [2022-04-08 06:05:13,805 INFO L290 TraceCheckUtils]: 46: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-08 06:05:13,805 INFO L290 TraceCheckUtils]: 45: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-08 06:05:13,805 INFO L290 TraceCheckUtils]: 44: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-08 06:05:13,805 INFO L272 TraceCheckUtils]: 43: Hoare triple {33511#(< ~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)); {33108#true} is VALID [2022-04-08 06:05:13,805 INFO L290 TraceCheckUtils]: 42: Hoare triple {33511#(< ~counter~0 15)} assume !!(#t~post8 < 20);havoc #t~post8; {33511#(< ~counter~0 15)} is VALID [2022-04-08 06:05:13,806 INFO L290 TraceCheckUtils]: 41: Hoare triple {33536#(< ~counter~0 14)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {33511#(< ~counter~0 15)} is VALID [2022-04-08 06:05:13,806 INFO L290 TraceCheckUtils]: 40: Hoare triple {33536#(< ~counter~0 14)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {33536#(< ~counter~0 14)} is VALID [2022-04-08 06:05:13,807 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {33108#true} {33536#(< ~counter~0 14)} #98#return; {33536#(< ~counter~0 14)} is VALID [2022-04-08 06:05:13,807 INFO L290 TraceCheckUtils]: 38: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-08 06:05:13,807 INFO L290 TraceCheckUtils]: 37: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-08 06:05:13,807 INFO L290 TraceCheckUtils]: 36: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-08 06:05:13,807 INFO L272 TraceCheckUtils]: 35: Hoare triple {33536#(< ~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)); {33108#true} is VALID [2022-04-08 06:05:13,807 INFO L290 TraceCheckUtils]: 34: Hoare triple {33536#(< ~counter~0 14)} assume !!(#t~post8 < 20);havoc #t~post8; {33536#(< ~counter~0 14)} is VALID [2022-04-08 06:05:13,808 INFO L290 TraceCheckUtils]: 33: Hoare triple {33561#(< ~counter~0 13)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {33536#(< ~counter~0 14)} is VALID [2022-04-08 06:05:13,808 INFO L290 TraceCheckUtils]: 32: Hoare triple {33561#(< ~counter~0 13)} assume !(~r~0 > 0); {33561#(< ~counter~0 13)} is VALID [2022-04-08 06:05:13,808 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {33108#true} {33561#(< ~counter~0 13)} #96#return; {33561#(< ~counter~0 13)} is VALID [2022-04-08 06:05:13,809 INFO L290 TraceCheckUtils]: 30: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-08 06:05:13,809 INFO L290 TraceCheckUtils]: 29: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-08 06:05:13,809 INFO L290 TraceCheckUtils]: 28: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-08 06:05:13,809 INFO L272 TraceCheckUtils]: 27: Hoare triple {33561#(< ~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)); {33108#true} is VALID [2022-04-08 06:05:13,809 INFO L290 TraceCheckUtils]: 26: Hoare triple {33561#(< ~counter~0 13)} assume !!(#t~post7 < 20);havoc #t~post7; {33561#(< ~counter~0 13)} is VALID [2022-04-08 06:05:13,810 INFO L290 TraceCheckUtils]: 25: Hoare triple {33586#(< ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {33561#(< ~counter~0 13)} is VALID [2022-04-08 06:05:13,810 INFO L290 TraceCheckUtils]: 24: Hoare triple {33586#(< ~counter~0 12)} assume !!(0 != ~r~0); {33586#(< ~counter~0 12)} is VALID [2022-04-08 06:05:13,810 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {33108#true} {33586#(< ~counter~0 12)} #94#return; {33586#(< ~counter~0 12)} is VALID [2022-04-08 06:05:13,810 INFO L290 TraceCheckUtils]: 22: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-08 06:05:13,810 INFO L290 TraceCheckUtils]: 21: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-08 06:05:13,811 INFO L290 TraceCheckUtils]: 20: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-08 06:05:13,811 INFO L272 TraceCheckUtils]: 19: Hoare triple {33586#(< ~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)); {33108#true} is VALID [2022-04-08 06:05:13,811 INFO L290 TraceCheckUtils]: 18: Hoare triple {33586#(< ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {33586#(< ~counter~0 12)} is VALID [2022-04-08 06:05:13,811 INFO L290 TraceCheckUtils]: 17: Hoare triple {33611#(< ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {33586#(< ~counter~0 12)} is VALID [2022-04-08 06:05:13,812 INFO L290 TraceCheckUtils]: 16: Hoare triple {33611#(< ~counter~0 11)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {33611#(< ~counter~0 11)} is VALID [2022-04-08 06:05:13,812 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {33108#true} {33611#(< ~counter~0 11)} #92#return; {33611#(< ~counter~0 11)} is VALID [2022-04-08 06:05:13,812 INFO L290 TraceCheckUtils]: 14: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-08 06:05:13,812 INFO L290 TraceCheckUtils]: 13: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-08 06:05:13,812 INFO L290 TraceCheckUtils]: 12: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-08 06:05:13,812 INFO L272 TraceCheckUtils]: 11: Hoare triple {33611#(< ~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)); {33108#true} is VALID [2022-04-08 06:05:13,813 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {33108#true} {33611#(< ~counter~0 11)} #90#return; {33611#(< ~counter~0 11)} is VALID [2022-04-08 06:05:13,813 INFO L290 TraceCheckUtils]: 9: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-08 06:05:13,813 INFO L290 TraceCheckUtils]: 8: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-08 06:05:13,813 INFO L290 TraceCheckUtils]: 7: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-08 06:05:13,813 INFO L272 TraceCheckUtils]: 6: Hoare triple {33611#(< ~counter~0 11)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {33108#true} is VALID [2022-04-08 06:05:13,813 INFO L290 TraceCheckUtils]: 5: Hoare triple {33611#(< ~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; {33611#(< ~counter~0 11)} is VALID [2022-04-08 06:05:13,814 INFO L272 TraceCheckUtils]: 4: Hoare triple {33611#(< ~counter~0 11)} call #t~ret9 := main(); {33611#(< ~counter~0 11)} is VALID [2022-04-08 06:05:13,814 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33611#(< ~counter~0 11)} {33108#true} #102#return; {33611#(< ~counter~0 11)} is VALID [2022-04-08 06:05:13,814 INFO L290 TraceCheckUtils]: 2: Hoare triple {33611#(< ~counter~0 11)} assume true; {33611#(< ~counter~0 11)} is VALID [2022-04-08 06:05:13,815 INFO L290 TraceCheckUtils]: 1: Hoare triple {33108#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {33611#(< ~counter~0 11)} is VALID [2022-04-08 06:05:13,815 INFO L272 TraceCheckUtils]: 0: Hoare triple {33108#true} call ULTIMATE.init(); {33108#true} is VALID [2022-04-08 06:05:13,815 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 16 proven. 40 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-08 06:05:13,815 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:05:13,815 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1706082530] [2022-04-08 06:05:13,815 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:05:13,815 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [113268157] [2022-04-08 06:05:13,815 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [113268157] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:05:13,815 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:05:13,816 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-08 06:05:13,816 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:05:13,816 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2104544026] [2022-04-08 06:05:13,816 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2104544026] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:05:13,816 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:05:13,816 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 06:05:13,816 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2144469043] [2022-04-08 06:05:13,816 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:05:13,816 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.769230769230769) internal successors, (62), 12 states have internal predecessors, (62), 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 89 [2022-04-08 06:05:13,817 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:05:13,817 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 4.769230769230769) internal successors, (62), 12 states have internal predecessors, (62), 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:05:13,876 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:05:13,876 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 06:05:13,876 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:05:13,876 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 06:05:13,877 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:05:13,877 INFO L87 Difference]: Start difference. First operand 316 states and 410 transitions. Second operand has 13 states, 13 states have (on average 4.769230769230769) internal successors, (62), 12 states have internal predecessors, (62), 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:05:15,080 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:05:15,080 INFO L93 Difference]: Finished difference Result 386 states and 504 transitions. [2022-04-08 06:05:15,081 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-08 06:05:15,081 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.769230769230769) internal successors, (62), 12 states have internal predecessors, (62), 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 89 [2022-04-08 06:05:15,081 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:05:15,081 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.769230769230769) internal successors, (62), 12 states have internal predecessors, (62), 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:05:15,082 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 197 transitions. [2022-04-08 06:05:15,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.769230769230769) internal successors, (62), 12 states have internal predecessors, (62), 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:05:15,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 197 transitions. [2022-04-08 06:05:15,084 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 197 transitions. [2022-04-08 06:05:15,223 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 197 edges. 197 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:05:15,231 INFO L225 Difference]: With dead ends: 386 [2022-04-08 06:05:15,231 INFO L226 Difference]: Without dead ends: 381 [2022-04-08 06:05:15,231 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 183 GetRequests, 155 SyntacticMatches, 0 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 43 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=359, Invalid=511, Unknown=0, NotChecked=0, Total=870 [2022-04-08 06:05:15,231 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 186 mSDsluCounter, 172 mSDsCounter, 0 mSdLazyCounter, 126 mSolverCounterSat, 140 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 186 SdHoareTripleChecker+Valid, 229 SdHoareTripleChecker+Invalid, 266 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 140 IncrementalHoareTripleChecker+Valid, 126 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 06:05:15,232 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [186 Valid, 229 Invalid, 266 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [140 Valid, 126 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 06:05:15,232 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 381 states. [2022-04-08 06:05:15,713 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 381 to 366. [2022-04-08 06:05:15,713 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:05:15,714 INFO L82 GeneralOperation]: Start isEquivalent. First operand 381 states. Second operand has 366 states, 273 states have (on average 1.216117216117216) internal successors, (332), 279 states have internal predecessors, (332), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:05:15,714 INFO L74 IsIncluded]: Start isIncluded. First operand 381 states. Second operand has 366 states, 273 states have (on average 1.216117216117216) internal successors, (332), 279 states have internal predecessors, (332), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:05:15,715 INFO L87 Difference]: Start difference. First operand 381 states. Second operand has 366 states, 273 states have (on average 1.216117216117216) internal successors, (332), 279 states have internal predecessors, (332), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:05:15,733 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:05:15,733 INFO L93 Difference]: Finished difference Result 381 states and 495 transitions. [2022-04-08 06:05:15,733 INFO L276 IsEmpty]: Start isEmpty. Operand 381 states and 495 transitions. [2022-04-08 06:05:15,734 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:05:15,734 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:05:15,735 INFO L74 IsIncluded]: Start isIncluded. First operand has 366 states, 273 states have (on average 1.216117216117216) internal successors, (332), 279 states have internal predecessors, (332), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) Second operand 381 states. [2022-04-08 06:05:15,735 INFO L87 Difference]: Start difference. First operand has 366 states, 273 states have (on average 1.216117216117216) internal successors, (332), 279 states have internal predecessors, (332), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) Second operand 381 states. [2022-04-08 06:05:15,743 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:05:15,743 INFO L93 Difference]: Finished difference Result 381 states and 495 transitions. [2022-04-08 06:05:15,743 INFO L276 IsEmpty]: Start isEmpty. Operand 381 states and 495 transitions. [2022-04-08 06:05:15,744 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:05:15,744 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:05:15,744 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:05:15,744 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:05:15,745 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 366 states, 273 states have (on average 1.216117216117216) internal successors, (332), 279 states have internal predecessors, (332), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:05:15,752 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 366 states to 366 states and 478 transitions. [2022-04-08 06:05:15,752 INFO L78 Accepts]: Start accepts. Automaton has 366 states and 478 transitions. Word has length 89 [2022-04-08 06:05:15,752 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:05:15,752 INFO L478 AbstractCegarLoop]: Abstraction has 366 states and 478 transitions. [2022-04-08 06:05:15,752 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.769230769230769) internal successors, (62), 12 states have internal predecessors, (62), 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:05:15,753 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 366 states and 478 transitions. [2022-04-08 06:05:32,327 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 478 edges. 473 inductive. 0 not inductive. 5 times theorem prover too weak to decide inductivity. [2022-04-08 06:05:32,328 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 478 transitions. [2022-04-08 06:05:32,328 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-08 06:05:32,328 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:05:32,329 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 5, 4, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:05:32,333 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Forceful destruction successful, exit code 0 [2022-04-08 06:05:32,529 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 27 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable25 [2022-04-08 06:05:32,529 INFO L403 AbstractCegarLoop]: === Iteration 27 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:05:32,529 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:05:32,530 INFO L85 PathProgramCache]: Analyzing trace with hash -345961389, now seen corresponding path program 5 times [2022-04-08 06:05:32,530 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:05:32,530 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [10739140] [2022-04-08 06:05:32,530 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:05:32,530 INFO L85 PathProgramCache]: Analyzing trace with hash -345961389, now seen corresponding path program 6 times [2022-04-08 06:05:32,530 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:05:32,530 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [345326718] [2022-04-08 06:05:32,530 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:05:32,530 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:05:32,542 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:05:32,542 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1418239435] [2022-04-08 06:05:32,543 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:05:32,543 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:05:32,543 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:05:32,543 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:05:32,545 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Waiting until timeout for monitored process [2022-04-08 06:05:32,691 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-04-08 06:05:32,691 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:05:32,692 INFO L263 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-08 06:05:32,709 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:05:32,716 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:05:33,109 INFO L272 TraceCheckUtils]: 0: Hoare triple {35943#true} call ULTIMATE.init(); {35943#true} is VALID [2022-04-08 06:05:33,110 INFO L290 TraceCheckUtils]: 1: Hoare triple {35943#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,110 INFO L290 TraceCheckUtils]: 2: Hoare triple {35951#(<= ~counter~0 0)} assume true; {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,111 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35951#(<= ~counter~0 0)} {35943#true} #102#return; {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,111 INFO L272 TraceCheckUtils]: 4: Hoare triple {35951#(<= ~counter~0 0)} call #t~ret9 := main(); {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,111 INFO L290 TraceCheckUtils]: 5: Hoare triple {35951#(<= ~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; {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,111 INFO L272 TraceCheckUtils]: 6: Hoare triple {35951#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,112 INFO L290 TraceCheckUtils]: 7: Hoare triple {35951#(<= ~counter~0 0)} ~cond := #in~cond; {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,112 INFO L290 TraceCheckUtils]: 8: Hoare triple {35951#(<= ~counter~0 0)} assume !(0 == ~cond); {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,112 INFO L290 TraceCheckUtils]: 9: Hoare triple {35951#(<= ~counter~0 0)} assume true; {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,113 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {35951#(<= ~counter~0 0)} {35951#(<= ~counter~0 0)} #90#return; {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,113 INFO L272 TraceCheckUtils]: 11: Hoare triple {35951#(<= ~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)); {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,114 INFO L290 TraceCheckUtils]: 12: Hoare triple {35951#(<= ~counter~0 0)} ~cond := #in~cond; {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,114 INFO L290 TraceCheckUtils]: 13: Hoare triple {35951#(<= ~counter~0 0)} assume !(0 == ~cond); {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,115 INFO L290 TraceCheckUtils]: 14: Hoare triple {35951#(<= ~counter~0 0)} assume true; {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,115 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {35951#(<= ~counter~0 0)} {35951#(<= ~counter~0 0)} #92#return; {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,115 INFO L290 TraceCheckUtils]: 16: Hoare triple {35951#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {35951#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:33,116 INFO L290 TraceCheckUtils]: 17: Hoare triple {35951#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36000#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:33,117 INFO L290 TraceCheckUtils]: 18: Hoare triple {36000#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {36000#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:33,117 INFO L272 TraceCheckUtils]: 19: Hoare triple {36000#(<= ~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)); {36000#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:33,117 INFO L290 TraceCheckUtils]: 20: Hoare triple {36000#(<= ~counter~0 1)} ~cond := #in~cond; {36000#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:33,118 INFO L290 TraceCheckUtils]: 21: Hoare triple {36000#(<= ~counter~0 1)} assume !(0 == ~cond); {36000#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:33,118 INFO L290 TraceCheckUtils]: 22: Hoare triple {36000#(<= ~counter~0 1)} assume true; {36000#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:33,118 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {36000#(<= ~counter~0 1)} {36000#(<= ~counter~0 1)} #94#return; {36000#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:33,119 INFO L290 TraceCheckUtils]: 24: Hoare triple {36000#(<= ~counter~0 1)} assume !!(0 != ~r~0); {36000#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:33,119 INFO L290 TraceCheckUtils]: 25: Hoare triple {36000#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36025#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:33,119 INFO L290 TraceCheckUtils]: 26: Hoare triple {36025#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {36025#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:33,120 INFO L272 TraceCheckUtils]: 27: Hoare triple {36025#(<= ~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)); {36025#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:33,120 INFO L290 TraceCheckUtils]: 28: Hoare triple {36025#(<= ~counter~0 2)} ~cond := #in~cond; {36025#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:33,120 INFO L290 TraceCheckUtils]: 29: Hoare triple {36025#(<= ~counter~0 2)} assume !(0 == ~cond); {36025#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:33,121 INFO L290 TraceCheckUtils]: 30: Hoare triple {36025#(<= ~counter~0 2)} assume true; {36025#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:33,121 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {36025#(<= ~counter~0 2)} {36025#(<= ~counter~0 2)} #96#return; {36025#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:33,121 INFO L290 TraceCheckUtils]: 32: Hoare triple {36025#(<= ~counter~0 2)} assume !(~r~0 > 0); {36025#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:33,122 INFO L290 TraceCheckUtils]: 33: Hoare triple {36025#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36050#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:33,122 INFO L290 TraceCheckUtils]: 34: Hoare triple {36050#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {36050#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:33,123 INFO L272 TraceCheckUtils]: 35: Hoare triple {36050#(<= ~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)); {36050#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:33,123 INFO L290 TraceCheckUtils]: 36: Hoare triple {36050#(<= ~counter~0 3)} ~cond := #in~cond; {36050#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:33,123 INFO L290 TraceCheckUtils]: 37: Hoare triple {36050#(<= ~counter~0 3)} assume !(0 == ~cond); {36050#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:33,123 INFO L290 TraceCheckUtils]: 38: Hoare triple {36050#(<= ~counter~0 3)} assume true; {36050#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:33,124 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {36050#(<= ~counter~0 3)} {36050#(<= ~counter~0 3)} #98#return; {36050#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:33,124 INFO L290 TraceCheckUtils]: 40: Hoare triple {36050#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {36050#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:33,125 INFO L290 TraceCheckUtils]: 41: Hoare triple {36050#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36075#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:33,125 INFO L290 TraceCheckUtils]: 42: Hoare triple {36075#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {36075#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:33,126 INFO L272 TraceCheckUtils]: 43: Hoare triple {36075#(<= ~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)); {36075#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:33,126 INFO L290 TraceCheckUtils]: 44: Hoare triple {36075#(<= ~counter~0 4)} ~cond := #in~cond; {36075#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:33,126 INFO L290 TraceCheckUtils]: 45: Hoare triple {36075#(<= ~counter~0 4)} assume !(0 == ~cond); {36075#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:33,126 INFO L290 TraceCheckUtils]: 46: Hoare triple {36075#(<= ~counter~0 4)} assume true; {36075#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:33,127 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {36075#(<= ~counter~0 4)} {36075#(<= ~counter~0 4)} #98#return; {36075#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:33,127 INFO L290 TraceCheckUtils]: 48: Hoare triple {36075#(<= ~counter~0 4)} assume !(~r~0 < 0); {36075#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:33,128 INFO L290 TraceCheckUtils]: 49: Hoare triple {36075#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36100#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:33,128 INFO L290 TraceCheckUtils]: 50: Hoare triple {36100#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {36100#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:33,128 INFO L272 TraceCheckUtils]: 51: Hoare triple {36100#(<= ~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)); {36100#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:33,129 INFO L290 TraceCheckUtils]: 52: Hoare triple {36100#(<= ~counter~0 5)} ~cond := #in~cond; {36100#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:33,129 INFO L290 TraceCheckUtils]: 53: Hoare triple {36100#(<= ~counter~0 5)} assume !(0 == ~cond); {36100#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:33,129 INFO L290 TraceCheckUtils]: 54: Hoare triple {36100#(<= ~counter~0 5)} assume true; {36100#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:33,130 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {36100#(<= ~counter~0 5)} {36100#(<= ~counter~0 5)} #94#return; {36100#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:33,130 INFO L290 TraceCheckUtils]: 56: Hoare triple {36100#(<= ~counter~0 5)} assume !!(0 != ~r~0); {36100#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:33,130 INFO L290 TraceCheckUtils]: 57: Hoare triple {36100#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36125#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:33,131 INFO L290 TraceCheckUtils]: 58: Hoare triple {36125#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {36125#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:33,131 INFO L272 TraceCheckUtils]: 59: Hoare triple {36125#(<= ~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)); {36125#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:33,131 INFO L290 TraceCheckUtils]: 60: Hoare triple {36125#(<= ~counter~0 6)} ~cond := #in~cond; {36125#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:33,132 INFO L290 TraceCheckUtils]: 61: Hoare triple {36125#(<= ~counter~0 6)} assume !(0 == ~cond); {36125#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:33,132 INFO L290 TraceCheckUtils]: 62: Hoare triple {36125#(<= ~counter~0 6)} assume true; {36125#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:33,132 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {36125#(<= ~counter~0 6)} {36125#(<= ~counter~0 6)} #96#return; {36125#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:33,133 INFO L290 TraceCheckUtils]: 64: Hoare triple {36125#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {36125#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:33,133 INFO L290 TraceCheckUtils]: 65: Hoare triple {36125#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36150#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:33,134 INFO L290 TraceCheckUtils]: 66: Hoare triple {36150#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {36150#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:33,134 INFO L272 TraceCheckUtils]: 67: Hoare triple {36150#(<= ~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)); {36150#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:33,134 INFO L290 TraceCheckUtils]: 68: Hoare triple {36150#(<= ~counter~0 7)} ~cond := #in~cond; {36150#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:33,135 INFO L290 TraceCheckUtils]: 69: Hoare triple {36150#(<= ~counter~0 7)} assume !(0 == ~cond); {36150#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:33,135 INFO L290 TraceCheckUtils]: 70: Hoare triple {36150#(<= ~counter~0 7)} assume true; {36150#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:33,135 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {36150#(<= ~counter~0 7)} {36150#(<= ~counter~0 7)} #96#return; {36150#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:33,136 INFO L290 TraceCheckUtils]: 72: Hoare triple {36150#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {36150#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:33,136 INFO L290 TraceCheckUtils]: 73: Hoare triple {36150#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36175#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:33,136 INFO L290 TraceCheckUtils]: 74: Hoare triple {36175#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {36175#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:33,137 INFO L272 TraceCheckUtils]: 75: Hoare triple {36175#(<= ~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)); {36175#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:33,137 INFO L290 TraceCheckUtils]: 76: Hoare triple {36175#(<= ~counter~0 8)} ~cond := #in~cond; {36175#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:33,137 INFO L290 TraceCheckUtils]: 77: Hoare triple {36175#(<= ~counter~0 8)} assume !(0 == ~cond); {36175#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:33,138 INFO L290 TraceCheckUtils]: 78: Hoare triple {36175#(<= ~counter~0 8)} assume true; {36175#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:33,138 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {36175#(<= ~counter~0 8)} {36175#(<= ~counter~0 8)} #96#return; {36175#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:33,138 INFO L290 TraceCheckUtils]: 80: Hoare triple {36175#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {36175#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:33,139 INFO L290 TraceCheckUtils]: 81: Hoare triple {36175#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36200#(<= |main_#t~post7| 8)} is VALID [2022-04-08 06:05:33,139 INFO L290 TraceCheckUtils]: 82: Hoare triple {36200#(<= |main_#t~post7| 8)} assume !(#t~post7 < 20);havoc #t~post7; {35944#false} is VALID [2022-04-08 06:05:33,139 INFO L290 TraceCheckUtils]: 83: Hoare triple {35944#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {35944#false} is VALID [2022-04-08 06:05:33,139 INFO L290 TraceCheckUtils]: 84: Hoare triple {35944#false} assume !(#t~post8 < 20);havoc #t~post8; {35944#false} is VALID [2022-04-08 06:05:33,139 INFO L290 TraceCheckUtils]: 85: Hoare triple {35944#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {35944#false} is VALID [2022-04-08 06:05:33,139 INFO L290 TraceCheckUtils]: 86: Hoare triple {35944#false} assume !(#t~post6 < 20);havoc #t~post6; {35944#false} is VALID [2022-04-08 06:05:33,139 INFO L272 TraceCheckUtils]: 87: Hoare triple {35944#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)); {35944#false} is VALID [2022-04-08 06:05:33,139 INFO L290 TraceCheckUtils]: 88: Hoare triple {35944#false} ~cond := #in~cond; {35944#false} is VALID [2022-04-08 06:05:33,140 INFO L290 TraceCheckUtils]: 89: Hoare triple {35944#false} assume 0 == ~cond; {35944#false} is VALID [2022-04-08 06:05:33,140 INFO L290 TraceCheckUtils]: 90: Hoare triple {35944#false} assume !false; {35944#false} is VALID [2022-04-08 06:05:33,140 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 24 proven. 152 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:05:33,140 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:05:33,590 INFO L290 TraceCheckUtils]: 90: Hoare triple {35944#false} assume !false; {35944#false} is VALID [2022-04-08 06:05:33,590 INFO L290 TraceCheckUtils]: 89: Hoare triple {35944#false} assume 0 == ~cond; {35944#false} is VALID [2022-04-08 06:05:33,590 INFO L290 TraceCheckUtils]: 88: Hoare triple {35944#false} ~cond := #in~cond; {35944#false} is VALID [2022-04-08 06:05:33,590 INFO L272 TraceCheckUtils]: 87: Hoare triple {35944#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)); {35944#false} is VALID [2022-04-08 06:05:33,590 INFO L290 TraceCheckUtils]: 86: Hoare triple {35944#false} assume !(#t~post6 < 20);havoc #t~post6; {35944#false} is VALID [2022-04-08 06:05:33,591 INFO L290 TraceCheckUtils]: 85: Hoare triple {35944#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {35944#false} is VALID [2022-04-08 06:05:33,591 INFO L290 TraceCheckUtils]: 84: Hoare triple {35944#false} assume !(#t~post8 < 20);havoc #t~post8; {35944#false} is VALID [2022-04-08 06:05:33,591 INFO L290 TraceCheckUtils]: 83: Hoare triple {35944#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {35944#false} is VALID [2022-04-08 06:05:33,591 INFO L290 TraceCheckUtils]: 82: Hoare triple {36252#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {35944#false} is VALID [2022-04-08 06:05:33,591 INFO L290 TraceCheckUtils]: 81: Hoare triple {36256#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36252#(< |main_#t~post7| 20)} is VALID [2022-04-08 06:05:33,592 INFO L290 TraceCheckUtils]: 80: Hoare triple {36256#(< ~counter~0 20)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {36256#(< ~counter~0 20)} is VALID [2022-04-08 06:05:33,592 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {35943#true} {36256#(< ~counter~0 20)} #96#return; {36256#(< ~counter~0 20)} is VALID [2022-04-08 06:05:33,592 INFO L290 TraceCheckUtils]: 78: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-08 06:05:33,592 INFO L290 TraceCheckUtils]: 77: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-08 06:05:33,592 INFO L290 TraceCheckUtils]: 76: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-08 06:05:33,593 INFO L272 TraceCheckUtils]: 75: Hoare triple {36256#(< ~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)); {35943#true} is VALID [2022-04-08 06:05:33,593 INFO L290 TraceCheckUtils]: 74: Hoare triple {36256#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {36256#(< ~counter~0 20)} is VALID [2022-04-08 06:05:33,594 INFO L290 TraceCheckUtils]: 73: Hoare triple {36281#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36256#(< ~counter~0 20)} is VALID [2022-04-08 06:05:33,594 INFO L290 TraceCheckUtils]: 72: Hoare triple {36281#(< ~counter~0 19)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {36281#(< ~counter~0 19)} is VALID [2022-04-08 06:05:33,595 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {35943#true} {36281#(< ~counter~0 19)} #96#return; {36281#(< ~counter~0 19)} is VALID [2022-04-08 06:05:33,595 INFO L290 TraceCheckUtils]: 70: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-08 06:05:33,595 INFO L290 TraceCheckUtils]: 69: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-08 06:05:33,595 INFO L290 TraceCheckUtils]: 68: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-08 06:05:33,595 INFO L272 TraceCheckUtils]: 67: Hoare triple {36281#(< ~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)); {35943#true} is VALID [2022-04-08 06:05:33,595 INFO L290 TraceCheckUtils]: 66: Hoare triple {36281#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {36281#(< ~counter~0 19)} is VALID [2022-04-08 06:05:33,596 INFO L290 TraceCheckUtils]: 65: Hoare triple {36306#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36281#(< ~counter~0 19)} is VALID [2022-04-08 06:05:33,596 INFO L290 TraceCheckUtils]: 64: Hoare triple {36306#(< ~counter~0 18)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {36306#(< ~counter~0 18)} is VALID [2022-04-08 06:05:33,597 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {35943#true} {36306#(< ~counter~0 18)} #96#return; {36306#(< ~counter~0 18)} is VALID [2022-04-08 06:05:33,597 INFO L290 TraceCheckUtils]: 62: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-08 06:05:33,597 INFO L290 TraceCheckUtils]: 61: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-08 06:05:33,597 INFO L290 TraceCheckUtils]: 60: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-08 06:05:33,597 INFO L272 TraceCheckUtils]: 59: Hoare triple {36306#(< ~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)); {35943#true} is VALID [2022-04-08 06:05:33,598 INFO L290 TraceCheckUtils]: 58: Hoare triple {36306#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {36306#(< ~counter~0 18)} is VALID [2022-04-08 06:05:33,598 INFO L290 TraceCheckUtils]: 57: Hoare triple {36331#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36306#(< ~counter~0 18)} is VALID [2022-04-08 06:05:33,599 INFO L290 TraceCheckUtils]: 56: Hoare triple {36331#(< ~counter~0 17)} assume !!(0 != ~r~0); {36331#(< ~counter~0 17)} is VALID [2022-04-08 06:05:33,599 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {35943#true} {36331#(< ~counter~0 17)} #94#return; {36331#(< ~counter~0 17)} is VALID [2022-04-08 06:05:33,599 INFO L290 TraceCheckUtils]: 54: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-08 06:05:33,599 INFO L290 TraceCheckUtils]: 53: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-08 06:05:33,600 INFO L290 TraceCheckUtils]: 52: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-08 06:05:33,600 INFO L272 TraceCheckUtils]: 51: Hoare triple {36331#(< ~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)); {35943#true} is VALID [2022-04-08 06:05:33,600 INFO L290 TraceCheckUtils]: 50: Hoare triple {36331#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {36331#(< ~counter~0 17)} is VALID [2022-04-08 06:05:33,601 INFO L290 TraceCheckUtils]: 49: Hoare triple {36356#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36331#(< ~counter~0 17)} is VALID [2022-04-08 06:05:33,601 INFO L290 TraceCheckUtils]: 48: Hoare triple {36356#(< ~counter~0 16)} assume !(~r~0 < 0); {36356#(< ~counter~0 16)} is VALID [2022-04-08 06:05:33,601 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {35943#true} {36356#(< ~counter~0 16)} #98#return; {36356#(< ~counter~0 16)} is VALID [2022-04-08 06:05:33,602 INFO L290 TraceCheckUtils]: 46: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-08 06:05:33,602 INFO L290 TraceCheckUtils]: 45: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-08 06:05:33,602 INFO L290 TraceCheckUtils]: 44: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-08 06:05:33,602 INFO L272 TraceCheckUtils]: 43: Hoare triple {36356#(< ~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)); {35943#true} is VALID [2022-04-08 06:05:33,602 INFO L290 TraceCheckUtils]: 42: Hoare triple {36356#(< ~counter~0 16)} assume !!(#t~post8 < 20);havoc #t~post8; {36356#(< ~counter~0 16)} is VALID [2022-04-08 06:05:33,603 INFO L290 TraceCheckUtils]: 41: Hoare triple {36381#(< ~counter~0 15)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36356#(< ~counter~0 16)} is VALID [2022-04-08 06:05:33,603 INFO L290 TraceCheckUtils]: 40: Hoare triple {36381#(< ~counter~0 15)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {36381#(< ~counter~0 15)} is VALID [2022-04-08 06:05:33,604 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {35943#true} {36381#(< ~counter~0 15)} #98#return; {36381#(< ~counter~0 15)} is VALID [2022-04-08 06:05:33,604 INFO L290 TraceCheckUtils]: 38: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-08 06:05:33,604 INFO L290 TraceCheckUtils]: 37: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-08 06:05:33,604 INFO L290 TraceCheckUtils]: 36: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-08 06:05:33,604 INFO L272 TraceCheckUtils]: 35: Hoare triple {36381#(< ~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)); {35943#true} is VALID [2022-04-08 06:05:33,604 INFO L290 TraceCheckUtils]: 34: Hoare triple {36381#(< ~counter~0 15)} assume !!(#t~post8 < 20);havoc #t~post8; {36381#(< ~counter~0 15)} is VALID [2022-04-08 06:05:33,605 INFO L290 TraceCheckUtils]: 33: Hoare triple {36406#(< ~counter~0 14)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36381#(< ~counter~0 15)} is VALID [2022-04-08 06:05:33,605 INFO L290 TraceCheckUtils]: 32: Hoare triple {36406#(< ~counter~0 14)} assume !(~r~0 > 0); {36406#(< ~counter~0 14)} is VALID [2022-04-08 06:05:33,606 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {35943#true} {36406#(< ~counter~0 14)} #96#return; {36406#(< ~counter~0 14)} is VALID [2022-04-08 06:05:33,606 INFO L290 TraceCheckUtils]: 30: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-08 06:05:33,606 INFO L290 TraceCheckUtils]: 29: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-08 06:05:33,606 INFO L290 TraceCheckUtils]: 28: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-08 06:05:33,606 INFO L272 TraceCheckUtils]: 27: Hoare triple {36406#(< ~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)); {35943#true} is VALID [2022-04-08 06:05:33,607 INFO L290 TraceCheckUtils]: 26: Hoare triple {36406#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {36406#(< ~counter~0 14)} is VALID [2022-04-08 06:05:33,607 INFO L290 TraceCheckUtils]: 25: Hoare triple {36431#(< ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36406#(< ~counter~0 14)} is VALID [2022-04-08 06:05:33,608 INFO L290 TraceCheckUtils]: 24: Hoare triple {36431#(< ~counter~0 13)} assume !!(0 != ~r~0); {36431#(< ~counter~0 13)} is VALID [2022-04-08 06:05:33,608 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {35943#true} {36431#(< ~counter~0 13)} #94#return; {36431#(< ~counter~0 13)} is VALID [2022-04-08 06:05:33,608 INFO L290 TraceCheckUtils]: 22: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-08 06:05:33,608 INFO L290 TraceCheckUtils]: 21: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-08 06:05:33,609 INFO L290 TraceCheckUtils]: 20: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-08 06:05:33,609 INFO L272 TraceCheckUtils]: 19: Hoare triple {36431#(< ~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)); {35943#true} is VALID [2022-04-08 06:05:33,609 INFO L290 TraceCheckUtils]: 18: Hoare triple {36431#(< ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {36431#(< ~counter~0 13)} is VALID [2022-04-08 06:05:33,610 INFO L290 TraceCheckUtils]: 17: Hoare triple {36456#(< ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36431#(< ~counter~0 13)} is VALID [2022-04-08 06:05:33,610 INFO L290 TraceCheckUtils]: 16: Hoare triple {36456#(< ~counter~0 12)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {36456#(< ~counter~0 12)} is VALID [2022-04-08 06:05:33,610 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {35943#true} {36456#(< ~counter~0 12)} #92#return; {36456#(< ~counter~0 12)} is VALID [2022-04-08 06:05:33,610 INFO L290 TraceCheckUtils]: 14: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-08 06:05:33,610 INFO L290 TraceCheckUtils]: 13: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-08 06:05:33,611 INFO L290 TraceCheckUtils]: 12: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-08 06:05:33,611 INFO L272 TraceCheckUtils]: 11: Hoare triple {36456#(< ~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)); {35943#true} is VALID [2022-04-08 06:05:33,611 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {35943#true} {36456#(< ~counter~0 12)} #90#return; {36456#(< ~counter~0 12)} is VALID [2022-04-08 06:05:33,611 INFO L290 TraceCheckUtils]: 9: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-08 06:05:33,611 INFO L290 TraceCheckUtils]: 8: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-08 06:05:33,611 INFO L290 TraceCheckUtils]: 7: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-08 06:05:33,611 INFO L272 TraceCheckUtils]: 6: Hoare triple {36456#(< ~counter~0 12)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {35943#true} is VALID [2022-04-08 06:05:33,612 INFO L290 TraceCheckUtils]: 5: Hoare triple {36456#(< ~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; {36456#(< ~counter~0 12)} is VALID [2022-04-08 06:05:33,612 INFO L272 TraceCheckUtils]: 4: Hoare triple {36456#(< ~counter~0 12)} call #t~ret9 := main(); {36456#(< ~counter~0 12)} is VALID [2022-04-08 06:05:33,612 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36456#(< ~counter~0 12)} {35943#true} #102#return; {36456#(< ~counter~0 12)} is VALID [2022-04-08 06:05:33,613 INFO L290 TraceCheckUtils]: 2: Hoare triple {36456#(< ~counter~0 12)} assume true; {36456#(< ~counter~0 12)} is VALID [2022-04-08 06:05:33,613 INFO L290 TraceCheckUtils]: 1: Hoare triple {35943#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {36456#(< ~counter~0 12)} is VALID [2022-04-08 06:05:33,613 INFO L272 TraceCheckUtils]: 0: Hoare triple {35943#true} call ULTIMATE.init(); {35943#true} is VALID [2022-04-08 06:05:33,614 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 24 proven. 40 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-08 06:05:33,614 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:05:33,614 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [345326718] [2022-04-08 06:05:33,614 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:05:33,614 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1418239435] [2022-04-08 06:05:33,614 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1418239435] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:05:33,614 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:05:33,614 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-08 06:05:33,614 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:05:33,614 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [10739140] [2022-04-08 06:05:33,614 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [10739140] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:05:33,615 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:05:33,615 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-08 06:05:33,615 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1031290283] [2022-04-08 06:05:33,615 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:05:33,615 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 5.333333333333333) internal successors, (64), 11 states have internal predecessors, (64), 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 91 [2022-04-08 06:05:33,615 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:05:33,615 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 5.333333333333333) internal successors, (64), 11 states have internal predecessors, (64), 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:05:33,691 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:05:33,691 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-08 06:05:33,692 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:05:33,692 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-08 06:05:33,692 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-08 06:05:33,692 INFO L87 Difference]: Start difference. First operand 366 states and 478 transitions. Second operand has 12 states, 12 states have (on average 5.333333333333333) internal successors, (64), 11 states have internal predecessors, (64), 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:05:34,767 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:05:34,768 INFO L93 Difference]: Finished difference Result 455 states and 606 transitions. [2022-04-08 06:05:34,768 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-08 06:05:34,768 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 5.333333333333333) internal successors, (64), 11 states have internal predecessors, (64), 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 91 [2022-04-08 06:05:34,768 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:05:34,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 5.333333333333333) internal successors, (64), 11 states have internal predecessors, (64), 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:05:34,770 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 197 transitions. [2022-04-08 06:05:34,770 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 5.333333333333333) internal successors, (64), 11 states have internal predecessors, (64), 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:05:34,771 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 197 transitions. [2022-04-08 06:05:34,771 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 197 transitions. [2022-04-08 06:05:34,925 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 197 edges. 197 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:05:34,932 INFO L225 Difference]: With dead ends: 455 [2022-04-08 06:05:34,932 INFO L226 Difference]: Without dead ends: 366 [2022-04-08 06:05:34,932 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 188 GetRequests, 161 SyntacticMatches, 0 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 46 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=335, Invalid=477, Unknown=0, NotChecked=0, Total=812 [2022-04-08 06:05:34,933 INFO L913 BasicCegarLoop]: 54 mSDtfsCounter, 117 mSDsluCounter, 151 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 99 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 117 SdHoareTripleChecker+Valid, 205 SdHoareTripleChecker+Invalid, 224 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 99 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 06:05:34,933 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [117 Valid, 205 Invalid, 224 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [99 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 06:05:34,933 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 366 states. [2022-04-08 06:05:35,462 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 366 to 366. [2022-04-08 06:05:35,462 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:05:35,463 INFO L82 GeneralOperation]: Start isEquivalent. First operand 366 states. Second operand has 366 states, 273 states have (on average 1.2014652014652014) internal successors, (328), 279 states have internal predecessors, (328), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:05:35,467 INFO L74 IsIncluded]: Start isIncluded. First operand 366 states. Second operand has 366 states, 273 states have (on average 1.2014652014652014) internal successors, (328), 279 states have internal predecessors, (328), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:05:35,468 INFO L87 Difference]: Start difference. First operand 366 states. Second operand has 366 states, 273 states have (on average 1.2014652014652014) internal successors, (328), 279 states have internal predecessors, (328), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:05:35,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:05:35,474 INFO L93 Difference]: Finished difference Result 366 states and 474 transitions. [2022-04-08 06:05:35,474 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 474 transitions. [2022-04-08 06:05:35,474 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:05:35,474 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:05:35,475 INFO L74 IsIncluded]: Start isIncluded. First operand has 366 states, 273 states have (on average 1.2014652014652014) internal successors, (328), 279 states have internal predecessors, (328), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) Second operand 366 states. [2022-04-08 06:05:35,475 INFO L87 Difference]: Start difference. First operand has 366 states, 273 states have (on average 1.2014652014652014) internal successors, (328), 279 states have internal predecessors, (328), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) Second operand 366 states. [2022-04-08 06:05:35,481 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:05:35,481 INFO L93 Difference]: Finished difference Result 366 states and 474 transitions. [2022-04-08 06:05:35,481 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 474 transitions. [2022-04-08 06:05:35,481 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:05:35,482 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:05:35,482 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:05:35,482 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:05:35,482 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 366 states, 273 states have (on average 1.2014652014652014) internal successors, (328), 279 states have internal predecessors, (328), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:05:35,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 366 states to 366 states and 474 transitions. [2022-04-08 06:05:35,489 INFO L78 Accepts]: Start accepts. Automaton has 366 states and 474 transitions. Word has length 91 [2022-04-08 06:05:35,489 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:05:35,489 INFO L478 AbstractCegarLoop]: Abstraction has 366 states and 474 transitions. [2022-04-08 06:05:35,490 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 5.333333333333333) internal successors, (64), 11 states have internal predecessors, (64), 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:05:35,490 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 366 states and 474 transitions. [2022-04-08 06:05:52,425 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 474 edges. 468 inductive. 0 not inductive. 6 times theorem prover too weak to decide inductivity. [2022-04-08 06:05:52,426 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 474 transitions. [2022-04-08 06:05:52,426 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-08 06:05:52,426 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:05:52,427 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 4, 4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:05:52,431 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Forceful destruction successful, exit code 0 [2022-04-08 06:05:52,631 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 28 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable26 [2022-04-08 06:05:52,631 INFO L403 AbstractCegarLoop]: === Iteration 28 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:05:52,632 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:05:52,632 INFO L85 PathProgramCache]: Analyzing trace with hash 1660747519, now seen corresponding path program 7 times [2022-04-08 06:05:52,632 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:05:52,632 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [320011861] [2022-04-08 06:05:52,632 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:05:52,632 INFO L85 PathProgramCache]: Analyzing trace with hash 1660747519, now seen corresponding path program 8 times [2022-04-08 06:05:52,632 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:05:52,632 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1161890968] [2022-04-08 06:05:52,632 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:05:52,632 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:05:52,642 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:05:52,643 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [99277584] [2022-04-08 06:05:52,643 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:05:52,643 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:05:52,646 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:05:52,651 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:05:52,653 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Waiting until timeout for monitored process [2022-04-08 06:05:52,712 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:05:52,713 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:05:52,713 INFO L263 TraceCheckSpWp]: Trace formula consists of 249 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-08 06:05:52,731 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:05:52,732 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:05:53,164 INFO L272 TraceCheckUtils]: 0: Hoare triple {38898#true} call ULTIMATE.init(); {38898#true} is VALID [2022-04-08 06:05:53,164 INFO L290 TraceCheckUtils]: 1: Hoare triple {38898#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,165 INFO L290 TraceCheckUtils]: 2: Hoare triple {38906#(<= ~counter~0 0)} assume true; {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,165 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38906#(<= ~counter~0 0)} {38898#true} #102#return; {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,165 INFO L272 TraceCheckUtils]: 4: Hoare triple {38906#(<= ~counter~0 0)} call #t~ret9 := main(); {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,166 INFO L290 TraceCheckUtils]: 5: Hoare triple {38906#(<= ~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; {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,166 INFO L272 TraceCheckUtils]: 6: Hoare triple {38906#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,166 INFO L290 TraceCheckUtils]: 7: Hoare triple {38906#(<= ~counter~0 0)} ~cond := #in~cond; {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,166 INFO L290 TraceCheckUtils]: 8: Hoare triple {38906#(<= ~counter~0 0)} assume !(0 == ~cond); {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,167 INFO L290 TraceCheckUtils]: 9: Hoare triple {38906#(<= ~counter~0 0)} assume true; {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,167 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38906#(<= ~counter~0 0)} {38906#(<= ~counter~0 0)} #90#return; {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,167 INFO L272 TraceCheckUtils]: 11: Hoare triple {38906#(<= ~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)); {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,168 INFO L290 TraceCheckUtils]: 12: Hoare triple {38906#(<= ~counter~0 0)} ~cond := #in~cond; {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,168 INFO L290 TraceCheckUtils]: 13: Hoare triple {38906#(<= ~counter~0 0)} assume !(0 == ~cond); {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,168 INFO L290 TraceCheckUtils]: 14: Hoare triple {38906#(<= ~counter~0 0)} assume true; {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,169 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {38906#(<= ~counter~0 0)} {38906#(<= ~counter~0 0)} #92#return; {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,169 INFO L290 TraceCheckUtils]: 16: Hoare triple {38906#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {38906#(<= ~counter~0 0)} is VALID [2022-04-08 06:05:53,170 INFO L290 TraceCheckUtils]: 17: Hoare triple {38906#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38955#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:53,170 INFO L290 TraceCheckUtils]: 18: Hoare triple {38955#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {38955#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:53,171 INFO L272 TraceCheckUtils]: 19: Hoare triple {38955#(<= ~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)); {38955#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:53,171 INFO L290 TraceCheckUtils]: 20: Hoare triple {38955#(<= ~counter~0 1)} ~cond := #in~cond; {38955#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:53,171 INFO L290 TraceCheckUtils]: 21: Hoare triple {38955#(<= ~counter~0 1)} assume !(0 == ~cond); {38955#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:53,171 INFO L290 TraceCheckUtils]: 22: Hoare triple {38955#(<= ~counter~0 1)} assume true; {38955#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:53,172 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {38955#(<= ~counter~0 1)} {38955#(<= ~counter~0 1)} #94#return; {38955#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:53,172 INFO L290 TraceCheckUtils]: 24: Hoare triple {38955#(<= ~counter~0 1)} assume !!(0 != ~r~0); {38955#(<= ~counter~0 1)} is VALID [2022-04-08 06:05:53,173 INFO L290 TraceCheckUtils]: 25: Hoare triple {38955#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38980#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:53,173 INFO L290 TraceCheckUtils]: 26: Hoare triple {38980#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {38980#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:53,174 INFO L272 TraceCheckUtils]: 27: Hoare triple {38980#(<= ~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)); {38980#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:53,174 INFO L290 TraceCheckUtils]: 28: Hoare triple {38980#(<= ~counter~0 2)} ~cond := #in~cond; {38980#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:53,174 INFO L290 TraceCheckUtils]: 29: Hoare triple {38980#(<= ~counter~0 2)} assume !(0 == ~cond); {38980#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:53,174 INFO L290 TraceCheckUtils]: 30: Hoare triple {38980#(<= ~counter~0 2)} assume true; {38980#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:53,175 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {38980#(<= ~counter~0 2)} {38980#(<= ~counter~0 2)} #96#return; {38980#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:53,175 INFO L290 TraceCheckUtils]: 32: Hoare triple {38980#(<= ~counter~0 2)} assume !(~r~0 > 0); {38980#(<= ~counter~0 2)} is VALID [2022-04-08 06:05:53,176 INFO L290 TraceCheckUtils]: 33: Hoare triple {38980#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {39005#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:53,176 INFO L290 TraceCheckUtils]: 34: Hoare triple {39005#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {39005#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:53,176 INFO L272 TraceCheckUtils]: 35: Hoare triple {39005#(<= ~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)); {39005#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:53,177 INFO L290 TraceCheckUtils]: 36: Hoare triple {39005#(<= ~counter~0 3)} ~cond := #in~cond; {39005#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:53,177 INFO L290 TraceCheckUtils]: 37: Hoare triple {39005#(<= ~counter~0 3)} assume !(0 == ~cond); {39005#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:53,177 INFO L290 TraceCheckUtils]: 38: Hoare triple {39005#(<= ~counter~0 3)} assume true; {39005#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:53,178 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {39005#(<= ~counter~0 3)} {39005#(<= ~counter~0 3)} #98#return; {39005#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:53,178 INFO L290 TraceCheckUtils]: 40: Hoare triple {39005#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {39005#(<= ~counter~0 3)} is VALID [2022-04-08 06:05:53,178 INFO L290 TraceCheckUtils]: 41: Hoare triple {39005#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {39030#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:53,179 INFO L290 TraceCheckUtils]: 42: Hoare triple {39030#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {39030#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:53,179 INFO L272 TraceCheckUtils]: 43: Hoare triple {39030#(<= ~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)); {39030#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:53,179 INFO L290 TraceCheckUtils]: 44: Hoare triple {39030#(<= ~counter~0 4)} ~cond := #in~cond; {39030#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:53,180 INFO L290 TraceCheckUtils]: 45: Hoare triple {39030#(<= ~counter~0 4)} assume !(0 == ~cond); {39030#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:53,180 INFO L290 TraceCheckUtils]: 46: Hoare triple {39030#(<= ~counter~0 4)} assume true; {39030#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:53,180 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {39030#(<= ~counter~0 4)} {39030#(<= ~counter~0 4)} #98#return; {39030#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:53,181 INFO L290 TraceCheckUtils]: 48: Hoare triple {39030#(<= ~counter~0 4)} assume !(~r~0 < 0); {39030#(<= ~counter~0 4)} is VALID [2022-04-08 06:05:53,181 INFO L290 TraceCheckUtils]: 49: Hoare triple {39030#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {39055#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:53,182 INFO L290 TraceCheckUtils]: 50: Hoare triple {39055#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {39055#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:53,182 INFO L272 TraceCheckUtils]: 51: Hoare triple {39055#(<= ~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)); {39055#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:53,182 INFO L290 TraceCheckUtils]: 52: Hoare triple {39055#(<= ~counter~0 5)} ~cond := #in~cond; {39055#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:53,183 INFO L290 TraceCheckUtils]: 53: Hoare triple {39055#(<= ~counter~0 5)} assume !(0 == ~cond); {39055#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:53,183 INFO L290 TraceCheckUtils]: 54: Hoare triple {39055#(<= ~counter~0 5)} assume true; {39055#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:53,183 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {39055#(<= ~counter~0 5)} {39055#(<= ~counter~0 5)} #94#return; {39055#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:53,184 INFO L290 TraceCheckUtils]: 56: Hoare triple {39055#(<= ~counter~0 5)} assume !!(0 != ~r~0); {39055#(<= ~counter~0 5)} is VALID [2022-04-08 06:05:53,184 INFO L290 TraceCheckUtils]: 57: Hoare triple {39055#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {39080#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:53,184 INFO L290 TraceCheckUtils]: 58: Hoare triple {39080#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {39080#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:53,185 INFO L272 TraceCheckUtils]: 59: Hoare triple {39080#(<= ~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)); {39080#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:53,185 INFO L290 TraceCheckUtils]: 60: Hoare triple {39080#(<= ~counter~0 6)} ~cond := #in~cond; {39080#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:53,185 INFO L290 TraceCheckUtils]: 61: Hoare triple {39080#(<= ~counter~0 6)} assume !(0 == ~cond); {39080#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:53,186 INFO L290 TraceCheckUtils]: 62: Hoare triple {39080#(<= ~counter~0 6)} assume true; {39080#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:53,186 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {39080#(<= ~counter~0 6)} {39080#(<= ~counter~0 6)} #96#return; {39080#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:53,186 INFO L290 TraceCheckUtils]: 64: Hoare triple {39080#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {39080#(<= ~counter~0 6)} is VALID [2022-04-08 06:05:53,187 INFO L290 TraceCheckUtils]: 65: Hoare triple {39080#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {39105#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:53,187 INFO L290 TraceCheckUtils]: 66: Hoare triple {39105#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {39105#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:53,188 INFO L272 TraceCheckUtils]: 67: Hoare triple {39105#(<= ~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)); {39105#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:53,188 INFO L290 TraceCheckUtils]: 68: Hoare triple {39105#(<= ~counter~0 7)} ~cond := #in~cond; {39105#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:53,188 INFO L290 TraceCheckUtils]: 69: Hoare triple {39105#(<= ~counter~0 7)} assume !(0 == ~cond); {39105#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:53,188 INFO L290 TraceCheckUtils]: 70: Hoare triple {39105#(<= ~counter~0 7)} assume true; {39105#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:53,189 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {39105#(<= ~counter~0 7)} {39105#(<= ~counter~0 7)} #96#return; {39105#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:53,189 INFO L290 TraceCheckUtils]: 72: Hoare triple {39105#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {39105#(<= ~counter~0 7)} is VALID [2022-04-08 06:05:53,190 INFO L290 TraceCheckUtils]: 73: Hoare triple {39105#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {39130#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:53,190 INFO L290 TraceCheckUtils]: 74: Hoare triple {39130#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {39130#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:53,191 INFO L272 TraceCheckUtils]: 75: Hoare triple {39130#(<= ~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)); {39130#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:53,191 INFO L290 TraceCheckUtils]: 76: Hoare triple {39130#(<= ~counter~0 8)} ~cond := #in~cond; {39130#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:53,191 INFO L290 TraceCheckUtils]: 77: Hoare triple {39130#(<= ~counter~0 8)} assume !(0 == ~cond); {39130#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:53,191 INFO L290 TraceCheckUtils]: 78: Hoare triple {39130#(<= ~counter~0 8)} assume true; {39130#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:53,192 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {39130#(<= ~counter~0 8)} {39130#(<= ~counter~0 8)} #96#return; {39130#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:53,192 INFO L290 TraceCheckUtils]: 80: Hoare triple {39130#(<= ~counter~0 8)} assume !(~r~0 > 0); {39130#(<= ~counter~0 8)} is VALID [2022-04-08 06:05:53,193 INFO L290 TraceCheckUtils]: 81: Hoare triple {39130#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {39155#(<= ~counter~0 9)} is VALID [2022-04-08 06:05:53,193 INFO L290 TraceCheckUtils]: 82: Hoare triple {39155#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {39155#(<= ~counter~0 9)} is VALID [2022-04-08 06:05:53,193 INFO L272 TraceCheckUtils]: 83: Hoare triple {39155#(<= ~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)); {39155#(<= ~counter~0 9)} is VALID [2022-04-08 06:05:53,194 INFO L290 TraceCheckUtils]: 84: Hoare triple {39155#(<= ~counter~0 9)} ~cond := #in~cond; {39155#(<= ~counter~0 9)} is VALID [2022-04-08 06:05:53,194 INFO L290 TraceCheckUtils]: 85: Hoare triple {39155#(<= ~counter~0 9)} assume !(0 == ~cond); {39155#(<= ~counter~0 9)} is VALID [2022-04-08 06:05:53,194 INFO L290 TraceCheckUtils]: 86: Hoare triple {39155#(<= ~counter~0 9)} assume true; {39155#(<= ~counter~0 9)} is VALID [2022-04-08 06:05:53,195 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {39155#(<= ~counter~0 9)} {39155#(<= ~counter~0 9)} #98#return; {39155#(<= ~counter~0 9)} is VALID [2022-04-08 06:05:53,195 INFO L290 TraceCheckUtils]: 88: Hoare triple {39155#(<= ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {39155#(<= ~counter~0 9)} is VALID [2022-04-08 06:05:53,195 INFO L290 TraceCheckUtils]: 89: Hoare triple {39155#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {39180#(<= |main_#t~post8| 9)} is VALID [2022-04-08 06:05:53,196 INFO L290 TraceCheckUtils]: 90: Hoare triple {39180#(<= |main_#t~post8| 9)} assume !(#t~post8 < 20);havoc #t~post8; {38899#false} is VALID [2022-04-08 06:05:53,196 INFO L290 TraceCheckUtils]: 91: Hoare triple {38899#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38899#false} is VALID [2022-04-08 06:05:53,196 INFO L290 TraceCheckUtils]: 92: Hoare triple {38899#false} assume !(#t~post6 < 20);havoc #t~post6; {38899#false} is VALID [2022-04-08 06:05:53,196 INFO L272 TraceCheckUtils]: 93: Hoare triple {38899#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)); {38899#false} is VALID [2022-04-08 06:05:53,196 INFO L290 TraceCheckUtils]: 94: Hoare triple {38899#false} ~cond := #in~cond; {38899#false} is VALID [2022-04-08 06:05:53,196 INFO L290 TraceCheckUtils]: 95: Hoare triple {38899#false} assume 0 == ~cond; {38899#false} is VALID [2022-04-08 06:05:53,196 INFO L290 TraceCheckUtils]: 96: Hoare triple {38899#false} assume !false; {38899#false} is VALID [2022-04-08 06:05:53,196 INFO L134 CoverageAnalysis]: Checked inductivity of 216 backedges. 22 proven. 190 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:05:53,197 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:05:53,698 INFO L290 TraceCheckUtils]: 96: Hoare triple {38899#false} assume !false; {38899#false} is VALID [2022-04-08 06:05:53,699 INFO L290 TraceCheckUtils]: 95: Hoare triple {38899#false} assume 0 == ~cond; {38899#false} is VALID [2022-04-08 06:05:53,699 INFO L290 TraceCheckUtils]: 94: Hoare triple {38899#false} ~cond := #in~cond; {38899#false} is VALID [2022-04-08 06:05:53,699 INFO L272 TraceCheckUtils]: 93: Hoare triple {38899#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)); {38899#false} is VALID [2022-04-08 06:05:53,699 INFO L290 TraceCheckUtils]: 92: Hoare triple {38899#false} assume !(#t~post6 < 20);havoc #t~post6; {38899#false} is VALID [2022-04-08 06:05:53,699 INFO L290 TraceCheckUtils]: 91: Hoare triple {38899#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38899#false} is VALID [2022-04-08 06:05:53,699 INFO L290 TraceCheckUtils]: 90: Hoare triple {39220#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {38899#false} is VALID [2022-04-08 06:05:53,700 INFO L290 TraceCheckUtils]: 89: Hoare triple {39224#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {39220#(< |main_#t~post8| 20)} is VALID [2022-04-08 06:05:53,700 INFO L290 TraceCheckUtils]: 88: Hoare triple {39224#(< ~counter~0 20)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {39224#(< ~counter~0 20)} is VALID [2022-04-08 06:05:53,700 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {38898#true} {39224#(< ~counter~0 20)} #98#return; {39224#(< ~counter~0 20)} is VALID [2022-04-08 06:05:53,701 INFO L290 TraceCheckUtils]: 86: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-08 06:05:53,701 INFO L290 TraceCheckUtils]: 85: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-08 06:05:53,701 INFO L290 TraceCheckUtils]: 84: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-08 06:05:53,701 INFO L272 TraceCheckUtils]: 83: Hoare triple {39224#(< ~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)); {38898#true} is VALID [2022-04-08 06:05:53,701 INFO L290 TraceCheckUtils]: 82: Hoare triple {39224#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {39224#(< ~counter~0 20)} is VALID [2022-04-08 06:05:53,702 INFO L290 TraceCheckUtils]: 81: Hoare triple {39249#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {39224#(< ~counter~0 20)} is VALID [2022-04-08 06:05:53,702 INFO L290 TraceCheckUtils]: 80: Hoare triple {39249#(< ~counter~0 19)} assume !(~r~0 > 0); {39249#(< ~counter~0 19)} is VALID [2022-04-08 06:05:53,703 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {38898#true} {39249#(< ~counter~0 19)} #96#return; {39249#(< ~counter~0 19)} is VALID [2022-04-08 06:05:53,703 INFO L290 TraceCheckUtils]: 78: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-08 06:05:53,703 INFO L290 TraceCheckUtils]: 77: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-08 06:05:53,703 INFO L290 TraceCheckUtils]: 76: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-08 06:05:53,703 INFO L272 TraceCheckUtils]: 75: Hoare triple {39249#(< ~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)); {38898#true} is VALID [2022-04-08 06:05:53,703 INFO L290 TraceCheckUtils]: 74: Hoare triple {39249#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {39249#(< ~counter~0 19)} is VALID [2022-04-08 06:05:53,704 INFO L290 TraceCheckUtils]: 73: Hoare triple {39274#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {39249#(< ~counter~0 19)} is VALID [2022-04-08 06:05:53,704 INFO L290 TraceCheckUtils]: 72: Hoare triple {39274#(< ~counter~0 18)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {39274#(< ~counter~0 18)} is VALID [2022-04-08 06:05:53,705 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {38898#true} {39274#(< ~counter~0 18)} #96#return; {39274#(< ~counter~0 18)} is VALID [2022-04-08 06:05:53,705 INFO L290 TraceCheckUtils]: 70: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-08 06:05:53,705 INFO L290 TraceCheckUtils]: 69: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-08 06:05:53,705 INFO L290 TraceCheckUtils]: 68: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-08 06:05:53,705 INFO L272 TraceCheckUtils]: 67: Hoare triple {39274#(< ~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)); {38898#true} is VALID [2022-04-08 06:05:53,705 INFO L290 TraceCheckUtils]: 66: Hoare triple {39274#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {39274#(< ~counter~0 18)} is VALID [2022-04-08 06:05:53,706 INFO L290 TraceCheckUtils]: 65: Hoare triple {39299#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {39274#(< ~counter~0 18)} is VALID [2022-04-08 06:05:53,706 INFO L290 TraceCheckUtils]: 64: Hoare triple {39299#(< ~counter~0 17)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {39299#(< ~counter~0 17)} is VALID [2022-04-08 06:05:53,707 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {38898#true} {39299#(< ~counter~0 17)} #96#return; {39299#(< ~counter~0 17)} is VALID [2022-04-08 06:05:53,707 INFO L290 TraceCheckUtils]: 62: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-08 06:05:53,707 INFO L290 TraceCheckUtils]: 61: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-08 06:05:53,707 INFO L290 TraceCheckUtils]: 60: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-08 06:05:53,707 INFO L272 TraceCheckUtils]: 59: Hoare triple {39299#(< ~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)); {38898#true} is VALID [2022-04-08 06:05:53,707 INFO L290 TraceCheckUtils]: 58: Hoare triple {39299#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {39299#(< ~counter~0 17)} is VALID [2022-04-08 06:05:53,708 INFO L290 TraceCheckUtils]: 57: Hoare triple {39324#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {39299#(< ~counter~0 17)} is VALID [2022-04-08 06:05:53,708 INFO L290 TraceCheckUtils]: 56: Hoare triple {39324#(< ~counter~0 16)} assume !!(0 != ~r~0); {39324#(< ~counter~0 16)} is VALID [2022-04-08 06:05:53,708 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {38898#true} {39324#(< ~counter~0 16)} #94#return; {39324#(< ~counter~0 16)} is VALID [2022-04-08 06:05:53,709 INFO L290 TraceCheckUtils]: 54: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-08 06:05:53,709 INFO L290 TraceCheckUtils]: 53: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-08 06:05:53,709 INFO L290 TraceCheckUtils]: 52: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-08 06:05:53,709 INFO L272 TraceCheckUtils]: 51: Hoare triple {39324#(< ~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)); {38898#true} is VALID [2022-04-08 06:05:53,709 INFO L290 TraceCheckUtils]: 50: Hoare triple {39324#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {39324#(< ~counter~0 16)} is VALID [2022-04-08 06:05:53,710 INFO L290 TraceCheckUtils]: 49: Hoare triple {39349#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {39324#(< ~counter~0 16)} is VALID [2022-04-08 06:05:53,710 INFO L290 TraceCheckUtils]: 48: Hoare triple {39349#(< ~counter~0 15)} assume !(~r~0 < 0); {39349#(< ~counter~0 15)} is VALID [2022-04-08 06:05:53,710 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {38898#true} {39349#(< ~counter~0 15)} #98#return; {39349#(< ~counter~0 15)} is VALID [2022-04-08 06:05:53,710 INFO L290 TraceCheckUtils]: 46: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-08 06:05:53,710 INFO L290 TraceCheckUtils]: 45: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-08 06:05:53,710 INFO L290 TraceCheckUtils]: 44: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-08 06:05:53,711 INFO L272 TraceCheckUtils]: 43: Hoare triple {39349#(< ~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)); {38898#true} is VALID [2022-04-08 06:05:53,711 INFO L290 TraceCheckUtils]: 42: Hoare triple {39349#(< ~counter~0 15)} assume !!(#t~post8 < 20);havoc #t~post8; {39349#(< ~counter~0 15)} is VALID [2022-04-08 06:05:53,711 INFO L290 TraceCheckUtils]: 41: Hoare triple {39374#(< ~counter~0 14)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {39349#(< ~counter~0 15)} is VALID [2022-04-08 06:05:53,712 INFO L290 TraceCheckUtils]: 40: Hoare triple {39374#(< ~counter~0 14)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {39374#(< ~counter~0 14)} is VALID [2022-04-08 06:05:53,712 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {38898#true} {39374#(< ~counter~0 14)} #98#return; {39374#(< ~counter~0 14)} is VALID [2022-04-08 06:05:53,712 INFO L290 TraceCheckUtils]: 38: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-08 06:05:53,712 INFO L290 TraceCheckUtils]: 37: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-08 06:05:53,712 INFO L290 TraceCheckUtils]: 36: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-08 06:05:53,712 INFO L272 TraceCheckUtils]: 35: Hoare triple {39374#(< ~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)); {38898#true} is VALID [2022-04-08 06:05:53,713 INFO L290 TraceCheckUtils]: 34: Hoare triple {39374#(< ~counter~0 14)} assume !!(#t~post8 < 20);havoc #t~post8; {39374#(< ~counter~0 14)} is VALID [2022-04-08 06:05:53,713 INFO L290 TraceCheckUtils]: 33: Hoare triple {39399#(< ~counter~0 13)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {39374#(< ~counter~0 14)} is VALID [2022-04-08 06:05:53,714 INFO L290 TraceCheckUtils]: 32: Hoare triple {39399#(< ~counter~0 13)} assume !(~r~0 > 0); {39399#(< ~counter~0 13)} is VALID [2022-04-08 06:05:53,714 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {38898#true} {39399#(< ~counter~0 13)} #96#return; {39399#(< ~counter~0 13)} is VALID [2022-04-08 06:05:53,714 INFO L290 TraceCheckUtils]: 30: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-08 06:05:53,714 INFO L290 TraceCheckUtils]: 29: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-08 06:05:53,714 INFO L290 TraceCheckUtils]: 28: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-08 06:05:53,714 INFO L272 TraceCheckUtils]: 27: Hoare triple {39399#(< ~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)); {38898#true} is VALID [2022-04-08 06:05:53,715 INFO L290 TraceCheckUtils]: 26: Hoare triple {39399#(< ~counter~0 13)} assume !!(#t~post7 < 20);havoc #t~post7; {39399#(< ~counter~0 13)} is VALID [2022-04-08 06:05:53,715 INFO L290 TraceCheckUtils]: 25: Hoare triple {39424#(< ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {39399#(< ~counter~0 13)} is VALID [2022-04-08 06:05:53,715 INFO L290 TraceCheckUtils]: 24: Hoare triple {39424#(< ~counter~0 12)} assume !!(0 != ~r~0); {39424#(< ~counter~0 12)} is VALID [2022-04-08 06:05:53,716 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {38898#true} {39424#(< ~counter~0 12)} #94#return; {39424#(< ~counter~0 12)} is VALID [2022-04-08 06:05:53,716 INFO L290 TraceCheckUtils]: 22: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-08 06:05:53,716 INFO L290 TraceCheckUtils]: 21: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-08 06:05:53,716 INFO L290 TraceCheckUtils]: 20: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-08 06:05:53,716 INFO L272 TraceCheckUtils]: 19: Hoare triple {39424#(< ~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)); {38898#true} is VALID [2022-04-08 06:05:53,716 INFO L290 TraceCheckUtils]: 18: Hoare triple {39424#(< ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {39424#(< ~counter~0 12)} is VALID [2022-04-08 06:05:53,717 INFO L290 TraceCheckUtils]: 17: Hoare triple {39449#(< ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {39424#(< ~counter~0 12)} is VALID [2022-04-08 06:05:53,717 INFO L290 TraceCheckUtils]: 16: Hoare triple {39449#(< ~counter~0 11)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {39449#(< ~counter~0 11)} is VALID [2022-04-08 06:05:53,718 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {38898#true} {39449#(< ~counter~0 11)} #92#return; {39449#(< ~counter~0 11)} is VALID [2022-04-08 06:05:53,718 INFO L290 TraceCheckUtils]: 14: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-08 06:05:53,718 INFO L290 TraceCheckUtils]: 13: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-08 06:05:53,718 INFO L290 TraceCheckUtils]: 12: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-08 06:05:53,718 INFO L272 TraceCheckUtils]: 11: Hoare triple {39449#(< ~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)); {38898#true} is VALID [2022-04-08 06:05:53,719 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38898#true} {39449#(< ~counter~0 11)} #90#return; {39449#(< ~counter~0 11)} is VALID [2022-04-08 06:05:53,719 INFO L290 TraceCheckUtils]: 9: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-08 06:05:53,719 INFO L290 TraceCheckUtils]: 8: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-08 06:05:53,719 INFO L290 TraceCheckUtils]: 7: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-08 06:05:53,719 INFO L272 TraceCheckUtils]: 6: Hoare triple {39449#(< ~counter~0 11)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {38898#true} is VALID [2022-04-08 06:05:53,720 INFO L290 TraceCheckUtils]: 5: Hoare triple {39449#(< ~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; {39449#(< ~counter~0 11)} is VALID [2022-04-08 06:05:53,720 INFO L272 TraceCheckUtils]: 4: Hoare triple {39449#(< ~counter~0 11)} call #t~ret9 := main(); {39449#(< ~counter~0 11)} is VALID [2022-04-08 06:05:53,720 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39449#(< ~counter~0 11)} {38898#true} #102#return; {39449#(< ~counter~0 11)} is VALID [2022-04-08 06:05:53,720 INFO L290 TraceCheckUtils]: 2: Hoare triple {39449#(< ~counter~0 11)} assume true; {39449#(< ~counter~0 11)} is VALID [2022-04-08 06:05:53,721 INFO L290 TraceCheckUtils]: 1: Hoare triple {38898#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {39449#(< ~counter~0 11)} is VALID [2022-04-08 06:05:53,721 INFO L272 TraceCheckUtils]: 0: Hoare triple {38898#true} call ULTIMATE.init(); {38898#true} is VALID [2022-04-08 06:05:53,721 INFO L134 CoverageAnalysis]: Checked inductivity of 216 backedges. 22 proven. 46 refuted. 0 times theorem prover too weak. 148 trivial. 0 not checked. [2022-04-08 06:05:53,721 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:05:53,721 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1161890968] [2022-04-08 06:05:53,722 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:05:53,722 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [99277584] [2022-04-08 06:05:53,722 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [99277584] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:05:53,722 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:05:53,722 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-08 06:05:53,722 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:05:53,722 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [320011861] [2022-04-08 06:05:53,722 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [320011861] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:05:53,722 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:05:53,722 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 06:05:53,722 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1522844160] [2022-04-08 06:05:53,722 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:05:53,723 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 5.230769230769231) internal successors, (68), 12 states have internal predecessors, (68), 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 97 [2022-04-08 06:05:53,723 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:05:53,723 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 5.230769230769231) internal successors, (68), 12 states have internal predecessors, (68), 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:05:53,790 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:05:53,790 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 06:05:53,790 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:05:53,790 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 06:05:53,791 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:05:53,791 INFO L87 Difference]: Start difference. First operand 366 states and 474 transitions. Second operand has 13 states, 13 states have (on average 5.230769230769231) internal successors, (68), 12 states have internal predecessors, (68), 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:05:54,994 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:05:54,994 INFO L93 Difference]: Finished difference Result 495 states and 661 transitions. [2022-04-08 06:05:54,994 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-08 06:05:54,995 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 5.230769230769231) internal successors, (68), 12 states have internal predecessors, (68), 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 97 [2022-04-08 06:05:54,995 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:05:54,995 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 5.230769230769231) internal successors, (68), 12 states have internal predecessors, (68), 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:05:54,996 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 218 transitions. [2022-04-08 06:05:54,996 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 5.230769230769231) internal successors, (68), 12 states have internal predecessors, (68), 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:05:54,998 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 218 transitions. [2022-04-08 06:05:54,998 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 218 transitions. [2022-04-08 06:05:55,154 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 218 edges. 218 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:05:55,161 INFO L225 Difference]: With dead ends: 495 [2022-04-08 06:05:55,161 INFO L226 Difference]: Without dead ends: 376 [2022-04-08 06:05:55,161 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 200 GetRequests, 171 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 49 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=383, Invalid=547, Unknown=0, NotChecked=0, Total=930 [2022-04-08 06:05:55,162 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 133 mSDsluCounter, 173 mSDsCounter, 0 mSdLazyCounter, 127 mSolverCounterSat, 120 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 133 SdHoareTripleChecker+Valid, 230 SdHoareTripleChecker+Invalid, 247 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 120 IncrementalHoareTripleChecker+Valid, 127 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 06:05:55,162 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [133 Valid, 230 Invalid, 247 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [120 Valid, 127 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 06:05:55,162 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 376 states. [2022-04-08 06:05:55,663 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 376 to 368. [2022-04-08 06:05:55,663 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:05:55,663 INFO L82 GeneralOperation]: Start isEquivalent. First operand 376 states. Second operand has 368 states, 275 states have (on average 1.1963636363636363) internal successors, (329), 279 states have internal predecessors, (329), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:05:55,664 INFO L74 IsIncluded]: Start isIncluded. First operand 376 states. Second operand has 368 states, 275 states have (on average 1.1963636363636363) internal successors, (329), 279 states have internal predecessors, (329), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:05:55,669 INFO L87 Difference]: Start difference. First operand 376 states. Second operand has 368 states, 275 states have (on average 1.1963636363636363) internal successors, (329), 279 states have internal predecessors, (329), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:05:55,677 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:05:55,677 INFO L93 Difference]: Finished difference Result 376 states and 483 transitions. [2022-04-08 06:05:55,677 INFO L276 IsEmpty]: Start isEmpty. Operand 376 states and 483 transitions. [2022-04-08 06:05:55,678 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:05:55,678 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:05:55,679 INFO L74 IsIncluded]: Start isIncluded. First operand has 368 states, 275 states have (on average 1.1963636363636363) internal successors, (329), 279 states have internal predecessors, (329), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) Second operand 376 states. [2022-04-08 06:05:55,683 INFO L87 Difference]: Start difference. First operand has 368 states, 275 states have (on average 1.1963636363636363) internal successors, (329), 279 states have internal predecessors, (329), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) Second operand 376 states. [2022-04-08 06:05:55,689 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:05:55,689 INFO L93 Difference]: Finished difference Result 376 states and 483 transitions. [2022-04-08 06:05:55,690 INFO L276 IsEmpty]: Start isEmpty. Operand 376 states and 483 transitions. [2022-04-08 06:05:55,690 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:05:55,690 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:05:55,690 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:05:55,690 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:05:55,691 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 368 states, 275 states have (on average 1.1963636363636363) internal successors, (329), 279 states have internal predecessors, (329), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:05:55,698 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 368 states to 368 states and 475 transitions. [2022-04-08 06:05:55,698 INFO L78 Accepts]: Start accepts. Automaton has 368 states and 475 transitions. Word has length 97 [2022-04-08 06:05:55,698 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:05:55,698 INFO L478 AbstractCegarLoop]: Abstraction has 368 states and 475 transitions. [2022-04-08 06:05:55,698 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 5.230769230769231) internal successors, (68), 12 states have internal predecessors, (68), 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:05:55,698 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 368 states and 475 transitions. [2022-04-08 06:06:06,066 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 475 edges. 474 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:06:06,066 INFO L276 IsEmpty]: Start isEmpty. Operand 368 states and 475 transitions. [2022-04-08 06:06:06,067 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 100 [2022-04-08 06:06:06,067 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:06:06,067 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:06:06,088 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Ended with exit code 0 [2022-04-08 06:06:06,267 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 29 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable27 [2022-04-08 06:06:06,268 INFO L403 AbstractCegarLoop]: === Iteration 29 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:06:06,268 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:06:06,268 INFO L85 PathProgramCache]: Analyzing trace with hash 1020733748, now seen corresponding path program 7 times [2022-04-08 06:06:06,268 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:06:06,268 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [696607183] [2022-04-08 06:06:06,268 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:06:06,268 INFO L85 PathProgramCache]: Analyzing trace with hash 1020733748, now seen corresponding path program 8 times [2022-04-08 06:06:06,268 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:06:06,268 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2053067892] [2022-04-08 06:06:06,269 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:06:06,269 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:06:06,278 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:06:06,279 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [562723531] [2022-04-08 06:06:06,279 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:06:06,279 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:06:06,279 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:06:06,280 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:06:06,280 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Waiting until timeout for monitored process [2022-04-08 06:06:06,329 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:06:06,329 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:06:06,330 INFO L263 TraceCheckSpWp]: Trace formula consists of 246 conjuncts, 3 conjunts are in the unsatisfiable core [2022-04-08 06:06:06,344 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:06:06,345 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:06:06,547 INFO L272 TraceCheckUtils]: 0: Hoare triple {41995#true} call ULTIMATE.init(); {41995#true} is VALID [2022-04-08 06:06:06,547 INFO L290 TraceCheckUtils]: 1: Hoare triple {41995#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {41995#true} is VALID [2022-04-08 06:06:06,547 INFO L290 TraceCheckUtils]: 2: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-08 06:06:06,547 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41995#true} {41995#true} #102#return; {41995#true} is VALID [2022-04-08 06:06:06,547 INFO L272 TraceCheckUtils]: 4: Hoare triple {41995#true} call #t~ret9 := main(); {41995#true} is VALID [2022-04-08 06:06:06,548 INFO L290 TraceCheckUtils]: 5: Hoare triple {41995#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; {41995#true} is VALID [2022-04-08 06:06:06,548 INFO L272 TraceCheckUtils]: 6: Hoare triple {41995#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {41995#true} is VALID [2022-04-08 06:06:06,548 INFO L290 TraceCheckUtils]: 7: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-08 06:06:06,548 INFO L290 TraceCheckUtils]: 8: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-08 06:06:06,548 INFO L290 TraceCheckUtils]: 9: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-08 06:06:06,548 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41995#true} {41995#true} #90#return; {41995#true} is VALID [2022-04-08 06:06:06,548 INFO L272 TraceCheckUtils]: 11: Hoare triple {41995#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)); {41995#true} is VALID [2022-04-08 06:06:06,548 INFO L290 TraceCheckUtils]: 12: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-08 06:06:06,548 INFO L290 TraceCheckUtils]: 13: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-08 06:06:06,548 INFO L290 TraceCheckUtils]: 14: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-08 06:06:06,548 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41995#true} {41995#true} #92#return; {41995#true} is VALID [2022-04-08 06:06:06,548 INFO L290 TraceCheckUtils]: 16: Hoare triple {41995#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {41995#true} is VALID [2022-04-08 06:06:06,548 INFO L290 TraceCheckUtils]: 17: Hoare triple {41995#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41995#true} is VALID [2022-04-08 06:06:06,548 INFO L290 TraceCheckUtils]: 18: Hoare triple {41995#true} assume !!(#t~post6 < 20);havoc #t~post6; {41995#true} is VALID [2022-04-08 06:06:06,548 INFO L272 TraceCheckUtils]: 19: Hoare triple {41995#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)); {41995#true} is VALID [2022-04-08 06:06:06,549 INFO L290 TraceCheckUtils]: 20: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-08 06:06:06,549 INFO L290 TraceCheckUtils]: 21: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-08 06:06:06,549 INFO L290 TraceCheckUtils]: 22: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-08 06:06:06,549 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {41995#true} {41995#true} #94#return; {41995#true} is VALID [2022-04-08 06:06:06,549 INFO L290 TraceCheckUtils]: 24: Hoare triple {41995#true} assume !!(0 != ~r~0); {41995#true} is VALID [2022-04-08 06:06:06,549 INFO L290 TraceCheckUtils]: 25: Hoare triple {41995#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41995#true} is VALID [2022-04-08 06:06:06,549 INFO L290 TraceCheckUtils]: 26: Hoare triple {41995#true} assume !!(#t~post7 < 20);havoc #t~post7; {41995#true} is VALID [2022-04-08 06:06:06,549 INFO L272 TraceCheckUtils]: 27: Hoare triple {41995#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)); {41995#true} is VALID [2022-04-08 06:06:06,549 INFO L290 TraceCheckUtils]: 28: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-08 06:06:06,549 INFO L290 TraceCheckUtils]: 29: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-08 06:06:06,549 INFO L290 TraceCheckUtils]: 30: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-08 06:06:06,549 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {41995#true} {41995#true} #96#return; {41995#true} is VALID [2022-04-08 06:06:06,549 INFO L290 TraceCheckUtils]: 32: Hoare triple {41995#true} assume !(~r~0 > 0); {41995#true} is VALID [2022-04-08 06:06:06,549 INFO L290 TraceCheckUtils]: 33: Hoare triple {41995#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {41995#true} is VALID [2022-04-08 06:06:06,549 INFO L290 TraceCheckUtils]: 34: Hoare triple {41995#true} assume !!(#t~post8 < 20);havoc #t~post8; {41995#true} is VALID [2022-04-08 06:06:06,550 INFO L272 TraceCheckUtils]: 35: Hoare triple {41995#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)); {41995#true} is VALID [2022-04-08 06:06:06,550 INFO L290 TraceCheckUtils]: 36: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-08 06:06:06,550 INFO L290 TraceCheckUtils]: 37: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-08 06:06:06,550 INFO L290 TraceCheckUtils]: 38: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-08 06:06:06,550 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {41995#true} {41995#true} #98#return; {41995#true} is VALID [2022-04-08 06:06:06,550 INFO L290 TraceCheckUtils]: 40: Hoare triple {41995#true} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {41995#true} is VALID [2022-04-08 06:06:06,550 INFO L290 TraceCheckUtils]: 41: Hoare triple {41995#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {41995#true} is VALID [2022-04-08 06:06:06,550 INFO L290 TraceCheckUtils]: 42: Hoare triple {41995#true} assume !!(#t~post8 < 20);havoc #t~post8; {41995#true} is VALID [2022-04-08 06:06:06,550 INFO L272 TraceCheckUtils]: 43: Hoare triple {41995#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)); {41995#true} is VALID [2022-04-08 06:06:06,550 INFO L290 TraceCheckUtils]: 44: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-08 06:06:06,550 INFO L290 TraceCheckUtils]: 45: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-08 06:06:06,550 INFO L290 TraceCheckUtils]: 46: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-08 06:06:06,550 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {41995#true} {41995#true} #98#return; {41995#true} is VALID [2022-04-08 06:06:06,550 INFO L290 TraceCheckUtils]: 48: Hoare triple {41995#true} assume !(~r~0 < 0); {41995#true} is VALID [2022-04-08 06:06:06,551 INFO L290 TraceCheckUtils]: 49: Hoare triple {41995#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41995#true} is VALID [2022-04-08 06:06:06,551 INFO L290 TraceCheckUtils]: 50: Hoare triple {41995#true} assume !!(#t~post6 < 20);havoc #t~post6; {41995#true} is VALID [2022-04-08 06:06:06,551 INFO L272 TraceCheckUtils]: 51: Hoare triple {41995#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)); {41995#true} is VALID [2022-04-08 06:06:06,551 INFO L290 TraceCheckUtils]: 52: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-08 06:06:06,551 INFO L290 TraceCheckUtils]: 53: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-08 06:06:06,551 INFO L290 TraceCheckUtils]: 54: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-08 06:06:06,551 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {41995#true} {41995#true} #94#return; {41995#true} is VALID [2022-04-08 06:06:06,551 INFO L290 TraceCheckUtils]: 56: Hoare triple {41995#true} assume !!(0 != ~r~0); {41995#true} is VALID [2022-04-08 06:06:06,551 INFO L290 TraceCheckUtils]: 57: Hoare triple {41995#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41995#true} is VALID [2022-04-08 06:06:06,551 INFO L290 TraceCheckUtils]: 58: Hoare triple {41995#true} assume !!(#t~post7 < 20);havoc #t~post7; {41995#true} is VALID [2022-04-08 06:06:06,551 INFO L272 TraceCheckUtils]: 59: Hoare triple {41995#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)); {41995#true} is VALID [2022-04-08 06:06:06,551 INFO L290 TraceCheckUtils]: 60: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-08 06:06:06,552 INFO L290 TraceCheckUtils]: 61: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-08 06:06:06,552 INFO L290 TraceCheckUtils]: 62: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-08 06:06:06,552 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {41995#true} {41995#true} #96#return; {41995#true} is VALID [2022-04-08 06:06:06,552 INFO L290 TraceCheckUtils]: 64: Hoare triple {41995#true} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {41995#true} is VALID [2022-04-08 06:06:06,552 INFO L290 TraceCheckUtils]: 65: Hoare triple {41995#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41995#true} is VALID [2022-04-08 06:06:06,552 INFO L290 TraceCheckUtils]: 66: Hoare triple {41995#true} assume !!(#t~post7 < 20);havoc #t~post7; {41995#true} is VALID [2022-04-08 06:06:06,552 INFO L272 TraceCheckUtils]: 67: Hoare triple {41995#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)); {41995#true} is VALID [2022-04-08 06:06:06,552 INFO L290 TraceCheckUtils]: 68: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-08 06:06:06,552 INFO L290 TraceCheckUtils]: 69: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-08 06:06:06,552 INFO L290 TraceCheckUtils]: 70: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-08 06:06:06,552 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {41995#true} {41995#true} #96#return; {41995#true} is VALID [2022-04-08 06:06:06,557 INFO L290 TraceCheckUtils]: 72: Hoare triple {41995#true} assume !(~r~0 > 0); {42216#(not (< 0 main_~r~0))} is VALID [2022-04-08 06:06:06,557 INFO L290 TraceCheckUtils]: 73: Hoare triple {42216#(not (< 0 main_~r~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {42216#(not (< 0 main_~r~0))} is VALID [2022-04-08 06:06:06,557 INFO L290 TraceCheckUtils]: 74: Hoare triple {42216#(not (< 0 main_~r~0))} assume !!(#t~post8 < 20);havoc #t~post8; {42216#(not (< 0 main_~r~0))} is VALID [2022-04-08 06:06:06,557 INFO L272 TraceCheckUtils]: 75: Hoare triple {42216#(not (< 0 main_~r~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {41995#true} is VALID [2022-04-08 06:06:06,558 INFO L290 TraceCheckUtils]: 76: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-08 06:06:06,558 INFO L290 TraceCheckUtils]: 77: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-08 06:06:06,558 INFO L290 TraceCheckUtils]: 78: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-08 06:06:06,558 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {41995#true} {42216#(not (< 0 main_~r~0))} #98#return; {42216#(not (< 0 main_~r~0))} is VALID [2022-04-08 06:06:06,558 INFO L290 TraceCheckUtils]: 80: Hoare triple {42216#(not (< 0 main_~r~0))} assume !(~r~0 < 0); {42241#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 06:06:06,559 INFO L290 TraceCheckUtils]: 81: Hoare triple {42241#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {42241#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 06:06:06,559 INFO L290 TraceCheckUtils]: 82: Hoare triple {42241#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} assume !!(#t~post6 < 20);havoc #t~post6; {42241#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 06:06:06,559 INFO L272 TraceCheckUtils]: 83: Hoare triple {42241#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {41995#true} is VALID [2022-04-08 06:06:06,559 INFO L290 TraceCheckUtils]: 84: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-08 06:06:06,559 INFO L290 TraceCheckUtils]: 85: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-08 06:06:06,559 INFO L290 TraceCheckUtils]: 86: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-08 06:06:06,560 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {41995#true} {42241#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} #94#return; {42241#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 06:06:06,560 INFO L290 TraceCheckUtils]: 88: Hoare triple {42241#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} assume !!(0 != ~r~0); {41996#false} is VALID [2022-04-08 06:06:06,560 INFO L290 TraceCheckUtils]: 89: Hoare triple {41996#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41996#false} is VALID [2022-04-08 06:06:06,560 INFO L290 TraceCheckUtils]: 90: Hoare triple {41996#false} assume !(#t~post7 < 20);havoc #t~post7; {41996#false} is VALID [2022-04-08 06:06:06,560 INFO L290 TraceCheckUtils]: 91: Hoare triple {41996#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {41996#false} is VALID [2022-04-08 06:06:06,560 INFO L290 TraceCheckUtils]: 92: Hoare triple {41996#false} assume !(#t~post8 < 20);havoc #t~post8; {41996#false} is VALID [2022-04-08 06:06:06,561 INFO L290 TraceCheckUtils]: 93: Hoare triple {41996#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41996#false} is VALID [2022-04-08 06:06:06,561 INFO L290 TraceCheckUtils]: 94: Hoare triple {41996#false} assume !(#t~post6 < 20);havoc #t~post6; {41996#false} is VALID [2022-04-08 06:06:06,561 INFO L272 TraceCheckUtils]: 95: Hoare triple {41996#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)); {41996#false} is VALID [2022-04-08 06:06:06,561 INFO L290 TraceCheckUtils]: 96: Hoare triple {41996#false} ~cond := #in~cond; {41996#false} is VALID [2022-04-08 06:06:06,561 INFO L290 TraceCheckUtils]: 97: Hoare triple {41996#false} assume 0 == ~cond; {41996#false} is VALID [2022-04-08 06:06:06,561 INFO L290 TraceCheckUtils]: 98: Hoare triple {41996#false} assume !false; {41996#false} is VALID [2022-04-08 06:06:06,561 INFO L134 CoverageAnalysis]: Checked inductivity of 220 backedges. 52 proven. 0 refuted. 0 times theorem prover too weak. 168 trivial. 0 not checked. [2022-04-08 06:06:06,561 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 06:06:06,561 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:06:06,561 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2053067892] [2022-04-08 06:06:06,562 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:06:06,562 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [562723531] [2022-04-08 06:06:06,562 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [562723531] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:06:06,562 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:06:06,562 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 06:06:06,562 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:06:06,562 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [696607183] [2022-04-08 06:06:06,562 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [696607183] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:06:06,562 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:06:06,562 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 06:06:06,562 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [303832095] [2022-04-08 06:06:06,562 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:06:06,563 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 99 [2022-04-08 06:06:06,563 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:06:06,563 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 06:06:06,606 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:06:06,607 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 06:06:06,607 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:06:06,607 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 06:06:06,607 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-08 06:06:06,608 INFO L87 Difference]: Start difference. First operand 368 states and 475 transitions. Second operand has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 06:06:07,310 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:06:07,310 INFO L93 Difference]: Finished difference Result 528 states and 693 transitions. [2022-04-08 06:06:07,310 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 06:06:07,310 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 99 [2022-04-08 06:06:07,311 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:06:07,311 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 06:06:07,311 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 94 transitions. [2022-04-08 06:06:07,311 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 06:06:07,312 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 94 transitions. [2022-04-08 06:06:07,312 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 94 transitions. [2022-04-08 06:06:07,378 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:06:07,386 INFO L225 Difference]: With dead ends: 528 [2022-04-08 06:06:07,386 INFO L226 Difference]: Without dead ends: 386 [2022-04-08 06:06:07,387 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 98 GetRequests, 96 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-08 06:06:07,387 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 13 mSDsluCounter, 40 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 93 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 21 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:06:07,387 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [15 Valid, 93 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:06:07,388 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 386 states. [2022-04-08 06:06:07,880 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 386 to 376. [2022-04-08 06:06:07,880 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:06:07,881 INFO L82 GeneralOperation]: Start isEquivalent. First operand 386 states. Second operand has 376 states, 283 states have (on average 1.2014134275618376) internal successors, (340), 287 states have internal predecessors, (340), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:06:07,881 INFO L74 IsIncluded]: Start isIncluded. First operand 386 states. Second operand has 376 states, 283 states have (on average 1.2014134275618376) internal successors, (340), 287 states have internal predecessors, (340), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:06:07,882 INFO L87 Difference]: Start difference. First operand 386 states. Second operand has 376 states, 283 states have (on average 1.2014134275618376) internal successors, (340), 287 states have internal predecessors, (340), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:06:07,890 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:06:07,890 INFO L93 Difference]: Finished difference Result 386 states and 499 transitions. [2022-04-08 06:06:07,890 INFO L276 IsEmpty]: Start isEmpty. Operand 386 states and 499 transitions. [2022-04-08 06:06:07,890 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:06:07,890 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:06:07,891 INFO L74 IsIncluded]: Start isIncluded. First operand has 376 states, 283 states have (on average 1.2014134275618376) internal successors, (340), 287 states have internal predecessors, (340), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) Second operand 386 states. [2022-04-08 06:06:07,891 INFO L87 Difference]: Start difference. First operand has 376 states, 283 states have (on average 1.2014134275618376) internal successors, (340), 287 states have internal predecessors, (340), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) Second operand 386 states. [2022-04-08 06:06:07,898 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:06:07,898 INFO L93 Difference]: Finished difference Result 386 states and 499 transitions. [2022-04-08 06:06:07,898 INFO L276 IsEmpty]: Start isEmpty. Operand 386 states and 499 transitions. [2022-04-08 06:06:07,899 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:06:07,899 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:06:07,899 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:06:07,899 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:06:07,899 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 376 states, 283 states have (on average 1.2014134275618376) internal successors, (340), 287 states have internal predecessors, (340), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:06:07,907 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 376 states to 376 states and 486 transitions. [2022-04-08 06:06:07,907 INFO L78 Accepts]: Start accepts. Automaton has 376 states and 486 transitions. Word has length 99 [2022-04-08 06:06:07,907 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:06:07,907 INFO L478 AbstractCegarLoop]: Abstraction has 376 states and 486 transitions. [2022-04-08 06:06:07,907 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 06:06:07,907 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 376 states and 486 transitions. [2022-04-08 06:06:21,271 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 486 edges. 483 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-08 06:06:21,271 INFO L276 IsEmpty]: Start isEmpty. Operand 376 states and 486 transitions. [2022-04-08 06:06:21,272 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 100 [2022-04-08 06:06:21,272 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:06:21,272 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 6, 5, 5, 5, 4, 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, 1, 1, 1, 1, 1] [2022-04-08 06:06:21,288 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Forceful destruction successful, exit code 0 [2022-04-08 06:06:21,472 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 30 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable28 [2022-04-08 06:06:21,472 INFO L403 AbstractCegarLoop]: === Iteration 30 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:06:21,473 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:06:21,473 INFO L85 PathProgramCache]: Analyzing trace with hash 359487094, now seen corresponding path program 9 times [2022-04-08 06:06:21,473 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:06:21,473 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [955698893] [2022-04-08 06:06:21,473 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:06:21,473 INFO L85 PathProgramCache]: Analyzing trace with hash 359487094, now seen corresponding path program 10 times [2022-04-08 06:06:21,473 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:06:21,473 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1746197203] [2022-04-08 06:06:21,473 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:06:21,474 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:06:21,483 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:06:21,483 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1646445195] [2022-04-08 06:06:21,483 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:06:21,484 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:06:21,484 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:06:21,484 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:06:21,485 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Waiting until timeout for monitored process [2022-04-08 06:06:21,654 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:06:21,654 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:06:21,655 INFO L263 TraceCheckSpWp]: Trace formula consists of 258 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-08 06:06:21,674 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:06:21,675 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:06:22,096 INFO L272 TraceCheckUtils]: 0: Hoare triple {44875#true} call ULTIMATE.init(); {44875#true} is VALID [2022-04-08 06:06:22,096 INFO L290 TraceCheckUtils]: 1: Hoare triple {44875#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,097 INFO L290 TraceCheckUtils]: 2: Hoare triple {44883#(<= ~counter~0 0)} assume true; {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,097 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44883#(<= ~counter~0 0)} {44875#true} #102#return; {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,097 INFO L272 TraceCheckUtils]: 4: Hoare triple {44883#(<= ~counter~0 0)} call #t~ret9 := main(); {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,098 INFO L290 TraceCheckUtils]: 5: Hoare triple {44883#(<= ~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; {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,098 INFO L272 TraceCheckUtils]: 6: Hoare triple {44883#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,098 INFO L290 TraceCheckUtils]: 7: Hoare triple {44883#(<= ~counter~0 0)} ~cond := #in~cond; {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,099 INFO L290 TraceCheckUtils]: 8: Hoare triple {44883#(<= ~counter~0 0)} assume !(0 == ~cond); {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,099 INFO L290 TraceCheckUtils]: 9: Hoare triple {44883#(<= ~counter~0 0)} assume true; {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,100 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44883#(<= ~counter~0 0)} {44883#(<= ~counter~0 0)} #90#return; {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,100 INFO L272 TraceCheckUtils]: 11: Hoare triple {44883#(<= ~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)); {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,100 INFO L290 TraceCheckUtils]: 12: Hoare triple {44883#(<= ~counter~0 0)} ~cond := #in~cond; {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,101 INFO L290 TraceCheckUtils]: 13: Hoare triple {44883#(<= ~counter~0 0)} assume !(0 == ~cond); {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,101 INFO L290 TraceCheckUtils]: 14: Hoare triple {44883#(<= ~counter~0 0)} assume true; {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,101 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {44883#(<= ~counter~0 0)} {44883#(<= ~counter~0 0)} #92#return; {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,101 INFO L290 TraceCheckUtils]: 16: Hoare triple {44883#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {44883#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:22,103 INFO L290 TraceCheckUtils]: 17: Hoare triple {44883#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {44932#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:22,103 INFO L290 TraceCheckUtils]: 18: Hoare triple {44932#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {44932#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:22,104 INFO L272 TraceCheckUtils]: 19: Hoare triple {44932#(<= ~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)); {44932#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:22,104 INFO L290 TraceCheckUtils]: 20: Hoare triple {44932#(<= ~counter~0 1)} ~cond := #in~cond; {44932#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:22,104 INFO L290 TraceCheckUtils]: 21: Hoare triple {44932#(<= ~counter~0 1)} assume !(0 == ~cond); {44932#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:22,104 INFO L290 TraceCheckUtils]: 22: Hoare triple {44932#(<= ~counter~0 1)} assume true; {44932#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:22,105 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {44932#(<= ~counter~0 1)} {44932#(<= ~counter~0 1)} #94#return; {44932#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:22,105 INFO L290 TraceCheckUtils]: 24: Hoare triple {44932#(<= ~counter~0 1)} assume !!(0 != ~r~0); {44932#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:22,106 INFO L290 TraceCheckUtils]: 25: Hoare triple {44932#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {44957#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:22,106 INFO L290 TraceCheckUtils]: 26: Hoare triple {44957#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {44957#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:22,107 INFO L272 TraceCheckUtils]: 27: Hoare triple {44957#(<= ~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)); {44957#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:22,107 INFO L290 TraceCheckUtils]: 28: Hoare triple {44957#(<= ~counter~0 2)} ~cond := #in~cond; {44957#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:22,107 INFO L290 TraceCheckUtils]: 29: Hoare triple {44957#(<= ~counter~0 2)} assume !(0 == ~cond); {44957#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:22,107 INFO L290 TraceCheckUtils]: 30: Hoare triple {44957#(<= ~counter~0 2)} assume true; {44957#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:22,108 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {44957#(<= ~counter~0 2)} {44957#(<= ~counter~0 2)} #96#return; {44957#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:22,108 INFO L290 TraceCheckUtils]: 32: Hoare triple {44957#(<= ~counter~0 2)} assume !(~r~0 > 0); {44957#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:22,109 INFO L290 TraceCheckUtils]: 33: Hoare triple {44957#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {44982#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:22,109 INFO L290 TraceCheckUtils]: 34: Hoare triple {44982#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {44982#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:22,109 INFO L272 TraceCheckUtils]: 35: Hoare triple {44982#(<= ~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)); {44982#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:22,110 INFO L290 TraceCheckUtils]: 36: Hoare triple {44982#(<= ~counter~0 3)} ~cond := #in~cond; {44982#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:22,120 INFO L290 TraceCheckUtils]: 37: Hoare triple {44982#(<= ~counter~0 3)} assume !(0 == ~cond); {44982#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:22,121 INFO L290 TraceCheckUtils]: 38: Hoare triple {44982#(<= ~counter~0 3)} assume true; {44982#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:22,121 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {44982#(<= ~counter~0 3)} {44982#(<= ~counter~0 3)} #98#return; {44982#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:22,122 INFO L290 TraceCheckUtils]: 40: Hoare triple {44982#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {44982#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:22,122 INFO L290 TraceCheckUtils]: 41: Hoare triple {44982#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45007#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:22,123 INFO L290 TraceCheckUtils]: 42: Hoare triple {45007#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {45007#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:22,123 INFO L272 TraceCheckUtils]: 43: Hoare triple {45007#(<= ~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)); {45007#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:22,124 INFO L290 TraceCheckUtils]: 44: Hoare triple {45007#(<= ~counter~0 4)} ~cond := #in~cond; {45007#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:22,124 INFO L290 TraceCheckUtils]: 45: Hoare triple {45007#(<= ~counter~0 4)} assume !(0 == ~cond); {45007#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:22,124 INFO L290 TraceCheckUtils]: 46: Hoare triple {45007#(<= ~counter~0 4)} assume true; {45007#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:22,124 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {45007#(<= ~counter~0 4)} {45007#(<= ~counter~0 4)} #98#return; {45007#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:22,125 INFO L290 TraceCheckUtils]: 48: Hoare triple {45007#(<= ~counter~0 4)} assume !(~r~0 < 0); {45007#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:22,125 INFO L290 TraceCheckUtils]: 49: Hoare triple {45007#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45032#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:22,126 INFO L290 TraceCheckUtils]: 50: Hoare triple {45032#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {45032#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:22,126 INFO L272 TraceCheckUtils]: 51: Hoare triple {45032#(<= ~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)); {45032#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:22,126 INFO L290 TraceCheckUtils]: 52: Hoare triple {45032#(<= ~counter~0 5)} ~cond := #in~cond; {45032#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:22,127 INFO L290 TraceCheckUtils]: 53: Hoare triple {45032#(<= ~counter~0 5)} assume !(0 == ~cond); {45032#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:22,127 INFO L290 TraceCheckUtils]: 54: Hoare triple {45032#(<= ~counter~0 5)} assume true; {45032#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:22,127 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {45032#(<= ~counter~0 5)} {45032#(<= ~counter~0 5)} #94#return; {45032#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:22,128 INFO L290 TraceCheckUtils]: 56: Hoare triple {45032#(<= ~counter~0 5)} assume !!(0 != ~r~0); {45032#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:22,128 INFO L290 TraceCheckUtils]: 57: Hoare triple {45032#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45057#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:22,129 INFO L290 TraceCheckUtils]: 58: Hoare triple {45057#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {45057#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:22,129 INFO L272 TraceCheckUtils]: 59: Hoare triple {45057#(<= ~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)); {45057#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:22,129 INFO L290 TraceCheckUtils]: 60: Hoare triple {45057#(<= ~counter~0 6)} ~cond := #in~cond; {45057#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:22,130 INFO L290 TraceCheckUtils]: 61: Hoare triple {45057#(<= ~counter~0 6)} assume !(0 == ~cond); {45057#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:22,130 INFO L290 TraceCheckUtils]: 62: Hoare triple {45057#(<= ~counter~0 6)} assume true; {45057#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:22,130 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {45057#(<= ~counter~0 6)} {45057#(<= ~counter~0 6)} #96#return; {45057#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:22,131 INFO L290 TraceCheckUtils]: 64: Hoare triple {45057#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {45057#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:22,131 INFO L290 TraceCheckUtils]: 65: Hoare triple {45057#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45082#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:22,132 INFO L290 TraceCheckUtils]: 66: Hoare triple {45082#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {45082#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:22,132 INFO L272 TraceCheckUtils]: 67: Hoare triple {45082#(<= ~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)); {45082#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:22,132 INFO L290 TraceCheckUtils]: 68: Hoare triple {45082#(<= ~counter~0 7)} ~cond := #in~cond; {45082#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:22,133 INFO L290 TraceCheckUtils]: 69: Hoare triple {45082#(<= ~counter~0 7)} assume !(0 == ~cond); {45082#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:22,133 INFO L290 TraceCheckUtils]: 70: Hoare triple {45082#(<= ~counter~0 7)} assume true; {45082#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:22,133 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {45082#(<= ~counter~0 7)} {45082#(<= ~counter~0 7)} #96#return; {45082#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:22,134 INFO L290 TraceCheckUtils]: 72: Hoare triple {45082#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {45082#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:22,134 INFO L290 TraceCheckUtils]: 73: Hoare triple {45082#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45107#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:22,135 INFO L290 TraceCheckUtils]: 74: Hoare triple {45107#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {45107#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:22,135 INFO L272 TraceCheckUtils]: 75: Hoare triple {45107#(<= ~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)); {45107#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:22,135 INFO L290 TraceCheckUtils]: 76: Hoare triple {45107#(<= ~counter~0 8)} ~cond := #in~cond; {45107#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:22,136 INFO L290 TraceCheckUtils]: 77: Hoare triple {45107#(<= ~counter~0 8)} assume !(0 == ~cond); {45107#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:22,136 INFO L290 TraceCheckUtils]: 78: Hoare triple {45107#(<= ~counter~0 8)} assume true; {45107#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:22,136 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {45107#(<= ~counter~0 8)} {45107#(<= ~counter~0 8)} #96#return; {45107#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:22,137 INFO L290 TraceCheckUtils]: 80: Hoare triple {45107#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {45107#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:22,137 INFO L290 TraceCheckUtils]: 81: Hoare triple {45107#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45132#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:22,137 INFO L290 TraceCheckUtils]: 82: Hoare triple {45132#(<= ~counter~0 9)} assume !!(#t~post7 < 20);havoc #t~post7; {45132#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:22,138 INFO L272 TraceCheckUtils]: 83: Hoare triple {45132#(<= ~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)); {45132#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:22,138 INFO L290 TraceCheckUtils]: 84: Hoare triple {45132#(<= ~counter~0 9)} ~cond := #in~cond; {45132#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:22,138 INFO L290 TraceCheckUtils]: 85: Hoare triple {45132#(<= ~counter~0 9)} assume !(0 == ~cond); {45132#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:22,139 INFO L290 TraceCheckUtils]: 86: Hoare triple {45132#(<= ~counter~0 9)} assume true; {45132#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:22,139 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {45132#(<= ~counter~0 9)} {45132#(<= ~counter~0 9)} #96#return; {45132#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:22,139 INFO L290 TraceCheckUtils]: 88: Hoare triple {45132#(<= ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {45132#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:22,140 INFO L290 TraceCheckUtils]: 89: Hoare triple {45132#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45157#(<= |main_#t~post7| 9)} is VALID [2022-04-08 06:06:22,140 INFO L290 TraceCheckUtils]: 90: Hoare triple {45157#(<= |main_#t~post7| 9)} assume !(#t~post7 < 20);havoc #t~post7; {44876#false} is VALID [2022-04-08 06:06:22,140 INFO L290 TraceCheckUtils]: 91: Hoare triple {44876#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {44876#false} is VALID [2022-04-08 06:06:22,140 INFO L290 TraceCheckUtils]: 92: Hoare triple {44876#false} assume !(#t~post8 < 20);havoc #t~post8; {44876#false} is VALID [2022-04-08 06:06:22,140 INFO L290 TraceCheckUtils]: 93: Hoare triple {44876#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {44876#false} is VALID [2022-04-08 06:06:22,140 INFO L290 TraceCheckUtils]: 94: Hoare triple {44876#false} assume !(#t~post6 < 20);havoc #t~post6; {44876#false} is VALID [2022-04-08 06:06:22,140 INFO L272 TraceCheckUtils]: 95: Hoare triple {44876#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)); {44876#false} is VALID [2022-04-08 06:06:22,141 INFO L290 TraceCheckUtils]: 96: Hoare triple {44876#false} ~cond := #in~cond; {44876#false} is VALID [2022-04-08 06:06:22,141 INFO L290 TraceCheckUtils]: 97: Hoare triple {44876#false} assume 0 == ~cond; {44876#false} is VALID [2022-04-08 06:06:22,141 INFO L290 TraceCheckUtils]: 98: Hoare triple {44876#false} assume !false; {44876#false} is VALID [2022-04-08 06:06:22,141 INFO L134 CoverageAnalysis]: Checked inductivity of 232 backedges. 26 proven. 202 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:06:22,141 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:06:22,648 INFO L290 TraceCheckUtils]: 98: Hoare triple {44876#false} assume !false; {44876#false} is VALID [2022-04-08 06:06:22,648 INFO L290 TraceCheckUtils]: 97: Hoare triple {44876#false} assume 0 == ~cond; {44876#false} is VALID [2022-04-08 06:06:22,648 INFO L290 TraceCheckUtils]: 96: Hoare triple {44876#false} ~cond := #in~cond; {44876#false} is VALID [2022-04-08 06:06:22,648 INFO L272 TraceCheckUtils]: 95: Hoare triple {44876#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)); {44876#false} is VALID [2022-04-08 06:06:22,648 INFO L290 TraceCheckUtils]: 94: Hoare triple {44876#false} assume !(#t~post6 < 20);havoc #t~post6; {44876#false} is VALID [2022-04-08 06:06:22,648 INFO L290 TraceCheckUtils]: 93: Hoare triple {44876#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {44876#false} is VALID [2022-04-08 06:06:22,648 INFO L290 TraceCheckUtils]: 92: Hoare triple {44876#false} assume !(#t~post8 < 20);havoc #t~post8; {44876#false} is VALID [2022-04-08 06:06:22,649 INFO L290 TraceCheckUtils]: 91: Hoare triple {44876#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {44876#false} is VALID [2022-04-08 06:06:22,650 INFO L290 TraceCheckUtils]: 90: Hoare triple {45209#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {44876#false} is VALID [2022-04-08 06:06:22,650 INFO L290 TraceCheckUtils]: 89: Hoare triple {45213#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45209#(< |main_#t~post7| 20)} is VALID [2022-04-08 06:06:22,651 INFO L290 TraceCheckUtils]: 88: Hoare triple {45213#(< ~counter~0 20)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {45213#(< ~counter~0 20)} is VALID [2022-04-08 06:06:22,651 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {44875#true} {45213#(< ~counter~0 20)} #96#return; {45213#(< ~counter~0 20)} is VALID [2022-04-08 06:06:22,651 INFO L290 TraceCheckUtils]: 86: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-08 06:06:22,651 INFO L290 TraceCheckUtils]: 85: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-08 06:06:22,651 INFO L290 TraceCheckUtils]: 84: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-08 06:06:22,652 INFO L272 TraceCheckUtils]: 83: Hoare triple {45213#(< ~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)); {44875#true} is VALID [2022-04-08 06:06:22,652 INFO L290 TraceCheckUtils]: 82: Hoare triple {45213#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {45213#(< ~counter~0 20)} is VALID [2022-04-08 06:06:22,653 INFO L290 TraceCheckUtils]: 81: Hoare triple {45238#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45213#(< ~counter~0 20)} is VALID [2022-04-08 06:06:22,653 INFO L290 TraceCheckUtils]: 80: Hoare triple {45238#(< ~counter~0 19)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {45238#(< ~counter~0 19)} is VALID [2022-04-08 06:06:22,654 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {44875#true} {45238#(< ~counter~0 19)} #96#return; {45238#(< ~counter~0 19)} is VALID [2022-04-08 06:06:22,654 INFO L290 TraceCheckUtils]: 78: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-08 06:06:22,654 INFO L290 TraceCheckUtils]: 77: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-08 06:06:22,654 INFO L290 TraceCheckUtils]: 76: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-08 06:06:22,654 INFO L272 TraceCheckUtils]: 75: Hoare triple {45238#(< ~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)); {44875#true} is VALID [2022-04-08 06:06:22,654 INFO L290 TraceCheckUtils]: 74: Hoare triple {45238#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {45238#(< ~counter~0 19)} is VALID [2022-04-08 06:06:22,655 INFO L290 TraceCheckUtils]: 73: Hoare triple {45263#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45238#(< ~counter~0 19)} is VALID [2022-04-08 06:06:22,655 INFO L290 TraceCheckUtils]: 72: Hoare triple {45263#(< ~counter~0 18)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {45263#(< ~counter~0 18)} is VALID [2022-04-08 06:06:22,655 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {44875#true} {45263#(< ~counter~0 18)} #96#return; {45263#(< ~counter~0 18)} is VALID [2022-04-08 06:06:22,655 INFO L290 TraceCheckUtils]: 70: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-08 06:06:22,656 INFO L290 TraceCheckUtils]: 69: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-08 06:06:22,656 INFO L290 TraceCheckUtils]: 68: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-08 06:06:22,656 INFO L272 TraceCheckUtils]: 67: Hoare triple {45263#(< ~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)); {44875#true} is VALID [2022-04-08 06:06:22,656 INFO L290 TraceCheckUtils]: 66: Hoare triple {45263#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {45263#(< ~counter~0 18)} is VALID [2022-04-08 06:06:22,656 INFO L290 TraceCheckUtils]: 65: Hoare triple {45288#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45263#(< ~counter~0 18)} is VALID [2022-04-08 06:06:22,657 INFO L290 TraceCheckUtils]: 64: Hoare triple {45288#(< ~counter~0 17)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {45288#(< ~counter~0 17)} is VALID [2022-04-08 06:06:22,657 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {44875#true} {45288#(< ~counter~0 17)} #96#return; {45288#(< ~counter~0 17)} is VALID [2022-04-08 06:06:22,657 INFO L290 TraceCheckUtils]: 62: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-08 06:06:22,657 INFO L290 TraceCheckUtils]: 61: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-08 06:06:22,657 INFO L290 TraceCheckUtils]: 60: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-08 06:06:22,658 INFO L272 TraceCheckUtils]: 59: Hoare triple {45288#(< ~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)); {44875#true} is VALID [2022-04-08 06:06:22,658 INFO L290 TraceCheckUtils]: 58: Hoare triple {45288#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {45288#(< ~counter~0 17)} is VALID [2022-04-08 06:06:22,658 INFO L290 TraceCheckUtils]: 57: Hoare triple {45313#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45288#(< ~counter~0 17)} is VALID [2022-04-08 06:06:22,659 INFO L290 TraceCheckUtils]: 56: Hoare triple {45313#(< ~counter~0 16)} assume !!(0 != ~r~0); {45313#(< ~counter~0 16)} is VALID [2022-04-08 06:06:22,659 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {44875#true} {45313#(< ~counter~0 16)} #94#return; {45313#(< ~counter~0 16)} is VALID [2022-04-08 06:06:22,659 INFO L290 TraceCheckUtils]: 54: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-08 06:06:22,659 INFO L290 TraceCheckUtils]: 53: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-08 06:06:22,659 INFO L290 TraceCheckUtils]: 52: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-08 06:06:22,659 INFO L272 TraceCheckUtils]: 51: Hoare triple {45313#(< ~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)); {44875#true} is VALID [2022-04-08 06:06:22,660 INFO L290 TraceCheckUtils]: 50: Hoare triple {45313#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {45313#(< ~counter~0 16)} is VALID [2022-04-08 06:06:22,660 INFO L290 TraceCheckUtils]: 49: Hoare triple {45338#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45313#(< ~counter~0 16)} is VALID [2022-04-08 06:06:22,660 INFO L290 TraceCheckUtils]: 48: Hoare triple {45338#(< ~counter~0 15)} assume !(~r~0 < 0); {45338#(< ~counter~0 15)} is VALID [2022-04-08 06:06:22,661 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {44875#true} {45338#(< ~counter~0 15)} #98#return; {45338#(< ~counter~0 15)} is VALID [2022-04-08 06:06:22,661 INFO L290 TraceCheckUtils]: 46: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-08 06:06:22,661 INFO L290 TraceCheckUtils]: 45: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-08 06:06:22,661 INFO L290 TraceCheckUtils]: 44: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-08 06:06:22,661 INFO L272 TraceCheckUtils]: 43: Hoare triple {45338#(< ~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)); {44875#true} is VALID [2022-04-08 06:06:22,661 INFO L290 TraceCheckUtils]: 42: Hoare triple {45338#(< ~counter~0 15)} assume !!(#t~post8 < 20);havoc #t~post8; {45338#(< ~counter~0 15)} is VALID [2022-04-08 06:06:22,662 INFO L290 TraceCheckUtils]: 41: Hoare triple {45363#(< ~counter~0 14)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45338#(< ~counter~0 15)} is VALID [2022-04-08 06:06:22,662 INFO L290 TraceCheckUtils]: 40: Hoare triple {45363#(< ~counter~0 14)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {45363#(< ~counter~0 14)} is VALID [2022-04-08 06:06:22,663 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {44875#true} {45363#(< ~counter~0 14)} #98#return; {45363#(< ~counter~0 14)} is VALID [2022-04-08 06:06:22,663 INFO L290 TraceCheckUtils]: 38: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-08 06:06:22,663 INFO L290 TraceCheckUtils]: 37: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-08 06:06:22,663 INFO L290 TraceCheckUtils]: 36: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-08 06:06:22,663 INFO L272 TraceCheckUtils]: 35: Hoare triple {45363#(< ~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)); {44875#true} is VALID [2022-04-08 06:06:22,663 INFO L290 TraceCheckUtils]: 34: Hoare triple {45363#(< ~counter~0 14)} assume !!(#t~post8 < 20);havoc #t~post8; {45363#(< ~counter~0 14)} is VALID [2022-04-08 06:06:22,664 INFO L290 TraceCheckUtils]: 33: Hoare triple {45388#(< ~counter~0 13)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45363#(< ~counter~0 14)} is VALID [2022-04-08 06:06:22,671 INFO L290 TraceCheckUtils]: 32: Hoare triple {45388#(< ~counter~0 13)} assume !(~r~0 > 0); {45388#(< ~counter~0 13)} is VALID [2022-04-08 06:06:22,671 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {44875#true} {45388#(< ~counter~0 13)} #96#return; {45388#(< ~counter~0 13)} is VALID [2022-04-08 06:06:22,671 INFO L290 TraceCheckUtils]: 30: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-08 06:06:22,671 INFO L290 TraceCheckUtils]: 29: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-08 06:06:22,671 INFO L290 TraceCheckUtils]: 28: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-08 06:06:22,671 INFO L272 TraceCheckUtils]: 27: Hoare triple {45388#(< ~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)); {44875#true} is VALID [2022-04-08 06:06:22,672 INFO L290 TraceCheckUtils]: 26: Hoare triple {45388#(< ~counter~0 13)} assume !!(#t~post7 < 20);havoc #t~post7; {45388#(< ~counter~0 13)} is VALID [2022-04-08 06:06:22,672 INFO L290 TraceCheckUtils]: 25: Hoare triple {45413#(< ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45388#(< ~counter~0 13)} is VALID [2022-04-08 06:06:22,673 INFO L290 TraceCheckUtils]: 24: Hoare triple {45413#(< ~counter~0 12)} assume !!(0 != ~r~0); {45413#(< ~counter~0 12)} is VALID [2022-04-08 06:06:22,673 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {44875#true} {45413#(< ~counter~0 12)} #94#return; {45413#(< ~counter~0 12)} is VALID [2022-04-08 06:06:22,673 INFO L290 TraceCheckUtils]: 22: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-08 06:06:22,673 INFO L290 TraceCheckUtils]: 21: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-08 06:06:22,673 INFO L290 TraceCheckUtils]: 20: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-08 06:06:22,674 INFO L272 TraceCheckUtils]: 19: Hoare triple {45413#(< ~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)); {44875#true} is VALID [2022-04-08 06:06:22,674 INFO L290 TraceCheckUtils]: 18: Hoare triple {45413#(< ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {45413#(< ~counter~0 12)} is VALID [2022-04-08 06:06:22,674 INFO L290 TraceCheckUtils]: 17: Hoare triple {45438#(< ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45413#(< ~counter~0 12)} is VALID [2022-04-08 06:06:22,675 INFO L290 TraceCheckUtils]: 16: Hoare triple {45438#(< ~counter~0 11)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {45438#(< ~counter~0 11)} is VALID [2022-04-08 06:06:22,675 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {44875#true} {45438#(< ~counter~0 11)} #92#return; {45438#(< ~counter~0 11)} is VALID [2022-04-08 06:06:22,675 INFO L290 TraceCheckUtils]: 14: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-08 06:06:22,675 INFO L290 TraceCheckUtils]: 13: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-08 06:06:22,675 INFO L290 TraceCheckUtils]: 12: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-08 06:06:22,675 INFO L272 TraceCheckUtils]: 11: Hoare triple {45438#(< ~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)); {44875#true} is VALID [2022-04-08 06:06:22,676 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44875#true} {45438#(< ~counter~0 11)} #90#return; {45438#(< ~counter~0 11)} is VALID [2022-04-08 06:06:22,676 INFO L290 TraceCheckUtils]: 9: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-08 06:06:22,676 INFO L290 TraceCheckUtils]: 8: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-08 06:06:22,676 INFO L290 TraceCheckUtils]: 7: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-08 06:06:22,676 INFO L272 TraceCheckUtils]: 6: Hoare triple {45438#(< ~counter~0 11)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {44875#true} is VALID [2022-04-08 06:06:22,676 INFO L290 TraceCheckUtils]: 5: Hoare triple {45438#(< ~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; {45438#(< ~counter~0 11)} is VALID [2022-04-08 06:06:22,676 INFO L272 TraceCheckUtils]: 4: Hoare triple {45438#(< ~counter~0 11)} call #t~ret9 := main(); {45438#(< ~counter~0 11)} is VALID [2022-04-08 06:06:22,677 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45438#(< ~counter~0 11)} {44875#true} #102#return; {45438#(< ~counter~0 11)} is VALID [2022-04-08 06:06:22,677 INFO L290 TraceCheckUtils]: 2: Hoare triple {45438#(< ~counter~0 11)} assume true; {45438#(< ~counter~0 11)} is VALID [2022-04-08 06:06:22,683 INFO L290 TraceCheckUtils]: 1: Hoare triple {44875#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {45438#(< ~counter~0 11)} is VALID [2022-04-08 06:06:22,683 INFO L272 TraceCheckUtils]: 0: Hoare triple {44875#true} call ULTIMATE.init(); {44875#true} is VALID [2022-04-08 06:06:22,684 INFO L134 CoverageAnalysis]: Checked inductivity of 232 backedges. 26 proven. 58 refuted. 0 times theorem prover too weak. 148 trivial. 0 not checked. [2022-04-08 06:06:22,684 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:06:22,684 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1746197203] [2022-04-08 06:06:22,684 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:06:22,684 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1646445195] [2022-04-08 06:06:22,684 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1646445195] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:06:22,684 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:06:22,684 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-08 06:06:22,684 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:06:22,684 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [955698893] [2022-04-08 06:06:22,684 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [955698893] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:06:22,685 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:06:22,685 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 06:06:22,685 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1332683704] [2022-04-08 06:06:22,685 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:06:22,685 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 5.384615384615385) internal successors, (70), 12 states have internal predecessors, (70), 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 99 [2022-04-08 06:06:22,685 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:06:22,685 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 5.384615384615385) internal successors, (70), 12 states have internal predecessors, (70), 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:06:22,753 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:06:22,754 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 06:06:22,754 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:06:22,754 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 06:06:22,754 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:06:22,754 INFO L87 Difference]: Start difference. First operand 376 states and 486 transitions. Second operand has 13 states, 13 states have (on average 5.384615384615385) internal successors, (70), 12 states have internal predecessors, (70), 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:06:23,900 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:06:23,900 INFO L93 Difference]: Finished difference Result 499 states and 663 transitions. [2022-04-08 06:06:23,901 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-08 06:06:23,901 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 5.384615384615385) internal successors, (70), 12 states have internal predecessors, (70), 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 99 [2022-04-08 06:06:23,901 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:06:23,901 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 5.384615384615385) internal successors, (70), 12 states have internal predecessors, (70), 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:06:23,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 216 transitions. [2022-04-08 06:06:23,903 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 5.384615384615385) internal successors, (70), 12 states have internal predecessors, (70), 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:06:23,904 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 216 transitions. [2022-04-08 06:06:23,904 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 216 transitions. [2022-04-08 06:06:24,106 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 216 edges. 216 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:06:24,117 INFO L225 Difference]: With dead ends: 499 [2022-04-08 06:06:24,117 INFO L226 Difference]: Without dead ends: 388 [2022-04-08 06:06:24,118 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 205 GetRequests, 175 SyntacticMatches, 0 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 56 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=412, Invalid=580, Unknown=0, NotChecked=0, Total=992 [2022-04-08 06:06:24,118 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 87 mSDsluCounter, 209 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 65 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 87 SdHoareTripleChecker+Valid, 266 SdHoareTripleChecker+Invalid, 190 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 65 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 06:06:24,118 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [87 Valid, 266 Invalid, 190 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [65 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 06:06:24,119 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 388 states. [2022-04-08 06:06:24,725 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 388 to 388. [2022-04-08 06:06:24,725 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:06:24,726 INFO L82 GeneralOperation]: Start isEquivalent. First operand 388 states. Second operand has 388 states, 295 states have (on average 1.193220338983051) internal successors, (352), 295 states have internal predecessors, (352), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:06:24,726 INFO L74 IsIncluded]: Start isIncluded. First operand 388 states. Second operand has 388 states, 295 states have (on average 1.193220338983051) internal successors, (352), 295 states have internal predecessors, (352), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:06:24,726 INFO L87 Difference]: Start difference. First operand 388 states. Second operand has 388 states, 295 states have (on average 1.193220338983051) internal successors, (352), 295 states have internal predecessors, (352), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:06:24,734 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:06:24,734 INFO L93 Difference]: Finished difference Result 388 states and 498 transitions. [2022-04-08 06:06:24,734 INFO L276 IsEmpty]: Start isEmpty. Operand 388 states and 498 transitions. [2022-04-08 06:06:24,739 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:06:24,739 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:06:24,740 INFO L74 IsIncluded]: Start isIncluded. First operand has 388 states, 295 states have (on average 1.193220338983051) internal successors, (352), 295 states have internal predecessors, (352), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) Second operand 388 states. [2022-04-08 06:06:24,740 INFO L87 Difference]: Start difference. First operand has 388 states, 295 states have (on average 1.193220338983051) internal successors, (352), 295 states have internal predecessors, (352), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) Second operand 388 states. [2022-04-08 06:06:24,751 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:06:24,751 INFO L93 Difference]: Finished difference Result 388 states and 498 transitions. [2022-04-08 06:06:24,751 INFO L276 IsEmpty]: Start isEmpty. Operand 388 states and 498 transitions. [2022-04-08 06:06:24,751 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:06:24,752 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:06:24,752 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:06:24,752 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:06:24,752 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 388 states, 295 states have (on average 1.193220338983051) internal successors, (352), 295 states have internal predecessors, (352), 74 states have call successors, (74), 20 states have call predecessors, (74), 18 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 06:06:24,762 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 388 states to 388 states and 498 transitions. [2022-04-08 06:06:24,762 INFO L78 Accepts]: Start accepts. Automaton has 388 states and 498 transitions. Word has length 99 [2022-04-08 06:06:24,762 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:06:24,762 INFO L478 AbstractCegarLoop]: Abstraction has 388 states and 498 transitions. [2022-04-08 06:06:24,763 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 5.384615384615385) internal successors, (70), 12 states have internal predecessors, (70), 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:06:24,763 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 388 states and 498 transitions. [2022-04-08 06:06:33,431 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 498 edges. 497 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:06:33,431 INFO L276 IsEmpty]: Start isEmpty. Operand 388 states and 498 transitions. [2022-04-08 06:06:33,432 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 104 [2022-04-08 06:06:33,432 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:06:33,432 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 4, 4, 4, 4, 4, 4, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:06:33,448 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Ended with exit code 0 [2022-04-08 06:06:33,647 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,31 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:06:33,647 INFO L403 AbstractCegarLoop]: === Iteration 31 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:06:33,648 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:06:33,648 INFO L85 PathProgramCache]: Analyzing trace with hash -1761003221, now seen corresponding path program 3 times [2022-04-08 06:06:33,648 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:06:33,648 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1426534390] [2022-04-08 06:06:33,648 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:06:33,648 INFO L85 PathProgramCache]: Analyzing trace with hash -1761003221, now seen corresponding path program 4 times [2022-04-08 06:06:33,648 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:06:33,648 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [291285940] [2022-04-08 06:06:33,648 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:06:33,648 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:06:33,669 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:06:33,669 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [927546467] [2022-04-08 06:06:33,669 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:06:33,669 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:06:33,669 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:06:33,670 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:06:33,675 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Waiting until timeout for monitored process [2022-04-08 06:06:33,779 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:06:33,780 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:06:33,781 INFO L263 TraceCheckSpWp]: Trace formula consists of 259 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-08 06:06:33,799 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:06:33,800 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:06:34,268 INFO L272 TraceCheckUtils]: 0: Hoare triple {48058#true} call ULTIMATE.init(); {48058#true} is VALID [2022-04-08 06:06:34,268 INFO L290 TraceCheckUtils]: 1: Hoare triple {48058#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,269 INFO L290 TraceCheckUtils]: 2: Hoare triple {48066#(<= ~counter~0 0)} assume true; {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,269 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {48066#(<= ~counter~0 0)} {48058#true} #102#return; {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,269 INFO L272 TraceCheckUtils]: 4: Hoare triple {48066#(<= ~counter~0 0)} call #t~ret9 := main(); {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,270 INFO L290 TraceCheckUtils]: 5: Hoare triple {48066#(<= ~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; {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,270 INFO L272 TraceCheckUtils]: 6: Hoare triple {48066#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,270 INFO L290 TraceCheckUtils]: 7: Hoare triple {48066#(<= ~counter~0 0)} ~cond := #in~cond; {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,270 INFO L290 TraceCheckUtils]: 8: Hoare triple {48066#(<= ~counter~0 0)} assume !(0 == ~cond); {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,276 INFO L290 TraceCheckUtils]: 9: Hoare triple {48066#(<= ~counter~0 0)} assume true; {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,276 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {48066#(<= ~counter~0 0)} {48066#(<= ~counter~0 0)} #90#return; {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,277 INFO L272 TraceCheckUtils]: 11: Hoare triple {48066#(<= ~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)); {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,277 INFO L290 TraceCheckUtils]: 12: Hoare triple {48066#(<= ~counter~0 0)} ~cond := #in~cond; {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,277 INFO L290 TraceCheckUtils]: 13: Hoare triple {48066#(<= ~counter~0 0)} assume !(0 == ~cond); {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,277 INFO L290 TraceCheckUtils]: 14: Hoare triple {48066#(<= ~counter~0 0)} assume true; {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,278 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {48066#(<= ~counter~0 0)} {48066#(<= ~counter~0 0)} #92#return; {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,278 INFO L290 TraceCheckUtils]: 16: Hoare triple {48066#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {48066#(<= ~counter~0 0)} is VALID [2022-04-08 06:06:34,279 INFO L290 TraceCheckUtils]: 17: Hoare triple {48066#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {48115#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:34,279 INFO L290 TraceCheckUtils]: 18: Hoare triple {48115#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {48115#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:34,280 INFO L272 TraceCheckUtils]: 19: Hoare triple {48115#(<= ~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)); {48115#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:34,280 INFO L290 TraceCheckUtils]: 20: Hoare triple {48115#(<= ~counter~0 1)} ~cond := #in~cond; {48115#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:34,281 INFO L290 TraceCheckUtils]: 21: Hoare triple {48115#(<= ~counter~0 1)} assume !(0 == ~cond); {48115#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:34,281 INFO L290 TraceCheckUtils]: 22: Hoare triple {48115#(<= ~counter~0 1)} assume true; {48115#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:34,281 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {48115#(<= ~counter~0 1)} {48115#(<= ~counter~0 1)} #94#return; {48115#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:34,282 INFO L290 TraceCheckUtils]: 24: Hoare triple {48115#(<= ~counter~0 1)} assume !!(0 != ~r~0); {48115#(<= ~counter~0 1)} is VALID [2022-04-08 06:06:34,282 INFO L290 TraceCheckUtils]: 25: Hoare triple {48115#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {48140#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:34,282 INFO L290 TraceCheckUtils]: 26: Hoare triple {48140#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {48140#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:34,283 INFO L272 TraceCheckUtils]: 27: Hoare triple {48140#(<= ~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)); {48140#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:34,283 INFO L290 TraceCheckUtils]: 28: Hoare triple {48140#(<= ~counter~0 2)} ~cond := #in~cond; {48140#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:34,283 INFO L290 TraceCheckUtils]: 29: Hoare triple {48140#(<= ~counter~0 2)} assume !(0 == ~cond); {48140#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:34,284 INFO L290 TraceCheckUtils]: 30: Hoare triple {48140#(<= ~counter~0 2)} assume true; {48140#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:34,284 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {48140#(<= ~counter~0 2)} {48140#(<= ~counter~0 2)} #96#return; {48140#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:34,284 INFO L290 TraceCheckUtils]: 32: Hoare triple {48140#(<= ~counter~0 2)} assume !(~r~0 > 0); {48140#(<= ~counter~0 2)} is VALID [2022-04-08 06:06:34,285 INFO L290 TraceCheckUtils]: 33: Hoare triple {48140#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {48165#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:34,285 INFO L290 TraceCheckUtils]: 34: Hoare triple {48165#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {48165#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:34,286 INFO L272 TraceCheckUtils]: 35: Hoare triple {48165#(<= ~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)); {48165#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:34,286 INFO L290 TraceCheckUtils]: 36: Hoare triple {48165#(<= ~counter~0 3)} ~cond := #in~cond; {48165#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:34,286 INFO L290 TraceCheckUtils]: 37: Hoare triple {48165#(<= ~counter~0 3)} assume !(0 == ~cond); {48165#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:34,286 INFO L290 TraceCheckUtils]: 38: Hoare triple {48165#(<= ~counter~0 3)} assume true; {48165#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:34,287 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {48165#(<= ~counter~0 3)} {48165#(<= ~counter~0 3)} #98#return; {48165#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:34,287 INFO L290 TraceCheckUtils]: 40: Hoare triple {48165#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {48165#(<= ~counter~0 3)} is VALID [2022-04-08 06:06:34,288 INFO L290 TraceCheckUtils]: 41: Hoare triple {48165#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {48190#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:34,288 INFO L290 TraceCheckUtils]: 42: Hoare triple {48190#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {48190#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:34,288 INFO L272 TraceCheckUtils]: 43: Hoare triple {48190#(<= ~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)); {48190#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:34,289 INFO L290 TraceCheckUtils]: 44: Hoare triple {48190#(<= ~counter~0 4)} ~cond := #in~cond; {48190#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:34,289 INFO L290 TraceCheckUtils]: 45: Hoare triple {48190#(<= ~counter~0 4)} assume !(0 == ~cond); {48190#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:34,289 INFO L290 TraceCheckUtils]: 46: Hoare triple {48190#(<= ~counter~0 4)} assume true; {48190#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:34,290 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {48190#(<= ~counter~0 4)} {48190#(<= ~counter~0 4)} #98#return; {48190#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:34,290 INFO L290 TraceCheckUtils]: 48: Hoare triple {48190#(<= ~counter~0 4)} assume !(~r~0 < 0); {48190#(<= ~counter~0 4)} is VALID [2022-04-08 06:06:34,290 INFO L290 TraceCheckUtils]: 49: Hoare triple {48190#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {48215#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:34,291 INFO L290 TraceCheckUtils]: 50: Hoare triple {48215#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {48215#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:34,291 INFO L272 TraceCheckUtils]: 51: Hoare triple {48215#(<= ~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)); {48215#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:34,291 INFO L290 TraceCheckUtils]: 52: Hoare triple {48215#(<= ~counter~0 5)} ~cond := #in~cond; {48215#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:34,292 INFO L290 TraceCheckUtils]: 53: Hoare triple {48215#(<= ~counter~0 5)} assume !(0 == ~cond); {48215#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:34,292 INFO L290 TraceCheckUtils]: 54: Hoare triple {48215#(<= ~counter~0 5)} assume true; {48215#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:34,292 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {48215#(<= ~counter~0 5)} {48215#(<= ~counter~0 5)} #94#return; {48215#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:34,293 INFO L290 TraceCheckUtils]: 56: Hoare triple {48215#(<= ~counter~0 5)} assume !!(0 != ~r~0); {48215#(<= ~counter~0 5)} is VALID [2022-04-08 06:06:34,293 INFO L290 TraceCheckUtils]: 57: Hoare triple {48215#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {48240#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:34,293 INFO L290 TraceCheckUtils]: 58: Hoare triple {48240#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {48240#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:34,294 INFO L272 TraceCheckUtils]: 59: Hoare triple {48240#(<= ~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)); {48240#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:34,294 INFO L290 TraceCheckUtils]: 60: Hoare triple {48240#(<= ~counter~0 6)} ~cond := #in~cond; {48240#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:34,294 INFO L290 TraceCheckUtils]: 61: Hoare triple {48240#(<= ~counter~0 6)} assume !(0 == ~cond); {48240#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:34,295 INFO L290 TraceCheckUtils]: 62: Hoare triple {48240#(<= ~counter~0 6)} assume true; {48240#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:34,295 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {48240#(<= ~counter~0 6)} {48240#(<= ~counter~0 6)} #96#return; {48240#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:34,295 INFO L290 TraceCheckUtils]: 64: Hoare triple {48240#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {48240#(<= ~counter~0 6)} is VALID [2022-04-08 06:06:34,296 INFO L290 TraceCheckUtils]: 65: Hoare triple {48240#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {48265#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:34,296 INFO L290 TraceCheckUtils]: 66: Hoare triple {48265#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {48265#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:34,297 INFO L272 TraceCheckUtils]: 67: Hoare triple {48265#(<= ~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)); {48265#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:34,297 INFO L290 TraceCheckUtils]: 68: Hoare triple {48265#(<= ~counter~0 7)} ~cond := #in~cond; {48265#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:34,297 INFO L290 TraceCheckUtils]: 69: Hoare triple {48265#(<= ~counter~0 7)} assume !(0 == ~cond); {48265#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:34,297 INFO L290 TraceCheckUtils]: 70: Hoare triple {48265#(<= ~counter~0 7)} assume true; {48265#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:34,298 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {48265#(<= ~counter~0 7)} {48265#(<= ~counter~0 7)} #96#return; {48265#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:34,298 INFO L290 TraceCheckUtils]: 72: Hoare triple {48265#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {48265#(<= ~counter~0 7)} is VALID [2022-04-08 06:06:34,299 INFO L290 TraceCheckUtils]: 73: Hoare triple {48265#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {48290#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:34,299 INFO L290 TraceCheckUtils]: 74: Hoare triple {48290#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {48290#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:34,299 INFO L272 TraceCheckUtils]: 75: Hoare triple {48290#(<= ~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)); {48290#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:34,300 INFO L290 TraceCheckUtils]: 76: Hoare triple {48290#(<= ~counter~0 8)} ~cond := #in~cond; {48290#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:34,300 INFO L290 TraceCheckUtils]: 77: Hoare triple {48290#(<= ~counter~0 8)} assume !(0 == ~cond); {48290#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:34,300 INFO L290 TraceCheckUtils]: 78: Hoare triple {48290#(<= ~counter~0 8)} assume true; {48290#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:34,301 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {48290#(<= ~counter~0 8)} {48290#(<= ~counter~0 8)} #96#return; {48290#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:34,301 INFO L290 TraceCheckUtils]: 80: Hoare triple {48290#(<= ~counter~0 8)} assume !(~r~0 > 0); {48290#(<= ~counter~0 8)} is VALID [2022-04-08 06:06:34,301 INFO L290 TraceCheckUtils]: 81: Hoare triple {48290#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,302 INFO L290 TraceCheckUtils]: 82: Hoare triple {48315#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,302 INFO L272 TraceCheckUtils]: 83: Hoare triple {48315#(<= ~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)); {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,302 INFO L290 TraceCheckUtils]: 84: Hoare triple {48315#(<= ~counter~0 9)} ~cond := #in~cond; {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,303 INFO L290 TraceCheckUtils]: 85: Hoare triple {48315#(<= ~counter~0 9)} assume !(0 == ~cond); {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,303 INFO L290 TraceCheckUtils]: 86: Hoare triple {48315#(<= ~counter~0 9)} assume true; {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,303 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {48315#(<= ~counter~0 9)} {48315#(<= ~counter~0 9)} #98#return; {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,304 INFO L290 TraceCheckUtils]: 88: Hoare triple {48315#(<= ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,304 INFO L290 TraceCheckUtils]: 89: Hoare triple {48315#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {48340#(<= ~counter~0 10)} is VALID [2022-04-08 06:06:34,304 INFO L290 TraceCheckUtils]: 90: Hoare triple {48340#(<= ~counter~0 10)} assume !!(#t~post8 < 20);havoc #t~post8; {48340#(<= ~counter~0 10)} is VALID [2022-04-08 06:06:34,305 INFO L272 TraceCheckUtils]: 91: Hoare triple {48340#(<= ~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)); {48340#(<= ~counter~0 10)} is VALID [2022-04-08 06:06:34,305 INFO L290 TraceCheckUtils]: 92: Hoare triple {48340#(<= ~counter~0 10)} ~cond := #in~cond; {48340#(<= ~counter~0 10)} is VALID [2022-04-08 06:06:34,305 INFO L290 TraceCheckUtils]: 93: Hoare triple {48340#(<= ~counter~0 10)} assume !(0 == ~cond); {48340#(<= ~counter~0 10)} is VALID [2022-04-08 06:06:34,306 INFO L290 TraceCheckUtils]: 94: Hoare triple {48340#(<= ~counter~0 10)} assume true; {48340#(<= ~counter~0 10)} is VALID [2022-04-08 06:06:34,306 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {48340#(<= ~counter~0 10)} {48340#(<= ~counter~0 10)} #98#return; {48340#(<= ~counter~0 10)} is VALID [2022-04-08 06:06:34,306 INFO L290 TraceCheckUtils]: 96: Hoare triple {48340#(<= ~counter~0 10)} assume !(~r~0 < 0); {48340#(<= ~counter~0 10)} is VALID [2022-04-08 06:06:34,307 INFO L290 TraceCheckUtils]: 97: Hoare triple {48340#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {48365#(<= |main_#t~post6| 10)} is VALID [2022-04-08 06:06:34,307 INFO L290 TraceCheckUtils]: 98: Hoare triple {48365#(<= |main_#t~post6| 10)} assume !(#t~post6 < 20);havoc #t~post6; {48059#false} is VALID [2022-04-08 06:06:34,307 INFO L272 TraceCheckUtils]: 99: Hoare triple {48059#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)); {48059#false} is VALID [2022-04-08 06:06:34,307 INFO L290 TraceCheckUtils]: 100: Hoare triple {48059#false} ~cond := #in~cond; {48059#false} is VALID [2022-04-08 06:06:34,307 INFO L290 TraceCheckUtils]: 101: Hoare triple {48059#false} assume 0 == ~cond; {48059#false} is VALID [2022-04-08 06:06:34,307 INFO L290 TraceCheckUtils]: 102: Hoare triple {48059#false} assume !false; {48059#false} is VALID [2022-04-08 06:06:34,308 INFO L134 CoverageAnalysis]: Checked inductivity of 260 backedges. 20 proven. 236 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:06:34,308 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:06:34,798 INFO L290 TraceCheckUtils]: 102: Hoare triple {48059#false} assume !false; {48059#false} is VALID [2022-04-08 06:06:34,799 INFO L290 TraceCheckUtils]: 101: Hoare triple {48059#false} assume 0 == ~cond; {48059#false} is VALID [2022-04-08 06:06:34,799 INFO L290 TraceCheckUtils]: 100: Hoare triple {48059#false} ~cond := #in~cond; {48059#false} is VALID [2022-04-08 06:06:34,799 INFO L272 TraceCheckUtils]: 99: Hoare triple {48059#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)); {48059#false} is VALID [2022-04-08 06:06:34,799 INFO L290 TraceCheckUtils]: 98: Hoare triple {48393#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {48059#false} is VALID [2022-04-08 06:06:34,799 INFO L290 TraceCheckUtils]: 97: Hoare triple {48397#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {48393#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:06:34,800 INFO L290 TraceCheckUtils]: 96: Hoare triple {48397#(< ~counter~0 20)} assume !(~r~0 < 0); {48397#(< ~counter~0 20)} is VALID [2022-04-08 06:06:34,800 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {48058#true} {48397#(< ~counter~0 20)} #98#return; {48397#(< ~counter~0 20)} is VALID [2022-04-08 06:06:34,800 INFO L290 TraceCheckUtils]: 94: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-08 06:06:34,800 INFO L290 TraceCheckUtils]: 93: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-08 06:06:34,800 INFO L290 TraceCheckUtils]: 92: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-08 06:06:34,800 INFO L272 TraceCheckUtils]: 91: Hoare triple {48397#(< ~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)); {48058#true} is VALID [2022-04-08 06:06:34,801 INFO L290 TraceCheckUtils]: 90: Hoare triple {48397#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {48397#(< ~counter~0 20)} is VALID [2022-04-08 06:06:34,802 INFO L290 TraceCheckUtils]: 89: Hoare triple {48422#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {48397#(< ~counter~0 20)} is VALID [2022-04-08 06:06:34,802 INFO L290 TraceCheckUtils]: 88: Hoare triple {48422#(< ~counter~0 19)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {48422#(< ~counter~0 19)} is VALID [2022-04-08 06:06:34,802 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {48058#true} {48422#(< ~counter~0 19)} #98#return; {48422#(< ~counter~0 19)} is VALID [2022-04-08 06:06:34,803 INFO L290 TraceCheckUtils]: 86: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-08 06:06:34,803 INFO L290 TraceCheckUtils]: 85: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-08 06:06:34,803 INFO L290 TraceCheckUtils]: 84: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-08 06:06:34,803 INFO L272 TraceCheckUtils]: 83: Hoare triple {48422#(< ~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)); {48058#true} is VALID [2022-04-08 06:06:34,803 INFO L290 TraceCheckUtils]: 82: Hoare triple {48422#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {48422#(< ~counter~0 19)} is VALID [2022-04-08 06:06:34,804 INFO L290 TraceCheckUtils]: 81: Hoare triple {48447#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {48422#(< ~counter~0 19)} is VALID [2022-04-08 06:06:34,804 INFO L290 TraceCheckUtils]: 80: Hoare triple {48447#(< ~counter~0 18)} assume !(~r~0 > 0); {48447#(< ~counter~0 18)} is VALID [2022-04-08 06:06:34,804 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {48058#true} {48447#(< ~counter~0 18)} #96#return; {48447#(< ~counter~0 18)} is VALID [2022-04-08 06:06:34,804 INFO L290 TraceCheckUtils]: 78: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-08 06:06:34,804 INFO L290 TraceCheckUtils]: 77: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-08 06:06:34,805 INFO L290 TraceCheckUtils]: 76: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-08 06:06:34,805 INFO L272 TraceCheckUtils]: 75: Hoare triple {48447#(< ~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)); {48058#true} is VALID [2022-04-08 06:06:34,805 INFO L290 TraceCheckUtils]: 74: Hoare triple {48447#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {48447#(< ~counter~0 18)} is VALID [2022-04-08 06:06:34,805 INFO L290 TraceCheckUtils]: 73: Hoare triple {48472#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {48447#(< ~counter~0 18)} is VALID [2022-04-08 06:06:34,806 INFO L290 TraceCheckUtils]: 72: Hoare triple {48472#(< ~counter~0 17)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {48472#(< ~counter~0 17)} is VALID [2022-04-08 06:06:34,806 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {48058#true} {48472#(< ~counter~0 17)} #96#return; {48472#(< ~counter~0 17)} is VALID [2022-04-08 06:06:34,806 INFO L290 TraceCheckUtils]: 70: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-08 06:06:34,806 INFO L290 TraceCheckUtils]: 69: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-08 06:06:34,806 INFO L290 TraceCheckUtils]: 68: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-08 06:06:34,806 INFO L272 TraceCheckUtils]: 67: Hoare triple {48472#(< ~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)); {48058#true} is VALID [2022-04-08 06:06:34,807 INFO L290 TraceCheckUtils]: 66: Hoare triple {48472#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {48472#(< ~counter~0 17)} is VALID [2022-04-08 06:06:34,807 INFO L290 TraceCheckUtils]: 65: Hoare triple {48497#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {48472#(< ~counter~0 17)} is VALID [2022-04-08 06:06:34,808 INFO L290 TraceCheckUtils]: 64: Hoare triple {48497#(< ~counter~0 16)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {48497#(< ~counter~0 16)} is VALID [2022-04-08 06:06:34,808 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {48058#true} {48497#(< ~counter~0 16)} #96#return; {48497#(< ~counter~0 16)} is VALID [2022-04-08 06:06:34,808 INFO L290 TraceCheckUtils]: 62: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-08 06:06:34,808 INFO L290 TraceCheckUtils]: 61: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-08 06:06:34,808 INFO L290 TraceCheckUtils]: 60: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-08 06:06:34,808 INFO L272 TraceCheckUtils]: 59: Hoare triple {48497#(< ~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)); {48058#true} is VALID [2022-04-08 06:06:34,809 INFO L290 TraceCheckUtils]: 58: Hoare triple {48497#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {48497#(< ~counter~0 16)} is VALID [2022-04-08 06:06:34,809 INFO L290 TraceCheckUtils]: 57: Hoare triple {48522#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {48497#(< ~counter~0 16)} is VALID [2022-04-08 06:06:34,809 INFO L290 TraceCheckUtils]: 56: Hoare triple {48522#(< ~counter~0 15)} assume !!(0 != ~r~0); {48522#(< ~counter~0 15)} is VALID [2022-04-08 06:06:34,810 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {48058#true} {48522#(< ~counter~0 15)} #94#return; {48522#(< ~counter~0 15)} is VALID [2022-04-08 06:06:34,810 INFO L290 TraceCheckUtils]: 54: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-08 06:06:34,810 INFO L290 TraceCheckUtils]: 53: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-08 06:06:34,810 INFO L290 TraceCheckUtils]: 52: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-08 06:06:34,810 INFO L272 TraceCheckUtils]: 51: Hoare triple {48522#(< ~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)); {48058#true} is VALID [2022-04-08 06:06:34,810 INFO L290 TraceCheckUtils]: 50: Hoare triple {48522#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {48522#(< ~counter~0 15)} is VALID [2022-04-08 06:06:34,811 INFO L290 TraceCheckUtils]: 49: Hoare triple {48547#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {48522#(< ~counter~0 15)} is VALID [2022-04-08 06:06:34,811 INFO L290 TraceCheckUtils]: 48: Hoare triple {48547#(< ~counter~0 14)} assume !(~r~0 < 0); {48547#(< ~counter~0 14)} is VALID [2022-04-08 06:06:34,812 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {48058#true} {48547#(< ~counter~0 14)} #98#return; {48547#(< ~counter~0 14)} is VALID [2022-04-08 06:06:34,812 INFO L290 TraceCheckUtils]: 46: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-08 06:06:34,812 INFO L290 TraceCheckUtils]: 45: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-08 06:06:34,812 INFO L290 TraceCheckUtils]: 44: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-08 06:06:34,812 INFO L272 TraceCheckUtils]: 43: Hoare triple {48547#(< ~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)); {48058#true} is VALID [2022-04-08 06:06:34,812 INFO L290 TraceCheckUtils]: 42: Hoare triple {48547#(< ~counter~0 14)} assume !!(#t~post8 < 20);havoc #t~post8; {48547#(< ~counter~0 14)} is VALID [2022-04-08 06:06:34,813 INFO L290 TraceCheckUtils]: 41: Hoare triple {48572#(< ~counter~0 13)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {48547#(< ~counter~0 14)} is VALID [2022-04-08 06:06:34,813 INFO L290 TraceCheckUtils]: 40: Hoare triple {48572#(< ~counter~0 13)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {48572#(< ~counter~0 13)} is VALID [2022-04-08 06:06:34,814 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {48058#true} {48572#(< ~counter~0 13)} #98#return; {48572#(< ~counter~0 13)} is VALID [2022-04-08 06:06:34,814 INFO L290 TraceCheckUtils]: 38: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-08 06:06:34,814 INFO L290 TraceCheckUtils]: 37: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-08 06:06:34,814 INFO L290 TraceCheckUtils]: 36: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-08 06:06:34,814 INFO L272 TraceCheckUtils]: 35: Hoare triple {48572#(< ~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)); {48058#true} is VALID [2022-04-08 06:06:34,814 INFO L290 TraceCheckUtils]: 34: Hoare triple {48572#(< ~counter~0 13)} assume !!(#t~post8 < 20);havoc #t~post8; {48572#(< ~counter~0 13)} is VALID [2022-04-08 06:06:34,815 INFO L290 TraceCheckUtils]: 33: Hoare triple {48597#(< ~counter~0 12)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {48572#(< ~counter~0 13)} is VALID [2022-04-08 06:06:34,815 INFO L290 TraceCheckUtils]: 32: Hoare triple {48597#(< ~counter~0 12)} assume !(~r~0 > 0); {48597#(< ~counter~0 12)} is VALID [2022-04-08 06:06:34,815 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {48058#true} {48597#(< ~counter~0 12)} #96#return; {48597#(< ~counter~0 12)} is VALID [2022-04-08 06:06:34,815 INFO L290 TraceCheckUtils]: 30: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-08 06:06:34,816 INFO L290 TraceCheckUtils]: 29: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-08 06:06:34,816 INFO L290 TraceCheckUtils]: 28: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-08 06:06:34,816 INFO L272 TraceCheckUtils]: 27: Hoare triple {48597#(< ~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)); {48058#true} is VALID [2022-04-08 06:06:34,816 INFO L290 TraceCheckUtils]: 26: Hoare triple {48597#(< ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {48597#(< ~counter~0 12)} is VALID [2022-04-08 06:06:34,817 INFO L290 TraceCheckUtils]: 25: Hoare triple {48340#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {48597#(< ~counter~0 12)} is VALID [2022-04-08 06:06:34,817 INFO L290 TraceCheckUtils]: 24: Hoare triple {48340#(<= ~counter~0 10)} assume !!(0 != ~r~0); {48340#(<= ~counter~0 10)} is VALID [2022-04-08 06:06:34,817 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {48058#true} {48340#(<= ~counter~0 10)} #94#return; {48340#(<= ~counter~0 10)} is VALID [2022-04-08 06:06:34,817 INFO L290 TraceCheckUtils]: 22: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-08 06:06:34,817 INFO L290 TraceCheckUtils]: 21: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-08 06:06:34,817 INFO L290 TraceCheckUtils]: 20: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-08 06:06:34,818 INFO L272 TraceCheckUtils]: 19: Hoare triple {48340#(<= ~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)); {48058#true} is VALID [2022-04-08 06:06:34,818 INFO L290 TraceCheckUtils]: 18: Hoare triple {48340#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {48340#(<= ~counter~0 10)} is VALID [2022-04-08 06:06:34,818 INFO L290 TraceCheckUtils]: 17: Hoare triple {48315#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {48340#(<= ~counter~0 10)} is VALID [2022-04-08 06:06:34,819 INFO L290 TraceCheckUtils]: 16: Hoare triple {48315#(<= ~counter~0 9)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,819 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {48058#true} {48315#(<= ~counter~0 9)} #92#return; {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,819 INFO L290 TraceCheckUtils]: 14: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-08 06:06:34,819 INFO L290 TraceCheckUtils]: 13: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-08 06:06:34,819 INFO L290 TraceCheckUtils]: 12: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-08 06:06:34,819 INFO L272 TraceCheckUtils]: 11: Hoare triple {48315#(<= ~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)); {48058#true} is VALID [2022-04-08 06:06:34,820 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {48058#true} {48315#(<= ~counter~0 9)} #90#return; {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,820 INFO L290 TraceCheckUtils]: 9: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-08 06:06:34,820 INFO L290 TraceCheckUtils]: 8: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-08 06:06:34,820 INFO L290 TraceCheckUtils]: 7: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-08 06:06:34,820 INFO L272 TraceCheckUtils]: 6: Hoare triple {48315#(<= ~counter~0 9)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {48058#true} is VALID [2022-04-08 06:06:34,820 INFO L290 TraceCheckUtils]: 5: Hoare triple {48315#(<= ~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; {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,820 INFO L272 TraceCheckUtils]: 4: Hoare triple {48315#(<= ~counter~0 9)} call #t~ret9 := main(); {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,821 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {48315#(<= ~counter~0 9)} {48058#true} #102#return; {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,821 INFO L290 TraceCheckUtils]: 2: Hoare triple {48315#(<= ~counter~0 9)} assume true; {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,821 INFO L290 TraceCheckUtils]: 1: Hoare triple {48058#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {48315#(<= ~counter~0 9)} is VALID [2022-04-08 06:06:34,822 INFO L272 TraceCheckUtils]: 0: Hoare triple {48058#true} call ULTIMATE.init(); {48058#true} is VALID [2022-04-08 06:06:34,822 INFO L134 CoverageAnalysis]: Checked inductivity of 260 backedges. 20 proven. 56 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-08 06:06:34,822 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:06:34,822 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [291285940] [2022-04-08 06:06:34,822 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:06:34,822 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [927546467] [2022-04-08 06:06:34,822 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [927546467] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:06:34,822 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:06:34,822 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 24 [2022-04-08 06:06:34,822 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:06:34,823 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1426534390] [2022-04-08 06:06:34,823 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1426534390] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:06:34,823 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:06:34,823 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 06:06:34,823 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1399177242] [2022-04-08 06:06:34,823 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:06:34,823 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 5.142857142857143) internal successors, (72), 13 states have internal predecessors, (72), 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 103 [2022-04-08 06:06:34,823 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:06:34,823 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 5.142857142857143) internal successors, (72), 13 states have internal predecessors, (72), 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:06:34,891 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:06:34,891 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 06:06:34,891 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:06:34,891 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 06:06:34,891 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:06:34,892 INFO L87 Difference]: Start difference. First operand 388 states and 498 transitions. Second operand has 14 states, 14 states have (on average 5.142857142857143) internal successors, (72), 13 states have internal predecessors, (72), 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:06:36,170 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:06:36,170 INFO L93 Difference]: Finished difference Result 435 states and 559 transitions. [2022-04-08 06:06:36,170 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-08 06:06:36,171 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 5.142857142857143) internal successors, (72), 13 states have internal predecessors, (72), 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 103 [2022-04-08 06:06:36,171 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:06:36,171 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 5.142857142857143) internal successors, (72), 13 states have internal predecessors, (72), 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:06:36,173 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 214 transitions. [2022-04-08 06:06:36,173 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 5.142857142857143) internal successors, (72), 13 states have internal predecessors, (72), 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:06:36,175 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 214 transitions. [2022-04-08 06:06:36,175 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 214 transitions. [2022-04-08 06:06:36,337 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 214 edges. 214 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:06:36,346 INFO L225 Difference]: With dead ends: 435 [2022-04-08 06:06:36,346 INFO L226 Difference]: Without dead ends: 424 [2022-04-08 06:06:36,346 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 212 GetRequests, 182 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 59 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=379, Invalid=551, Unknown=0, NotChecked=0, Total=930 [2022-04-08 06:06:36,347 INFO L913 BasicCegarLoop]: 60 mSDtfsCounter, 124 mSDsluCounter, 206 mSDsCounter, 0 mSdLazyCounter, 136 mSolverCounterSat, 93 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 124 SdHoareTripleChecker+Valid, 266 SdHoareTripleChecker+Invalid, 229 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 93 IncrementalHoareTripleChecker+Valid, 136 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 06:06:36,347 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [124 Valid, 266 Invalid, 229 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [93 Valid, 136 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 06:06:36,347 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 424 states. [2022-04-08 06:06:36,899 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 424 to 405. [2022-04-08 06:06:36,899 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:06:36,900 INFO L82 GeneralOperation]: Start isEquivalent. First operand 424 states. Second operand has 405 states, 302 states have (on average 1.1920529801324504) internal successors, (360), 309 states have internal predecessors, (360), 82 states have call successors, (82), 22 states have call predecessors, (82), 20 states have return successors, (80), 73 states have call predecessors, (80), 80 states have call successors, (80) [2022-04-08 06:06:36,900 INFO L74 IsIncluded]: Start isIncluded. First operand 424 states. Second operand has 405 states, 302 states have (on average 1.1920529801324504) internal successors, (360), 309 states have internal predecessors, (360), 82 states have call successors, (82), 22 states have call predecessors, (82), 20 states have return successors, (80), 73 states have call predecessors, (80), 80 states have call successors, (80) [2022-04-08 06:06:36,900 INFO L87 Difference]: Start difference. First operand 424 states. Second operand has 405 states, 302 states have (on average 1.1920529801324504) internal successors, (360), 309 states have internal predecessors, (360), 82 states have call successors, (82), 22 states have call predecessors, (82), 20 states have return successors, (80), 73 states have call predecessors, (80), 80 states have call successors, (80) [2022-04-08 06:06:36,908 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:06:36,908 INFO L93 Difference]: Finished difference Result 424 states and 544 transitions. [2022-04-08 06:06:36,908 INFO L276 IsEmpty]: Start isEmpty. Operand 424 states and 544 transitions. [2022-04-08 06:06:36,909 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:06:36,909 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:06:36,909 INFO L74 IsIncluded]: Start isIncluded. First operand has 405 states, 302 states have (on average 1.1920529801324504) internal successors, (360), 309 states have internal predecessors, (360), 82 states have call successors, (82), 22 states have call predecessors, (82), 20 states have return successors, (80), 73 states have call predecessors, (80), 80 states have call successors, (80) Second operand 424 states. [2022-04-08 06:06:36,910 INFO L87 Difference]: Start difference. First operand has 405 states, 302 states have (on average 1.1920529801324504) internal successors, (360), 309 states have internal predecessors, (360), 82 states have call successors, (82), 22 states have call predecessors, (82), 20 states have return successors, (80), 73 states have call predecessors, (80), 80 states have call successors, (80) Second operand 424 states. [2022-04-08 06:06:36,917 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:06:36,918 INFO L93 Difference]: Finished difference Result 424 states and 544 transitions. [2022-04-08 06:06:36,918 INFO L276 IsEmpty]: Start isEmpty. Operand 424 states and 544 transitions. [2022-04-08 06:06:36,918 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:06:36,918 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:06:36,918 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:06:36,918 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:06:36,919 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 405 states, 302 states have (on average 1.1920529801324504) internal successors, (360), 309 states have internal predecessors, (360), 82 states have call successors, (82), 22 states have call predecessors, (82), 20 states have return successors, (80), 73 states have call predecessors, (80), 80 states have call successors, (80) [2022-04-08 06:06:36,929 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 405 states to 405 states and 522 transitions. [2022-04-08 06:06:36,929 INFO L78 Accepts]: Start accepts. Automaton has 405 states and 522 transitions. Word has length 103 [2022-04-08 06:06:36,929 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:06:36,929 INFO L478 AbstractCegarLoop]: Abstraction has 405 states and 522 transitions. [2022-04-08 06:06:36,929 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 5.142857142857143) internal successors, (72), 13 states have internal predecessors, (72), 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:06:36,929 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 405 states and 522 transitions. [2022-04-08 06:06:52,834 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 522 edges. 518 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-08 06:06:52,834 INFO L276 IsEmpty]: Start isEmpty. Operand 405 states and 522 transitions. [2022-04-08 06:06:52,835 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2022-04-08 06:06:52,835 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:06:52,835 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 5, 4, 4, 4, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:06:52,853 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Ended with exit code 0 [2022-04-08 06:06:53,039 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable30,32 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:06:53,039 INFO L403 AbstractCegarLoop]: === Iteration 32 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:06:53,040 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:06:53,040 INFO L85 PathProgramCache]: Analyzing trace with hash 1733340336, now seen corresponding path program 9 times [2022-04-08 06:06:53,040 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:06:53,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [341427621] [2022-04-08 06:06:53,040 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:06:53,040 INFO L85 PathProgramCache]: Analyzing trace with hash 1733340336, now seen corresponding path program 10 times [2022-04-08 06:06:53,040 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:06:53,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [135925912] [2022-04-08 06:06:53,040 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:06:53,041 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:06:53,052 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:06:53,052 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2140346572] [2022-04-08 06:06:53,052 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:06:53,052 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:06:53,052 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:06:53,053 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:06:53,053 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Waiting until timeout for monitored process [2022-04-08 06:06:53,113 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:06:53,113 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:06:53,114 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 06:06:53,128 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:06:53,129 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:06:53,964 INFO L272 TraceCheckUtils]: 0: Hoare triple {51241#true} call ULTIMATE.init(); {51241#true} is VALID [2022-04-08 06:06:53,964 INFO L290 TraceCheckUtils]: 1: Hoare triple {51241#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {51241#true} is VALID [2022-04-08 06:06:53,965 INFO L290 TraceCheckUtils]: 2: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:53,965 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {51241#true} {51241#true} #102#return; {51241#true} is VALID [2022-04-08 06:06:53,965 INFO L272 TraceCheckUtils]: 4: Hoare triple {51241#true} call #t~ret9 := main(); {51241#true} is VALID [2022-04-08 06:06:53,965 INFO L290 TraceCheckUtils]: 5: Hoare triple {51241#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; {51241#true} is VALID [2022-04-08 06:06:53,965 INFO L272 TraceCheckUtils]: 6: Hoare triple {51241#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {51241#true} is VALID [2022-04-08 06:06:53,965 INFO L290 TraceCheckUtils]: 7: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:53,965 INFO L290 TraceCheckUtils]: 8: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:53,965 INFO L290 TraceCheckUtils]: 9: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:53,965 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {51241#true} {51241#true} #90#return; {51241#true} is VALID [2022-04-08 06:06:53,965 INFO L272 TraceCheckUtils]: 11: Hoare triple {51241#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)); {51241#true} is VALID [2022-04-08 06:06:53,965 INFO L290 TraceCheckUtils]: 12: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:53,965 INFO L290 TraceCheckUtils]: 13: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:53,966 INFO L290 TraceCheckUtils]: 14: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:53,966 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {51241#true} {51241#true} #92#return; {51241#true} is VALID [2022-04-08 06:06:53,966 INFO L290 TraceCheckUtils]: 16: Hoare triple {51241#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {51241#true} is VALID [2022-04-08 06:06:53,966 INFO L290 TraceCheckUtils]: 17: Hoare triple {51241#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {51241#true} is VALID [2022-04-08 06:06:53,966 INFO L290 TraceCheckUtils]: 18: Hoare triple {51241#true} assume !!(#t~post6 < 20);havoc #t~post6; {51241#true} is VALID [2022-04-08 06:06:53,966 INFO L272 TraceCheckUtils]: 19: Hoare triple {51241#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)); {51241#true} is VALID [2022-04-08 06:06:53,966 INFO L290 TraceCheckUtils]: 20: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:53,966 INFO L290 TraceCheckUtils]: 21: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:53,966 INFO L290 TraceCheckUtils]: 22: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:53,966 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {51241#true} {51241#true} #94#return; {51241#true} is VALID [2022-04-08 06:06:53,966 INFO L290 TraceCheckUtils]: 24: Hoare triple {51241#true} assume !!(0 != ~r~0); {51241#true} is VALID [2022-04-08 06:06:53,967 INFO L290 TraceCheckUtils]: 25: Hoare triple {51241#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51241#true} is VALID [2022-04-08 06:06:53,967 INFO L290 TraceCheckUtils]: 26: Hoare triple {51241#true} assume !!(#t~post7 < 20);havoc #t~post7; {51241#true} is VALID [2022-04-08 06:06:53,967 INFO L272 TraceCheckUtils]: 27: Hoare triple {51241#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)); {51241#true} is VALID [2022-04-08 06:06:53,967 INFO L290 TraceCheckUtils]: 28: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:53,967 INFO L290 TraceCheckUtils]: 29: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:53,967 INFO L290 TraceCheckUtils]: 30: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:53,967 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {51241#true} {51241#true} #96#return; {51241#true} is VALID [2022-04-08 06:06:53,967 INFO L290 TraceCheckUtils]: 32: Hoare triple {51241#true} assume !(~r~0 > 0); {51241#true} is VALID [2022-04-08 06:06:53,967 INFO L290 TraceCheckUtils]: 33: Hoare triple {51241#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51241#true} is VALID [2022-04-08 06:06:53,967 INFO L290 TraceCheckUtils]: 34: Hoare triple {51241#true} assume !!(#t~post8 < 20);havoc #t~post8; {51241#true} is VALID [2022-04-08 06:06:53,967 INFO L272 TraceCheckUtils]: 35: Hoare triple {51241#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)); {51241#true} is VALID [2022-04-08 06:06:53,967 INFO L290 TraceCheckUtils]: 36: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:53,968 INFO L290 TraceCheckUtils]: 37: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:53,968 INFO L290 TraceCheckUtils]: 38: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:53,968 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {51241#true} {51241#true} #98#return; {51241#true} is VALID [2022-04-08 06:06:53,969 INFO L290 TraceCheckUtils]: 40: Hoare triple {51241#true} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {51366#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-08 06:06:53,970 INFO L290 TraceCheckUtils]: 41: Hoare triple {51366#(< (+ main_~r~0 2) main_~u~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51366#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-08 06:06:53,970 INFO L290 TraceCheckUtils]: 42: Hoare triple {51366#(< (+ main_~r~0 2) main_~u~0)} assume !!(#t~post8 < 20);havoc #t~post8; {51366#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-08 06:06:53,970 INFO L272 TraceCheckUtils]: 43: Hoare triple {51366#(< (+ main_~r~0 2) main_~u~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {51241#true} is VALID [2022-04-08 06:06:53,970 INFO L290 TraceCheckUtils]: 44: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:53,970 INFO L290 TraceCheckUtils]: 45: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:53,970 INFO L290 TraceCheckUtils]: 46: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:53,971 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {51241#true} {51366#(< (+ main_~r~0 2) main_~u~0)} #98#return; {51366#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-08 06:06:53,971 INFO L290 TraceCheckUtils]: 48: Hoare triple {51366#(< (+ main_~r~0 2) main_~u~0)} assume !(~r~0 < 0); {51366#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-08 06:06:53,971 INFO L290 TraceCheckUtils]: 49: Hoare triple {51366#(< (+ main_~r~0 2) main_~u~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {51366#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-08 06:06:53,972 INFO L290 TraceCheckUtils]: 50: Hoare triple {51366#(< (+ main_~r~0 2) main_~u~0)} assume !!(#t~post6 < 20);havoc #t~post6; {51366#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-08 06:06:53,972 INFO L272 TraceCheckUtils]: 51: Hoare triple {51366#(< (+ main_~r~0 2) main_~u~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {51241#true} is VALID [2022-04-08 06:06:53,972 INFO L290 TraceCheckUtils]: 52: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:53,972 INFO L290 TraceCheckUtils]: 53: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:53,972 INFO L290 TraceCheckUtils]: 54: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:53,973 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {51241#true} {51366#(< (+ main_~r~0 2) main_~u~0)} #94#return; {51366#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-08 06:06:53,973 INFO L290 TraceCheckUtils]: 56: Hoare triple {51366#(< (+ main_~r~0 2) main_~u~0)} assume !!(0 != ~r~0); {51366#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-08 06:06:53,973 INFO L290 TraceCheckUtils]: 57: Hoare triple {51366#(< (+ main_~r~0 2) main_~u~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51366#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-08 06:06:53,974 INFO L290 TraceCheckUtils]: 58: Hoare triple {51366#(< (+ main_~r~0 2) main_~u~0)} assume !!(#t~post7 < 20);havoc #t~post7; {51366#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-08 06:06:53,974 INFO L272 TraceCheckUtils]: 59: Hoare triple {51366#(< (+ main_~r~0 2) main_~u~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {51241#true} is VALID [2022-04-08 06:06:53,974 INFO L290 TraceCheckUtils]: 60: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:53,974 INFO L290 TraceCheckUtils]: 61: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:53,974 INFO L290 TraceCheckUtils]: 62: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:53,975 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {51241#true} {51366#(< (+ main_~r~0 2) main_~u~0)} #96#return; {51366#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-08 06:06:53,976 INFO L290 TraceCheckUtils]: 64: Hoare triple {51366#(< (+ main_~r~0 2) main_~u~0)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {51439#(< (+ main_~v~0 main_~r~0) main_~u~0)} is VALID [2022-04-08 06:06:53,976 INFO L290 TraceCheckUtils]: 65: Hoare triple {51439#(< (+ main_~v~0 main_~r~0) main_~u~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51439#(< (+ main_~v~0 main_~r~0) main_~u~0)} is VALID [2022-04-08 06:06:53,976 INFO L290 TraceCheckUtils]: 66: Hoare triple {51439#(< (+ main_~v~0 main_~r~0) main_~u~0)} assume !!(#t~post7 < 20);havoc #t~post7; {51439#(< (+ main_~v~0 main_~r~0) main_~u~0)} is VALID [2022-04-08 06:06:53,976 INFO L272 TraceCheckUtils]: 67: Hoare triple {51439#(< (+ main_~v~0 main_~r~0) main_~u~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {51241#true} is VALID [2022-04-08 06:06:53,976 INFO L290 TraceCheckUtils]: 68: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:53,977 INFO L290 TraceCheckUtils]: 69: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:53,977 INFO L290 TraceCheckUtils]: 70: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:53,977 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {51241#true} {51439#(< (+ main_~v~0 main_~r~0) main_~u~0)} #96#return; {51439#(< (+ main_~v~0 main_~r~0) main_~u~0)} is VALID [2022-04-08 06:06:53,978 INFO L290 TraceCheckUtils]: 72: Hoare triple {51439#(< (+ main_~v~0 main_~r~0) main_~u~0)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:06:53,978 INFO L290 TraceCheckUtils]: 73: Hoare triple {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:06:53,979 INFO L290 TraceCheckUtils]: 74: Hoare triple {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} assume !!(#t~post7 < 20);havoc #t~post7; {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:06:53,979 INFO L272 TraceCheckUtils]: 75: Hoare triple {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~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)); {51241#true} is VALID [2022-04-08 06:06:53,979 INFO L290 TraceCheckUtils]: 76: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:53,979 INFO L290 TraceCheckUtils]: 77: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:53,979 INFO L290 TraceCheckUtils]: 78: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:53,979 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {51241#true} {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} #96#return; {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:06:53,980 INFO L290 TraceCheckUtils]: 80: Hoare triple {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} assume !(~r~0 > 0); {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:06:53,980 INFO L290 TraceCheckUtils]: 81: Hoare triple {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:06:53,980 INFO L290 TraceCheckUtils]: 82: Hoare triple {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} assume !!(#t~post8 < 20);havoc #t~post8; {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:06:53,980 INFO L272 TraceCheckUtils]: 83: Hoare triple {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~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)); {51241#true} is VALID [2022-04-08 06:06:53,980 INFO L290 TraceCheckUtils]: 84: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:53,981 INFO L290 TraceCheckUtils]: 85: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:53,981 INFO L290 TraceCheckUtils]: 86: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:53,981 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {51241#true} {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} #98#return; {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:06:53,982 INFO L290 TraceCheckUtils]: 88: Hoare triple {51464#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {51513#(< 0 (div (+ (- 1) main_~r~0) 2))} is VALID [2022-04-08 06:06:53,983 INFO L290 TraceCheckUtils]: 89: Hoare triple {51513#(< 0 (div (+ (- 1) main_~r~0) 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51513#(< 0 (div (+ (- 1) main_~r~0) 2))} is VALID [2022-04-08 06:06:53,983 INFO L290 TraceCheckUtils]: 90: Hoare triple {51513#(< 0 (div (+ (- 1) main_~r~0) 2))} assume !!(#t~post8 < 20);havoc #t~post8; {51513#(< 0 (div (+ (- 1) main_~r~0) 2))} is VALID [2022-04-08 06:06:53,983 INFO L272 TraceCheckUtils]: 91: Hoare triple {51513#(< 0 (div (+ (- 1) main_~r~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)); {51241#true} is VALID [2022-04-08 06:06:53,983 INFO L290 TraceCheckUtils]: 92: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:53,983 INFO L290 TraceCheckUtils]: 93: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:53,983 INFO L290 TraceCheckUtils]: 94: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:53,984 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {51241#true} {51513#(< 0 (div (+ (- 1) main_~r~0) 2))} #98#return; {51513#(< 0 (div (+ (- 1) main_~r~0) 2))} is VALID [2022-04-08 06:06:53,985 INFO L290 TraceCheckUtils]: 96: Hoare triple {51513#(< 0 (div (+ (- 1) main_~r~0) 2))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {51242#false} is VALID [2022-04-08 06:06:53,985 INFO L290 TraceCheckUtils]: 97: Hoare triple {51242#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51242#false} is VALID [2022-04-08 06:06:53,985 INFO L290 TraceCheckUtils]: 98: Hoare triple {51242#false} assume !(#t~post8 < 20);havoc #t~post8; {51242#false} is VALID [2022-04-08 06:06:53,985 INFO L290 TraceCheckUtils]: 99: Hoare triple {51242#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {51242#false} is VALID [2022-04-08 06:06:53,985 INFO L290 TraceCheckUtils]: 100: Hoare triple {51242#false} assume !(#t~post6 < 20);havoc #t~post6; {51242#false} is VALID [2022-04-08 06:06:53,985 INFO L272 TraceCheckUtils]: 101: Hoare triple {51242#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)); {51242#false} is VALID [2022-04-08 06:06:53,985 INFO L290 TraceCheckUtils]: 102: Hoare triple {51242#false} ~cond := #in~cond; {51242#false} is VALID [2022-04-08 06:06:53,985 INFO L290 TraceCheckUtils]: 103: Hoare triple {51242#false} assume 0 == ~cond; {51242#false} is VALID [2022-04-08 06:06:53,986 INFO L290 TraceCheckUtils]: 104: Hoare triple {51242#false} assume !false; {51242#false} is VALID [2022-04-08 06:06:53,986 INFO L134 CoverageAnalysis]: Checked inductivity of 268 backedges. 60 proven. 24 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-08 06:06:53,986 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:06:54,417 INFO L290 TraceCheckUtils]: 104: Hoare triple {51242#false} assume !false; {51242#false} is VALID [2022-04-08 06:06:54,417 INFO L290 TraceCheckUtils]: 103: Hoare triple {51242#false} assume 0 == ~cond; {51242#false} is VALID [2022-04-08 06:06:54,418 INFO L290 TraceCheckUtils]: 102: Hoare triple {51242#false} ~cond := #in~cond; {51242#false} is VALID [2022-04-08 06:06:54,418 INFO L272 TraceCheckUtils]: 101: Hoare triple {51242#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)); {51242#false} is VALID [2022-04-08 06:06:54,418 INFO L290 TraceCheckUtils]: 100: Hoare triple {51242#false} assume !(#t~post6 < 20);havoc #t~post6; {51242#false} is VALID [2022-04-08 06:06:54,418 INFO L290 TraceCheckUtils]: 99: Hoare triple {51242#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {51242#false} is VALID [2022-04-08 06:06:54,418 INFO L290 TraceCheckUtils]: 98: Hoare triple {51242#false} assume !(#t~post8 < 20);havoc #t~post8; {51242#false} is VALID [2022-04-08 06:06:54,418 INFO L290 TraceCheckUtils]: 97: Hoare triple {51242#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51242#false} is VALID [2022-04-08 06:06:54,419 INFO L290 TraceCheckUtils]: 96: Hoare triple {51586#(not (< main_~r~0 0))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {51242#false} is VALID [2022-04-08 06:06:54,419 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {51241#true} {51586#(not (< main_~r~0 0))} #98#return; {51586#(not (< main_~r~0 0))} is VALID [2022-04-08 06:06:54,419 INFO L290 TraceCheckUtils]: 94: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:54,420 INFO L290 TraceCheckUtils]: 93: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:54,420 INFO L290 TraceCheckUtils]: 92: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:54,420 INFO L272 TraceCheckUtils]: 91: Hoare triple {51586#(not (< main_~r~0 0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {51241#true} is VALID [2022-04-08 06:06:54,420 INFO L290 TraceCheckUtils]: 90: Hoare triple {51586#(not (< main_~r~0 0))} assume !!(#t~post8 < 20);havoc #t~post8; {51586#(not (< main_~r~0 0))} is VALID [2022-04-08 06:06:54,420 INFO L290 TraceCheckUtils]: 89: Hoare triple {51586#(not (< main_~r~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51586#(not (< main_~r~0 0))} is VALID [2022-04-08 06:06:54,421 INFO L290 TraceCheckUtils]: 88: Hoare triple {51611#(<= 0 (+ main_~u~0 main_~r~0))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {51586#(not (< main_~r~0 0))} is VALID [2022-04-08 06:06:54,422 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {51241#true} {51611#(<= 0 (+ main_~u~0 main_~r~0))} #98#return; {51611#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:06:54,422 INFO L290 TraceCheckUtils]: 86: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:54,422 INFO L290 TraceCheckUtils]: 85: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:54,422 INFO L290 TraceCheckUtils]: 84: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:54,422 INFO L272 TraceCheckUtils]: 83: Hoare triple {51611#(<= 0 (+ main_~u~0 main_~r~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {51241#true} is VALID [2022-04-08 06:06:54,422 INFO L290 TraceCheckUtils]: 82: Hoare triple {51611#(<= 0 (+ main_~u~0 main_~r~0))} assume !!(#t~post8 < 20);havoc #t~post8; {51611#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:06:54,423 INFO L290 TraceCheckUtils]: 81: Hoare triple {51611#(<= 0 (+ main_~u~0 main_~r~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51611#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:06:54,423 INFO L290 TraceCheckUtils]: 80: Hoare triple {51611#(<= 0 (+ main_~u~0 main_~r~0))} assume !(~r~0 > 0); {51611#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:06:54,424 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {51241#true} {51611#(<= 0 (+ main_~u~0 main_~r~0))} #96#return; {51611#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:06:54,424 INFO L290 TraceCheckUtils]: 78: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:54,424 INFO L290 TraceCheckUtils]: 77: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:54,424 INFO L290 TraceCheckUtils]: 76: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:54,424 INFO L272 TraceCheckUtils]: 75: Hoare triple {51611#(<= 0 (+ main_~u~0 main_~r~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {51241#true} is VALID [2022-04-08 06:06:54,424 INFO L290 TraceCheckUtils]: 74: Hoare triple {51611#(<= 0 (+ main_~u~0 main_~r~0))} assume !!(#t~post7 < 20);havoc #t~post7; {51611#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:06:54,425 INFO L290 TraceCheckUtils]: 73: Hoare triple {51611#(<= 0 (+ main_~u~0 main_~r~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51611#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:06:54,426 INFO L290 TraceCheckUtils]: 72: Hoare triple {51660#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {51611#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:06:54,426 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {51241#true} {51660#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} #96#return; {51660#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 06:06:54,426 INFO L290 TraceCheckUtils]: 70: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:54,426 INFO L290 TraceCheckUtils]: 69: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:54,426 INFO L290 TraceCheckUtils]: 68: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:54,427 INFO L272 TraceCheckUtils]: 67: Hoare triple {51660#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {51241#true} is VALID [2022-04-08 06:06:54,427 INFO L290 TraceCheckUtils]: 66: Hoare triple {51660#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {51660#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 06:06:54,427 INFO L290 TraceCheckUtils]: 65: Hoare triple {51660#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51660#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 06:06:54,429 INFO L290 TraceCheckUtils]: 64: Hoare triple {51685#(<= main_~r~0 main_~u~0)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {51660#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 06:06:54,429 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {51241#true} {51685#(<= main_~r~0 main_~u~0)} #96#return; {51685#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:06:54,429 INFO L290 TraceCheckUtils]: 62: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:54,429 INFO L290 TraceCheckUtils]: 61: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:54,430 INFO L290 TraceCheckUtils]: 60: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:54,430 INFO L272 TraceCheckUtils]: 59: Hoare triple {51685#(<= main_~r~0 main_~u~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {51241#true} is VALID [2022-04-08 06:06:54,430 INFO L290 TraceCheckUtils]: 58: Hoare triple {51685#(<= main_~r~0 main_~u~0)} assume !!(#t~post7 < 20);havoc #t~post7; {51685#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:06:54,430 INFO L290 TraceCheckUtils]: 57: Hoare triple {51685#(<= main_~r~0 main_~u~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51685#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:06:54,431 INFO L290 TraceCheckUtils]: 56: Hoare triple {51685#(<= main_~r~0 main_~u~0)} assume !!(0 != ~r~0); {51685#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:06:54,431 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {51241#true} {51685#(<= main_~r~0 main_~u~0)} #94#return; {51685#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:06:54,431 INFO L290 TraceCheckUtils]: 54: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:54,431 INFO L290 TraceCheckUtils]: 53: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:54,431 INFO L290 TraceCheckUtils]: 52: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:54,432 INFO L272 TraceCheckUtils]: 51: Hoare triple {51685#(<= main_~r~0 main_~u~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {51241#true} is VALID [2022-04-08 06:06:54,432 INFO L290 TraceCheckUtils]: 50: Hoare triple {51685#(<= main_~r~0 main_~u~0)} assume !!(#t~post6 < 20);havoc #t~post6; {51685#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:06:54,432 INFO L290 TraceCheckUtils]: 49: Hoare triple {51685#(<= main_~r~0 main_~u~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {51685#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:06:54,433 INFO L290 TraceCheckUtils]: 48: Hoare triple {51685#(<= main_~r~0 main_~u~0)} assume !(~r~0 < 0); {51685#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:06:54,433 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {51241#true} {51685#(<= main_~r~0 main_~u~0)} #98#return; {51685#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:06:54,433 INFO L290 TraceCheckUtils]: 46: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:54,433 INFO L290 TraceCheckUtils]: 45: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:54,433 INFO L290 TraceCheckUtils]: 44: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:54,433 INFO L272 TraceCheckUtils]: 43: Hoare triple {51685#(<= main_~r~0 main_~u~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {51241#true} is VALID [2022-04-08 06:06:54,434 INFO L290 TraceCheckUtils]: 42: Hoare triple {51685#(<= main_~r~0 main_~u~0)} assume !!(#t~post8 < 20);havoc #t~post8; {51685#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:06:54,434 INFO L290 TraceCheckUtils]: 41: Hoare triple {51685#(<= main_~r~0 main_~u~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51685#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:06:54,436 INFO L290 TraceCheckUtils]: 40: Hoare triple {51241#true} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {51685#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:06:54,436 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {51241#true} {51241#true} #98#return; {51241#true} is VALID [2022-04-08 06:06:54,436 INFO L290 TraceCheckUtils]: 38: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:54,436 INFO L290 TraceCheckUtils]: 37: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:54,436 INFO L290 TraceCheckUtils]: 36: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:54,436 INFO L272 TraceCheckUtils]: 35: Hoare triple {51241#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)); {51241#true} is VALID [2022-04-08 06:06:54,436 INFO L290 TraceCheckUtils]: 34: Hoare triple {51241#true} assume !!(#t~post8 < 20);havoc #t~post8; {51241#true} is VALID [2022-04-08 06:06:54,436 INFO L290 TraceCheckUtils]: 33: Hoare triple {51241#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51241#true} is VALID [2022-04-08 06:06:54,436 INFO L290 TraceCheckUtils]: 32: Hoare triple {51241#true} assume !(~r~0 > 0); {51241#true} is VALID [2022-04-08 06:06:54,436 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {51241#true} {51241#true} #96#return; {51241#true} is VALID [2022-04-08 06:06:54,436 INFO L290 TraceCheckUtils]: 30: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:54,437 INFO L290 TraceCheckUtils]: 29: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:54,437 INFO L290 TraceCheckUtils]: 28: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:54,437 INFO L272 TraceCheckUtils]: 27: Hoare triple {51241#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)); {51241#true} is VALID [2022-04-08 06:06:54,437 INFO L290 TraceCheckUtils]: 26: Hoare triple {51241#true} assume !!(#t~post7 < 20);havoc #t~post7; {51241#true} is VALID [2022-04-08 06:06:54,437 INFO L290 TraceCheckUtils]: 25: Hoare triple {51241#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51241#true} is VALID [2022-04-08 06:06:54,437 INFO L290 TraceCheckUtils]: 24: Hoare triple {51241#true} assume !!(0 != ~r~0); {51241#true} is VALID [2022-04-08 06:06:54,437 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {51241#true} {51241#true} #94#return; {51241#true} is VALID [2022-04-08 06:06:54,437 INFO L290 TraceCheckUtils]: 22: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:54,437 INFO L290 TraceCheckUtils]: 21: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:54,437 INFO L290 TraceCheckUtils]: 20: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:54,437 INFO L272 TraceCheckUtils]: 19: Hoare triple {51241#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)); {51241#true} is VALID [2022-04-08 06:06:54,438 INFO L290 TraceCheckUtils]: 18: Hoare triple {51241#true} assume !!(#t~post6 < 20);havoc #t~post6; {51241#true} is VALID [2022-04-08 06:06:54,438 INFO L290 TraceCheckUtils]: 17: Hoare triple {51241#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {51241#true} is VALID [2022-04-08 06:06:54,438 INFO L290 TraceCheckUtils]: 16: Hoare triple {51241#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {51241#true} is VALID [2022-04-08 06:06:54,438 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {51241#true} {51241#true} #92#return; {51241#true} is VALID [2022-04-08 06:06:54,438 INFO L290 TraceCheckUtils]: 14: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:54,438 INFO L290 TraceCheckUtils]: 13: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:54,438 INFO L290 TraceCheckUtils]: 12: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:54,438 INFO L272 TraceCheckUtils]: 11: Hoare triple {51241#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)); {51241#true} is VALID [2022-04-08 06:06:54,438 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {51241#true} {51241#true} #90#return; {51241#true} is VALID [2022-04-08 06:06:54,438 INFO L290 TraceCheckUtils]: 9: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:54,438 INFO L290 TraceCheckUtils]: 8: Hoare triple {51241#true} assume !(0 == ~cond); {51241#true} is VALID [2022-04-08 06:06:54,439 INFO L290 TraceCheckUtils]: 7: Hoare triple {51241#true} ~cond := #in~cond; {51241#true} is VALID [2022-04-08 06:06:54,439 INFO L272 TraceCheckUtils]: 6: Hoare triple {51241#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {51241#true} is VALID [2022-04-08 06:06:54,439 INFO L290 TraceCheckUtils]: 5: Hoare triple {51241#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; {51241#true} is VALID [2022-04-08 06:06:54,439 INFO L272 TraceCheckUtils]: 4: Hoare triple {51241#true} call #t~ret9 := main(); {51241#true} is VALID [2022-04-08 06:06:54,439 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {51241#true} {51241#true} #102#return; {51241#true} is VALID [2022-04-08 06:06:54,439 INFO L290 TraceCheckUtils]: 2: Hoare triple {51241#true} assume true; {51241#true} is VALID [2022-04-08 06:06:54,439 INFO L290 TraceCheckUtils]: 1: Hoare triple {51241#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {51241#true} is VALID [2022-04-08 06:06:54,439 INFO L272 TraceCheckUtils]: 0: Hoare triple {51241#true} call ULTIMATE.init(); {51241#true} is VALID [2022-04-08 06:06:54,440 INFO L134 CoverageAnalysis]: Checked inductivity of 268 backedges. 60 proven. 24 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-08 06:06:54,440 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:06:54,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [135925912] [2022-04-08 06:06:54,440 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:06:54,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2140346572] [2022-04-08 06:06:54,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2140346572] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:06:54,440 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:06:54,440 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-08 06:06:54,441 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:06:54,441 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [341427621] [2022-04-08 06:06:54,441 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [341427621] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:06:54,441 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:06:54,441 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 06:06:54,441 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [805362524] [2022-04-08 06:06:54,441 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:06:54,442 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 7.833333333333333) internal successors, (47), 6 states have internal predecessors, (47), 6 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 105 [2022-04-08 06:06:54,443 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:06:54,443 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 7.833333333333333) internal successors, (47), 6 states have internal predecessors, (47), 6 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 06:06:54,507 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:06:54,507 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 06:06:54,507 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:06:54,508 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 06:06:54,508 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-08 06:06:54,508 INFO L87 Difference]: Start difference. First operand 405 states and 522 transitions. Second operand has 6 states, 6 states have (on average 7.833333333333333) internal successors, (47), 6 states have internal predecessors, (47), 6 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 06:06:56,249 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:06:56,249 INFO L93 Difference]: Finished difference Result 677 states and 928 transitions. [2022-04-08 06:06:56,249 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 06:06:56,249 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 7.833333333333333) internal successors, (47), 6 states have internal predecessors, (47), 6 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 105 [2022-04-08 06:06:56,249 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:06:56,250 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 7.833333333333333) internal successors, (47), 6 states have internal predecessors, (47), 6 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 06:06:56,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 171 transitions. [2022-04-08 06:06:56,251 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 7.833333333333333) internal successors, (47), 6 states have internal predecessors, (47), 6 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 06:06:56,252 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 171 transitions. [2022-04-08 06:06:56,252 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 171 transitions. [2022-04-08 06:06:56,385 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 171 edges. 171 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:06:56,402 INFO L225 Difference]: With dead ends: 677 [2022-04-08 06:06:56,402 INFO L226 Difference]: Without dead ends: 616 [2022-04-08 06:06:56,402 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 213 GetRequests, 203 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-08 06:06:56,402 INFO L913 BasicCegarLoop]: 95 mSDtfsCounter, 37 mSDsluCounter, 184 mSDsCounter, 0 mSdLazyCounter, 183 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 40 SdHoareTripleChecker+Valid, 279 SdHoareTripleChecker+Invalid, 192 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 183 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 06:06:56,403 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [40 Valid, 279 Invalid, 192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 183 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 06:06:56,403 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 616 states. [2022-04-08 06:06:57,384 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 616 to 532. [2022-04-08 06:06:57,384 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:06:57,385 INFO L82 GeneralOperation]: Start isEquivalent. First operand 616 states. Second operand has 532 states, 397 states have (on average 1.234256926952141) internal successors, (490), 407 states have internal predecessors, (490), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 102 states have call predecessors, (112), 112 states have call successors, (112) [2022-04-08 06:06:57,385 INFO L74 IsIncluded]: Start isIncluded. First operand 616 states. Second operand has 532 states, 397 states have (on average 1.234256926952141) internal successors, (490), 407 states have internal predecessors, (490), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 102 states have call predecessors, (112), 112 states have call successors, (112) [2022-04-08 06:06:57,386 INFO L87 Difference]: Start difference. First operand 616 states. Second operand has 532 states, 397 states have (on average 1.234256926952141) internal successors, (490), 407 states have internal predecessors, (490), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 102 states have call predecessors, (112), 112 states have call successors, (112) [2022-04-08 06:06:57,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:06:57,401 INFO L93 Difference]: Finished difference Result 616 states and 837 transitions. [2022-04-08 06:06:57,401 INFO L276 IsEmpty]: Start isEmpty. Operand 616 states and 837 transitions. [2022-04-08 06:06:57,402 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:06:57,402 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:06:57,403 INFO L74 IsIncluded]: Start isIncluded. First operand has 532 states, 397 states have (on average 1.234256926952141) internal successors, (490), 407 states have internal predecessors, (490), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 102 states have call predecessors, (112), 112 states have call successors, (112) Second operand 616 states. [2022-04-08 06:06:57,403 INFO L87 Difference]: Start difference. First operand has 532 states, 397 states have (on average 1.234256926952141) internal successors, (490), 407 states have internal predecessors, (490), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 102 states have call predecessors, (112), 112 states have call successors, (112) Second operand 616 states. [2022-04-08 06:06:57,419 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:06:57,419 INFO L93 Difference]: Finished difference Result 616 states and 837 transitions. [2022-04-08 06:06:57,419 INFO L276 IsEmpty]: Start isEmpty. Operand 616 states and 837 transitions. [2022-04-08 06:06:57,420 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:06:57,420 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:06:57,420 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:06:57,420 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:06:57,421 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 532 states, 397 states have (on average 1.234256926952141) internal successors, (490), 407 states have internal predecessors, (490), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 102 states have call predecessors, (112), 112 states have call successors, (112) [2022-04-08 06:06:57,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 532 states to 532 states and 716 transitions. [2022-04-08 06:06:57,436 INFO L78 Accepts]: Start accepts. Automaton has 532 states and 716 transitions. Word has length 105 [2022-04-08 06:06:57,436 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:06:57,436 INFO L478 AbstractCegarLoop]: Abstraction has 532 states and 716 transitions. [2022-04-08 06:06:57,436 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 7.833333333333333) internal successors, (47), 6 states have internal predecessors, (47), 6 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 06:06:57,436 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 532 states and 716 transitions. [2022-04-08 06:07:13,721 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 716 edges. 713 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:13,721 INFO L276 IsEmpty]: Start isEmpty. Operand 532 states and 716 transitions. [2022-04-08 06:07:13,722 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2022-04-08 06:07:13,722 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:13,722 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 5, 5, 5, 5, 4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:07:13,745 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Ended with exit code 0 [2022-04-08 06:07:13,923 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable31,33 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:13,923 INFO L403 AbstractCegarLoop]: === Iteration 33 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:13,923 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:13,923 INFO L85 PathProgramCache]: Analyzing trace with hash -1666981150, now seen corresponding path program 11 times [2022-04-08 06:07:13,924 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:13,924 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [968313435] [2022-04-08 06:07:13,924 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:13,924 INFO L85 PathProgramCache]: Analyzing trace with hash -1666981150, now seen corresponding path program 12 times [2022-04-08 06:07:13,924 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:13,924 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [550523193] [2022-04-08 06:07:13,924 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:13,924 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:13,937 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:13,937 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [787082150] [2022-04-08 06:07:13,937 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:07:13,937 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:13,937 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:13,964 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:07:13,965 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Waiting until timeout for monitored process [2022-04-08 06:07:14,112 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-08 06:07:14,113 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:14,114 INFO L263 TraceCheckSpWp]: Trace formula consists of 268 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-08 06:07:14,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:14,144 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:14,698 INFO L272 TraceCheckUtils]: 0: Hoare triple {55536#true} call ULTIMATE.init(); {55536#true} is VALID [2022-04-08 06:07:14,698 INFO L290 TraceCheckUtils]: 1: Hoare triple {55536#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,699 INFO L290 TraceCheckUtils]: 2: Hoare triple {55544#(<= ~counter~0 0)} assume true; {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,699 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {55544#(<= ~counter~0 0)} {55536#true} #102#return; {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,699 INFO L272 TraceCheckUtils]: 4: Hoare triple {55544#(<= ~counter~0 0)} call #t~ret9 := main(); {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,700 INFO L290 TraceCheckUtils]: 5: Hoare triple {55544#(<= ~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; {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,700 INFO L272 TraceCheckUtils]: 6: Hoare triple {55544#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,700 INFO L290 TraceCheckUtils]: 7: Hoare triple {55544#(<= ~counter~0 0)} ~cond := #in~cond; {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,701 INFO L290 TraceCheckUtils]: 8: Hoare triple {55544#(<= ~counter~0 0)} assume !(0 == ~cond); {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,701 INFO L290 TraceCheckUtils]: 9: Hoare triple {55544#(<= ~counter~0 0)} assume true; {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,702 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {55544#(<= ~counter~0 0)} {55544#(<= ~counter~0 0)} #90#return; {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,702 INFO L272 TraceCheckUtils]: 11: Hoare triple {55544#(<= ~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)); {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,702 INFO L290 TraceCheckUtils]: 12: Hoare triple {55544#(<= ~counter~0 0)} ~cond := #in~cond; {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,703 INFO L290 TraceCheckUtils]: 13: Hoare triple {55544#(<= ~counter~0 0)} assume !(0 == ~cond); {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,703 INFO L290 TraceCheckUtils]: 14: Hoare triple {55544#(<= ~counter~0 0)} assume true; {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,703 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {55544#(<= ~counter~0 0)} {55544#(<= ~counter~0 0)} #92#return; {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,704 INFO L290 TraceCheckUtils]: 16: Hoare triple {55544#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {55544#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:14,705 INFO L290 TraceCheckUtils]: 17: Hoare triple {55544#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55593#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:14,705 INFO L290 TraceCheckUtils]: 18: Hoare triple {55593#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {55593#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:14,706 INFO L272 TraceCheckUtils]: 19: Hoare triple {55593#(<= ~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)); {55593#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:14,706 INFO L290 TraceCheckUtils]: 20: Hoare triple {55593#(<= ~counter~0 1)} ~cond := #in~cond; {55593#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:14,707 INFO L290 TraceCheckUtils]: 21: Hoare triple {55593#(<= ~counter~0 1)} assume !(0 == ~cond); {55593#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:14,707 INFO L290 TraceCheckUtils]: 22: Hoare triple {55593#(<= ~counter~0 1)} assume true; {55593#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:14,707 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {55593#(<= ~counter~0 1)} {55593#(<= ~counter~0 1)} #94#return; {55593#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:14,708 INFO L290 TraceCheckUtils]: 24: Hoare triple {55593#(<= ~counter~0 1)} assume !!(0 != ~r~0); {55593#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:14,709 INFO L290 TraceCheckUtils]: 25: Hoare triple {55593#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55618#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:14,709 INFO L290 TraceCheckUtils]: 26: Hoare triple {55618#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {55618#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:14,709 INFO L272 TraceCheckUtils]: 27: Hoare triple {55618#(<= ~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)); {55618#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:14,710 INFO L290 TraceCheckUtils]: 28: Hoare triple {55618#(<= ~counter~0 2)} ~cond := #in~cond; {55618#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:14,710 INFO L290 TraceCheckUtils]: 29: Hoare triple {55618#(<= ~counter~0 2)} assume !(0 == ~cond); {55618#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:14,710 INFO L290 TraceCheckUtils]: 30: Hoare triple {55618#(<= ~counter~0 2)} assume true; {55618#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:14,711 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {55618#(<= ~counter~0 2)} {55618#(<= ~counter~0 2)} #96#return; {55618#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:14,711 INFO L290 TraceCheckUtils]: 32: Hoare triple {55618#(<= ~counter~0 2)} assume !(~r~0 > 0); {55618#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:14,712 INFO L290 TraceCheckUtils]: 33: Hoare triple {55618#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55643#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:14,712 INFO L290 TraceCheckUtils]: 34: Hoare triple {55643#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {55643#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:14,713 INFO L272 TraceCheckUtils]: 35: Hoare triple {55643#(<= ~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)); {55643#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:14,713 INFO L290 TraceCheckUtils]: 36: Hoare triple {55643#(<= ~counter~0 3)} ~cond := #in~cond; {55643#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:14,713 INFO L290 TraceCheckUtils]: 37: Hoare triple {55643#(<= ~counter~0 3)} assume !(0 == ~cond); {55643#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:14,714 INFO L290 TraceCheckUtils]: 38: Hoare triple {55643#(<= ~counter~0 3)} assume true; {55643#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:14,714 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {55643#(<= ~counter~0 3)} {55643#(<= ~counter~0 3)} #98#return; {55643#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:14,715 INFO L290 TraceCheckUtils]: 40: Hoare triple {55643#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {55643#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:14,715 INFO L290 TraceCheckUtils]: 41: Hoare triple {55643#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55668#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:14,716 INFO L290 TraceCheckUtils]: 42: Hoare triple {55668#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {55668#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:14,716 INFO L272 TraceCheckUtils]: 43: Hoare triple {55668#(<= ~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)); {55668#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:14,717 INFO L290 TraceCheckUtils]: 44: Hoare triple {55668#(<= ~counter~0 4)} ~cond := #in~cond; {55668#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:14,717 INFO L290 TraceCheckUtils]: 45: Hoare triple {55668#(<= ~counter~0 4)} assume !(0 == ~cond); {55668#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:14,717 INFO L290 TraceCheckUtils]: 46: Hoare triple {55668#(<= ~counter~0 4)} assume true; {55668#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:14,718 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {55668#(<= ~counter~0 4)} {55668#(<= ~counter~0 4)} #98#return; {55668#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:14,718 INFO L290 TraceCheckUtils]: 48: Hoare triple {55668#(<= ~counter~0 4)} assume !(~r~0 < 0); {55668#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:14,719 INFO L290 TraceCheckUtils]: 49: Hoare triple {55668#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55693#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:14,719 INFO L290 TraceCheckUtils]: 50: Hoare triple {55693#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {55693#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:14,720 INFO L272 TraceCheckUtils]: 51: Hoare triple {55693#(<= ~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)); {55693#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:14,720 INFO L290 TraceCheckUtils]: 52: Hoare triple {55693#(<= ~counter~0 5)} ~cond := #in~cond; {55693#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:14,720 INFO L290 TraceCheckUtils]: 53: Hoare triple {55693#(<= ~counter~0 5)} assume !(0 == ~cond); {55693#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:14,720 INFO L290 TraceCheckUtils]: 54: Hoare triple {55693#(<= ~counter~0 5)} assume true; {55693#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:14,721 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {55693#(<= ~counter~0 5)} {55693#(<= ~counter~0 5)} #94#return; {55693#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:14,721 INFO L290 TraceCheckUtils]: 56: Hoare triple {55693#(<= ~counter~0 5)} assume !!(0 != ~r~0); {55693#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:14,722 INFO L290 TraceCheckUtils]: 57: Hoare triple {55693#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55718#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:14,722 INFO L290 TraceCheckUtils]: 58: Hoare triple {55718#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {55718#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:14,723 INFO L272 TraceCheckUtils]: 59: Hoare triple {55718#(<= ~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)); {55718#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:14,723 INFO L290 TraceCheckUtils]: 60: Hoare triple {55718#(<= ~counter~0 6)} ~cond := #in~cond; {55718#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:14,724 INFO L290 TraceCheckUtils]: 61: Hoare triple {55718#(<= ~counter~0 6)} assume !(0 == ~cond); {55718#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:14,724 INFO L290 TraceCheckUtils]: 62: Hoare triple {55718#(<= ~counter~0 6)} assume true; {55718#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:14,724 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {55718#(<= ~counter~0 6)} {55718#(<= ~counter~0 6)} #96#return; {55718#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:14,725 INFO L290 TraceCheckUtils]: 64: Hoare triple {55718#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {55718#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:14,725 INFO L290 TraceCheckUtils]: 65: Hoare triple {55718#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55743#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:14,726 INFO L290 TraceCheckUtils]: 66: Hoare triple {55743#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {55743#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:14,726 INFO L272 TraceCheckUtils]: 67: Hoare triple {55743#(<= ~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)); {55743#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:14,727 INFO L290 TraceCheckUtils]: 68: Hoare triple {55743#(<= ~counter~0 7)} ~cond := #in~cond; {55743#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:14,727 INFO L290 TraceCheckUtils]: 69: Hoare triple {55743#(<= ~counter~0 7)} assume !(0 == ~cond); {55743#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:14,727 INFO L290 TraceCheckUtils]: 70: Hoare triple {55743#(<= ~counter~0 7)} assume true; {55743#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:14,728 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {55743#(<= ~counter~0 7)} {55743#(<= ~counter~0 7)} #96#return; {55743#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:14,728 INFO L290 TraceCheckUtils]: 72: Hoare triple {55743#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {55743#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:14,729 INFO L290 TraceCheckUtils]: 73: Hoare triple {55743#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55768#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:14,729 INFO L290 TraceCheckUtils]: 74: Hoare triple {55768#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {55768#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:14,730 INFO L272 TraceCheckUtils]: 75: Hoare triple {55768#(<= ~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)); {55768#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:14,730 INFO L290 TraceCheckUtils]: 76: Hoare triple {55768#(<= ~counter~0 8)} ~cond := #in~cond; {55768#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:14,730 INFO L290 TraceCheckUtils]: 77: Hoare triple {55768#(<= ~counter~0 8)} assume !(0 == ~cond); {55768#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:14,731 INFO L290 TraceCheckUtils]: 78: Hoare triple {55768#(<= ~counter~0 8)} assume true; {55768#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:14,731 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {55768#(<= ~counter~0 8)} {55768#(<= ~counter~0 8)} #96#return; {55768#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:14,731 INFO L290 TraceCheckUtils]: 80: Hoare triple {55768#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {55768#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:14,732 INFO L290 TraceCheckUtils]: 81: Hoare triple {55768#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:14,732 INFO L290 TraceCheckUtils]: 82: Hoare triple {55793#(<= ~counter~0 9)} assume !!(#t~post7 < 20);havoc #t~post7; {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:14,733 INFO L272 TraceCheckUtils]: 83: Hoare triple {55793#(<= ~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)); {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:14,733 INFO L290 TraceCheckUtils]: 84: Hoare triple {55793#(<= ~counter~0 9)} ~cond := #in~cond; {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:14,734 INFO L290 TraceCheckUtils]: 85: Hoare triple {55793#(<= ~counter~0 9)} assume !(0 == ~cond); {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:14,734 INFO L290 TraceCheckUtils]: 86: Hoare triple {55793#(<= ~counter~0 9)} assume true; {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:14,734 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {55793#(<= ~counter~0 9)} {55793#(<= ~counter~0 9)} #96#return; {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:14,735 INFO L290 TraceCheckUtils]: 88: Hoare triple {55793#(<= ~counter~0 9)} assume !(~r~0 > 0); {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:14,735 INFO L290 TraceCheckUtils]: 89: Hoare triple {55793#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55818#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:14,736 INFO L290 TraceCheckUtils]: 90: Hoare triple {55818#(<= ~counter~0 10)} assume !!(#t~post8 < 20);havoc #t~post8; {55818#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:14,736 INFO L272 TraceCheckUtils]: 91: Hoare triple {55818#(<= ~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)); {55818#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:14,737 INFO L290 TraceCheckUtils]: 92: Hoare triple {55818#(<= ~counter~0 10)} ~cond := #in~cond; {55818#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:14,737 INFO L290 TraceCheckUtils]: 93: Hoare triple {55818#(<= ~counter~0 10)} assume !(0 == ~cond); {55818#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:14,737 INFO L290 TraceCheckUtils]: 94: Hoare triple {55818#(<= ~counter~0 10)} assume true; {55818#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:14,738 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {55818#(<= ~counter~0 10)} {55818#(<= ~counter~0 10)} #98#return; {55818#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:14,738 INFO L290 TraceCheckUtils]: 96: Hoare triple {55818#(<= ~counter~0 10)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {55818#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:14,738 INFO L290 TraceCheckUtils]: 97: Hoare triple {55818#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55843#(<= |main_#t~post8| 10)} is VALID [2022-04-08 06:07:14,739 INFO L290 TraceCheckUtils]: 98: Hoare triple {55843#(<= |main_#t~post8| 10)} assume !(#t~post8 < 20);havoc #t~post8; {55537#false} is VALID [2022-04-08 06:07:14,739 INFO L290 TraceCheckUtils]: 99: Hoare triple {55537#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55537#false} is VALID [2022-04-08 06:07:14,739 INFO L290 TraceCheckUtils]: 100: Hoare triple {55537#false} assume !(#t~post6 < 20);havoc #t~post6; {55537#false} is VALID [2022-04-08 06:07:14,739 INFO L272 TraceCheckUtils]: 101: Hoare triple {55537#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)); {55537#false} is VALID [2022-04-08 06:07:14,739 INFO L290 TraceCheckUtils]: 102: Hoare triple {55537#false} ~cond := #in~cond; {55537#false} is VALID [2022-04-08 06:07:14,739 INFO L290 TraceCheckUtils]: 103: Hoare triple {55537#false} assume 0 == ~cond; {55537#false} is VALID [2022-04-08 06:07:14,739 INFO L290 TraceCheckUtils]: 104: Hoare triple {55537#false} assume !false; {55537#false} is VALID [2022-04-08 06:07:14,740 INFO L134 CoverageAnalysis]: Checked inductivity of 270 backedges. 24 proven. 242 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:07:14,740 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:07:15,332 INFO L290 TraceCheckUtils]: 104: Hoare triple {55537#false} assume !false; {55537#false} is VALID [2022-04-08 06:07:15,333 INFO L290 TraceCheckUtils]: 103: Hoare triple {55537#false} assume 0 == ~cond; {55537#false} is VALID [2022-04-08 06:07:15,333 INFO L290 TraceCheckUtils]: 102: Hoare triple {55537#false} ~cond := #in~cond; {55537#false} is VALID [2022-04-08 06:07:15,333 INFO L272 TraceCheckUtils]: 101: Hoare triple {55537#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)); {55537#false} is VALID [2022-04-08 06:07:15,333 INFO L290 TraceCheckUtils]: 100: Hoare triple {55537#false} assume !(#t~post6 < 20);havoc #t~post6; {55537#false} is VALID [2022-04-08 06:07:15,333 INFO L290 TraceCheckUtils]: 99: Hoare triple {55537#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55537#false} is VALID [2022-04-08 06:07:15,333 INFO L290 TraceCheckUtils]: 98: Hoare triple {55883#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {55537#false} is VALID [2022-04-08 06:07:15,334 INFO L290 TraceCheckUtils]: 97: Hoare triple {55887#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55883#(< |main_#t~post8| 20)} is VALID [2022-04-08 06:07:15,334 INFO L290 TraceCheckUtils]: 96: Hoare triple {55887#(< ~counter~0 20)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {55887#(< ~counter~0 20)} is VALID [2022-04-08 06:07:15,335 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {55536#true} {55887#(< ~counter~0 20)} #98#return; {55887#(< ~counter~0 20)} is VALID [2022-04-08 06:07:15,335 INFO L290 TraceCheckUtils]: 94: Hoare triple {55536#true} assume true; {55536#true} is VALID [2022-04-08 06:07:15,335 INFO L290 TraceCheckUtils]: 93: Hoare triple {55536#true} assume !(0 == ~cond); {55536#true} is VALID [2022-04-08 06:07:15,335 INFO L290 TraceCheckUtils]: 92: Hoare triple {55536#true} ~cond := #in~cond; {55536#true} is VALID [2022-04-08 06:07:15,335 INFO L272 TraceCheckUtils]: 91: Hoare triple {55887#(< ~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)); {55536#true} is VALID [2022-04-08 06:07:15,335 INFO L290 TraceCheckUtils]: 90: Hoare triple {55887#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {55887#(< ~counter~0 20)} is VALID [2022-04-08 06:07:15,337 INFO L290 TraceCheckUtils]: 89: Hoare triple {55912#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55887#(< ~counter~0 20)} is VALID [2022-04-08 06:07:15,337 INFO L290 TraceCheckUtils]: 88: Hoare triple {55912#(< ~counter~0 19)} assume !(~r~0 > 0); {55912#(< ~counter~0 19)} is VALID [2022-04-08 06:07:15,338 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {55536#true} {55912#(< ~counter~0 19)} #96#return; {55912#(< ~counter~0 19)} is VALID [2022-04-08 06:07:15,338 INFO L290 TraceCheckUtils]: 86: Hoare triple {55536#true} assume true; {55536#true} is VALID [2022-04-08 06:07:15,338 INFO L290 TraceCheckUtils]: 85: Hoare triple {55536#true} assume !(0 == ~cond); {55536#true} is VALID [2022-04-08 06:07:15,338 INFO L290 TraceCheckUtils]: 84: Hoare triple {55536#true} ~cond := #in~cond; {55536#true} is VALID [2022-04-08 06:07:15,338 INFO L272 TraceCheckUtils]: 83: Hoare triple {55912#(< ~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)); {55536#true} is VALID [2022-04-08 06:07:15,338 INFO L290 TraceCheckUtils]: 82: Hoare triple {55912#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {55912#(< ~counter~0 19)} is VALID [2022-04-08 06:07:15,339 INFO L290 TraceCheckUtils]: 81: Hoare triple {55937#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55912#(< ~counter~0 19)} is VALID [2022-04-08 06:07:15,339 INFO L290 TraceCheckUtils]: 80: Hoare triple {55937#(< ~counter~0 18)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {55937#(< ~counter~0 18)} is VALID [2022-04-08 06:07:15,340 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {55536#true} {55937#(< ~counter~0 18)} #96#return; {55937#(< ~counter~0 18)} is VALID [2022-04-08 06:07:15,340 INFO L290 TraceCheckUtils]: 78: Hoare triple {55536#true} assume true; {55536#true} is VALID [2022-04-08 06:07:15,340 INFO L290 TraceCheckUtils]: 77: Hoare triple {55536#true} assume !(0 == ~cond); {55536#true} is VALID [2022-04-08 06:07:15,340 INFO L290 TraceCheckUtils]: 76: Hoare triple {55536#true} ~cond := #in~cond; {55536#true} is VALID [2022-04-08 06:07:15,340 INFO L272 TraceCheckUtils]: 75: Hoare triple {55937#(< ~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)); {55536#true} is VALID [2022-04-08 06:07:15,341 INFO L290 TraceCheckUtils]: 74: Hoare triple {55937#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {55937#(< ~counter~0 18)} is VALID [2022-04-08 06:07:15,341 INFO L290 TraceCheckUtils]: 73: Hoare triple {55962#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55937#(< ~counter~0 18)} is VALID [2022-04-08 06:07:15,342 INFO L290 TraceCheckUtils]: 72: Hoare triple {55962#(< ~counter~0 17)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {55962#(< ~counter~0 17)} is VALID [2022-04-08 06:07:15,342 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {55536#true} {55962#(< ~counter~0 17)} #96#return; {55962#(< ~counter~0 17)} is VALID [2022-04-08 06:07:15,342 INFO L290 TraceCheckUtils]: 70: Hoare triple {55536#true} assume true; {55536#true} is VALID [2022-04-08 06:07:15,342 INFO L290 TraceCheckUtils]: 69: Hoare triple {55536#true} assume !(0 == ~cond); {55536#true} is VALID [2022-04-08 06:07:15,342 INFO L290 TraceCheckUtils]: 68: Hoare triple {55536#true} ~cond := #in~cond; {55536#true} is VALID [2022-04-08 06:07:15,342 INFO L272 TraceCheckUtils]: 67: Hoare triple {55962#(< ~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)); {55536#true} is VALID [2022-04-08 06:07:15,343 INFO L290 TraceCheckUtils]: 66: Hoare triple {55962#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {55962#(< ~counter~0 17)} is VALID [2022-04-08 06:07:15,343 INFO L290 TraceCheckUtils]: 65: Hoare triple {55987#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55962#(< ~counter~0 17)} is VALID [2022-04-08 06:07:15,344 INFO L290 TraceCheckUtils]: 64: Hoare triple {55987#(< ~counter~0 16)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {55987#(< ~counter~0 16)} is VALID [2022-04-08 06:07:15,344 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {55536#true} {55987#(< ~counter~0 16)} #96#return; {55987#(< ~counter~0 16)} is VALID [2022-04-08 06:07:15,344 INFO L290 TraceCheckUtils]: 62: Hoare triple {55536#true} assume true; {55536#true} is VALID [2022-04-08 06:07:15,345 INFO L290 TraceCheckUtils]: 61: Hoare triple {55536#true} assume !(0 == ~cond); {55536#true} is VALID [2022-04-08 06:07:15,345 INFO L290 TraceCheckUtils]: 60: Hoare triple {55536#true} ~cond := #in~cond; {55536#true} is VALID [2022-04-08 06:07:15,345 INFO L272 TraceCheckUtils]: 59: Hoare triple {55987#(< ~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)); {55536#true} is VALID [2022-04-08 06:07:15,345 INFO L290 TraceCheckUtils]: 58: Hoare triple {55987#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {55987#(< ~counter~0 16)} is VALID [2022-04-08 06:07:15,346 INFO L290 TraceCheckUtils]: 57: Hoare triple {56012#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55987#(< ~counter~0 16)} is VALID [2022-04-08 06:07:15,346 INFO L290 TraceCheckUtils]: 56: Hoare triple {56012#(< ~counter~0 15)} assume !!(0 != ~r~0); {56012#(< ~counter~0 15)} is VALID [2022-04-08 06:07:15,347 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {55536#true} {56012#(< ~counter~0 15)} #94#return; {56012#(< ~counter~0 15)} is VALID [2022-04-08 06:07:15,347 INFO L290 TraceCheckUtils]: 54: Hoare triple {55536#true} assume true; {55536#true} is VALID [2022-04-08 06:07:15,347 INFO L290 TraceCheckUtils]: 53: Hoare triple {55536#true} assume !(0 == ~cond); {55536#true} is VALID [2022-04-08 06:07:15,347 INFO L290 TraceCheckUtils]: 52: Hoare triple {55536#true} ~cond := #in~cond; {55536#true} is VALID [2022-04-08 06:07:15,347 INFO L272 TraceCheckUtils]: 51: Hoare triple {56012#(< ~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)); {55536#true} is VALID [2022-04-08 06:07:15,347 INFO L290 TraceCheckUtils]: 50: Hoare triple {56012#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {56012#(< ~counter~0 15)} is VALID [2022-04-08 06:07:15,348 INFO L290 TraceCheckUtils]: 49: Hoare triple {56037#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {56012#(< ~counter~0 15)} is VALID [2022-04-08 06:07:15,348 INFO L290 TraceCheckUtils]: 48: Hoare triple {56037#(< ~counter~0 14)} assume !(~r~0 < 0); {56037#(< ~counter~0 14)} is VALID [2022-04-08 06:07:15,349 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {55536#true} {56037#(< ~counter~0 14)} #98#return; {56037#(< ~counter~0 14)} is VALID [2022-04-08 06:07:15,349 INFO L290 TraceCheckUtils]: 46: Hoare triple {55536#true} assume true; {55536#true} is VALID [2022-04-08 06:07:15,349 INFO L290 TraceCheckUtils]: 45: Hoare triple {55536#true} assume !(0 == ~cond); {55536#true} is VALID [2022-04-08 06:07:15,349 INFO L290 TraceCheckUtils]: 44: Hoare triple {55536#true} ~cond := #in~cond; {55536#true} is VALID [2022-04-08 06:07:15,349 INFO L272 TraceCheckUtils]: 43: Hoare triple {56037#(< ~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)); {55536#true} is VALID [2022-04-08 06:07:15,350 INFO L290 TraceCheckUtils]: 42: Hoare triple {56037#(< ~counter~0 14)} assume !!(#t~post8 < 20);havoc #t~post8; {56037#(< ~counter~0 14)} is VALID [2022-04-08 06:07:15,350 INFO L290 TraceCheckUtils]: 41: Hoare triple {56062#(< ~counter~0 13)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {56037#(< ~counter~0 14)} is VALID [2022-04-08 06:07:15,351 INFO L290 TraceCheckUtils]: 40: Hoare triple {56062#(< ~counter~0 13)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {56062#(< ~counter~0 13)} is VALID [2022-04-08 06:07:15,351 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {55536#true} {56062#(< ~counter~0 13)} #98#return; {56062#(< ~counter~0 13)} is VALID [2022-04-08 06:07:15,351 INFO L290 TraceCheckUtils]: 38: Hoare triple {55536#true} assume true; {55536#true} is VALID [2022-04-08 06:07:15,351 INFO L290 TraceCheckUtils]: 37: Hoare triple {55536#true} assume !(0 == ~cond); {55536#true} is VALID [2022-04-08 06:07:15,351 INFO L290 TraceCheckUtils]: 36: Hoare triple {55536#true} ~cond := #in~cond; {55536#true} is VALID [2022-04-08 06:07:15,352 INFO L272 TraceCheckUtils]: 35: Hoare triple {56062#(< ~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)); {55536#true} is VALID [2022-04-08 06:07:15,352 INFO L290 TraceCheckUtils]: 34: Hoare triple {56062#(< ~counter~0 13)} assume !!(#t~post8 < 20);havoc #t~post8; {56062#(< ~counter~0 13)} is VALID [2022-04-08 06:07:15,353 INFO L290 TraceCheckUtils]: 33: Hoare triple {56087#(< ~counter~0 12)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {56062#(< ~counter~0 13)} is VALID [2022-04-08 06:07:15,353 INFO L290 TraceCheckUtils]: 32: Hoare triple {56087#(< ~counter~0 12)} assume !(~r~0 > 0); {56087#(< ~counter~0 12)} is VALID [2022-04-08 06:07:15,353 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {55536#true} {56087#(< ~counter~0 12)} #96#return; {56087#(< ~counter~0 12)} is VALID [2022-04-08 06:07:15,353 INFO L290 TraceCheckUtils]: 30: Hoare triple {55536#true} assume true; {55536#true} is VALID [2022-04-08 06:07:15,354 INFO L290 TraceCheckUtils]: 29: Hoare triple {55536#true} assume !(0 == ~cond); {55536#true} is VALID [2022-04-08 06:07:15,354 INFO L290 TraceCheckUtils]: 28: Hoare triple {55536#true} ~cond := #in~cond; {55536#true} is VALID [2022-04-08 06:07:15,354 INFO L272 TraceCheckUtils]: 27: Hoare triple {56087#(< ~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)); {55536#true} is VALID [2022-04-08 06:07:15,354 INFO L290 TraceCheckUtils]: 26: Hoare triple {56087#(< ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {56087#(< ~counter~0 12)} is VALID [2022-04-08 06:07:15,355 INFO L290 TraceCheckUtils]: 25: Hoare triple {55818#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {56087#(< ~counter~0 12)} is VALID [2022-04-08 06:07:15,355 INFO L290 TraceCheckUtils]: 24: Hoare triple {55818#(<= ~counter~0 10)} assume !!(0 != ~r~0); {55818#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:15,356 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {55536#true} {55818#(<= ~counter~0 10)} #94#return; {55818#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:15,356 INFO L290 TraceCheckUtils]: 22: Hoare triple {55536#true} assume true; {55536#true} is VALID [2022-04-08 06:07:15,356 INFO L290 TraceCheckUtils]: 21: Hoare triple {55536#true} assume !(0 == ~cond); {55536#true} is VALID [2022-04-08 06:07:15,356 INFO L290 TraceCheckUtils]: 20: Hoare triple {55536#true} ~cond := #in~cond; {55536#true} is VALID [2022-04-08 06:07:15,356 INFO L272 TraceCheckUtils]: 19: Hoare triple {55818#(<= ~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)); {55536#true} is VALID [2022-04-08 06:07:15,356 INFO L290 TraceCheckUtils]: 18: Hoare triple {55818#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {55818#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:15,357 INFO L290 TraceCheckUtils]: 17: Hoare triple {55793#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55818#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:15,357 INFO L290 TraceCheckUtils]: 16: Hoare triple {55793#(<= ~counter~0 9)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:15,358 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {55536#true} {55793#(<= ~counter~0 9)} #92#return; {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:15,358 INFO L290 TraceCheckUtils]: 14: Hoare triple {55536#true} assume true; {55536#true} is VALID [2022-04-08 06:07:15,358 INFO L290 TraceCheckUtils]: 13: Hoare triple {55536#true} assume !(0 == ~cond); {55536#true} is VALID [2022-04-08 06:07:15,358 INFO L290 TraceCheckUtils]: 12: Hoare triple {55536#true} ~cond := #in~cond; {55536#true} is VALID [2022-04-08 06:07:15,358 INFO L272 TraceCheckUtils]: 11: Hoare triple {55793#(<= ~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)); {55536#true} is VALID [2022-04-08 06:07:15,359 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {55536#true} {55793#(<= ~counter~0 9)} #90#return; {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:15,359 INFO L290 TraceCheckUtils]: 9: Hoare triple {55536#true} assume true; {55536#true} is VALID [2022-04-08 06:07:15,359 INFO L290 TraceCheckUtils]: 8: Hoare triple {55536#true} assume !(0 == ~cond); {55536#true} is VALID [2022-04-08 06:07:15,359 INFO L290 TraceCheckUtils]: 7: Hoare triple {55536#true} ~cond := #in~cond; {55536#true} is VALID [2022-04-08 06:07:15,359 INFO L272 TraceCheckUtils]: 6: Hoare triple {55793#(<= ~counter~0 9)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {55536#true} is VALID [2022-04-08 06:07:15,359 INFO L290 TraceCheckUtils]: 5: Hoare triple {55793#(<= ~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; {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:15,360 INFO L272 TraceCheckUtils]: 4: Hoare triple {55793#(<= ~counter~0 9)} call #t~ret9 := main(); {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:15,360 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {55793#(<= ~counter~0 9)} {55536#true} #102#return; {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:15,360 INFO L290 TraceCheckUtils]: 2: Hoare triple {55793#(<= ~counter~0 9)} assume true; {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:15,361 INFO L290 TraceCheckUtils]: 1: Hoare triple {55536#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {55793#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:15,361 INFO L272 TraceCheckUtils]: 0: Hoare triple {55536#true} call ULTIMATE.init(); {55536#true} is VALID [2022-04-08 06:07:15,361 INFO L134 CoverageAnalysis]: Checked inductivity of 270 backedges. 24 proven. 62 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-08 06:07:15,361 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:15,361 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [550523193] [2022-04-08 06:07:15,362 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:15,362 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [787082150] [2022-04-08 06:07:15,362 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [787082150] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:07:15,362 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:07:15,362 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 24 [2022-04-08 06:07:15,362 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:15,362 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [968313435] [2022-04-08 06:07:15,362 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [968313435] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:15,362 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:15,362 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 06:07:15,362 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1054666397] [2022-04-08 06:07:15,362 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:15,363 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 5.285714285714286) internal successors, (74), 13 states have internal predecessors, (74), 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 105 [2022-04-08 06:07:15,363 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:15,363 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 5.285714285714286) internal successors, (74), 13 states have internal predecessors, (74), 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:07:15,451 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:15,452 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 06:07:15,452 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:15,452 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 06:07:15,452 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:07:15,453 INFO L87 Difference]: Start difference. First operand 532 states and 716 transitions. Second operand has 14 states, 14 states have (on average 5.285714285714286) internal successors, (74), 13 states have internal predecessors, (74), 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:07:17,432 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:17,433 INFO L93 Difference]: Finished difference Result 785 states and 1097 transitions. [2022-04-08 06:07:17,433 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-08 06:07:17,433 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 5.285714285714286) internal successors, (74), 13 states have internal predecessors, (74), 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 105 [2022-04-08 06:07:17,433 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:07:17,433 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 5.285714285714286) internal successors, (74), 13 states have internal predecessors, (74), 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:07:17,435 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 236 transitions. [2022-04-08 06:07:17,435 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 5.285714285714286) internal successors, (74), 13 states have internal predecessors, (74), 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:07:17,437 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 236 transitions. [2022-04-08 06:07:17,437 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 236 transitions. [2022-04-08 06:07:17,660 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 236 edges. 236 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:17,688 INFO L225 Difference]: With dead ends: 785 [2022-04-08 06:07:17,688 INFO L226 Difference]: Without dead ends: 560 [2022-04-08 06:07:17,689 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 217 GetRequests, 186 SyntacticMatches, 1 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 66 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=404, Invalid=588, Unknown=0, NotChecked=0, Total=992 [2022-04-08 06:07:17,690 INFO L913 BasicCegarLoop]: 60 mSDtfsCounter, 123 mSDsluCounter, 200 mSDsCounter, 0 mSdLazyCounter, 130 mSolverCounterSat, 100 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 123 SdHoareTripleChecker+Valid, 260 SdHoareTripleChecker+Invalid, 230 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 100 IncrementalHoareTripleChecker+Valid, 130 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-08 06:07:17,690 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [123 Valid, 260 Invalid, 230 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [100 Valid, 130 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-08 06:07:17,690 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 560 states. [2022-04-08 06:07:18,765 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 560 to 550. [2022-04-08 06:07:18,765 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:07:18,766 INFO L82 GeneralOperation]: Start isEquivalent. First operand 560 states. Second operand has 550 states, 415 states have (on average 1.2337349397590363) internal successors, (512), 419 states have internal predecessors, (512), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 108 states have call predecessors, (112), 112 states have call successors, (112) [2022-04-08 06:07:18,766 INFO L74 IsIncluded]: Start isIncluded. First operand 560 states. Second operand has 550 states, 415 states have (on average 1.2337349397590363) internal successors, (512), 419 states have internal predecessors, (512), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 108 states have call predecessors, (112), 112 states have call successors, (112) [2022-04-08 06:07:18,766 INFO L87 Difference]: Start difference. First operand 560 states. Second operand has 550 states, 415 states have (on average 1.2337349397590363) internal successors, (512), 419 states have internal predecessors, (512), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 108 states have call predecessors, (112), 112 states have call successors, (112) [2022-04-08 06:07:18,785 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:18,785 INFO L93 Difference]: Finished difference Result 560 states and 748 transitions. [2022-04-08 06:07:18,785 INFO L276 IsEmpty]: Start isEmpty. Operand 560 states and 748 transitions. [2022-04-08 06:07:18,786 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:18,786 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:18,786 INFO L74 IsIncluded]: Start isIncluded. First operand has 550 states, 415 states have (on average 1.2337349397590363) internal successors, (512), 419 states have internal predecessors, (512), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 108 states have call predecessors, (112), 112 states have call successors, (112) Second operand 560 states. [2022-04-08 06:07:18,787 INFO L87 Difference]: Start difference. First operand has 550 states, 415 states have (on average 1.2337349397590363) internal successors, (512), 419 states have internal predecessors, (512), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 108 states have call predecessors, (112), 112 states have call successors, (112) Second operand 560 states. [2022-04-08 06:07:18,799 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:18,799 INFO L93 Difference]: Finished difference Result 560 states and 748 transitions. [2022-04-08 06:07:18,799 INFO L276 IsEmpty]: Start isEmpty. Operand 560 states and 748 transitions. [2022-04-08 06:07:18,800 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:18,800 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:18,800 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:07:18,800 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:07:18,800 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 550 states, 415 states have (on average 1.2337349397590363) internal successors, (512), 419 states have internal predecessors, (512), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 108 states have call predecessors, (112), 112 states have call successors, (112) [2022-04-08 06:07:18,815 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 550 states to 550 states and 738 transitions. [2022-04-08 06:07:18,816 INFO L78 Accepts]: Start accepts. Automaton has 550 states and 738 transitions. Word has length 105 [2022-04-08 06:07:18,816 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:07:18,816 INFO L478 AbstractCegarLoop]: Abstraction has 550 states and 738 transitions. [2022-04-08 06:07:18,816 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 5.285714285714286) internal successors, (74), 13 states have internal predecessors, (74), 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:07:18,816 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 550 states and 738 transitions. [2022-04-08 06:07:36,017 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 738 edges. 735 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:36,018 INFO L276 IsEmpty]: Start isEmpty. Operand 550 states and 738 transitions. [2022-04-08 06:07:36,019 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-04-08 06:07:36,019 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:36,019 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 7, 6, 6, 6, 5, 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, 1, 1, 1, 1, 1] [2022-04-08 06:07:36,038 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Ended with exit code 0 [2022-04-08 06:07:36,219 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 34 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable32 [2022-04-08 06:07:36,220 INFO L403 AbstractCegarLoop]: === Iteration 34 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:36,220 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:36,220 INFO L85 PathProgramCache]: Analyzing trace with hash -2132095591, now seen corresponding path program 11 times [2022-04-08 06:07:36,220 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:36,220 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [142881732] [2022-04-08 06:07:36,220 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:36,220 INFO L85 PathProgramCache]: Analyzing trace with hash -2132095591, now seen corresponding path program 12 times [2022-04-08 06:07:36,220 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:36,221 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [766893711] [2022-04-08 06:07:36,221 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:36,221 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:36,240 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:36,241 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1186971427] [2022-04-08 06:07:36,241 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:07:36,241 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:36,241 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:36,242 INFO L229 MonitoredProcess]: Starting monitored process 35 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:07:36,245 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Waiting until timeout for monitored process [2022-04-08 06:07:36,360 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-08 06:07:36,360 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:36,361 INFO L263 TraceCheckSpWp]: Trace formula consists of 277 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-08 06:07:36,379 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:36,381 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:36,855 INFO L272 TraceCheckUtils]: 0: Hoare triple {59995#true} call ULTIMATE.init(); {59995#true} is VALID [2022-04-08 06:07:36,855 INFO L290 TraceCheckUtils]: 1: Hoare triple {59995#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,855 INFO L290 TraceCheckUtils]: 2: Hoare triple {60003#(<= ~counter~0 0)} assume true; {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,856 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {60003#(<= ~counter~0 0)} {59995#true} #102#return; {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,856 INFO L272 TraceCheckUtils]: 4: Hoare triple {60003#(<= ~counter~0 0)} call #t~ret9 := main(); {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,856 INFO L290 TraceCheckUtils]: 5: Hoare triple {60003#(<= ~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; {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,857 INFO L272 TraceCheckUtils]: 6: Hoare triple {60003#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,857 INFO L290 TraceCheckUtils]: 7: Hoare triple {60003#(<= ~counter~0 0)} ~cond := #in~cond; {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,857 INFO L290 TraceCheckUtils]: 8: Hoare triple {60003#(<= ~counter~0 0)} assume !(0 == ~cond); {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,857 INFO L290 TraceCheckUtils]: 9: Hoare triple {60003#(<= ~counter~0 0)} assume true; {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,858 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {60003#(<= ~counter~0 0)} {60003#(<= ~counter~0 0)} #90#return; {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,858 INFO L272 TraceCheckUtils]: 11: Hoare triple {60003#(<= ~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)); {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,858 INFO L290 TraceCheckUtils]: 12: Hoare triple {60003#(<= ~counter~0 0)} ~cond := #in~cond; {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,859 INFO L290 TraceCheckUtils]: 13: Hoare triple {60003#(<= ~counter~0 0)} assume !(0 == ~cond); {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,859 INFO L290 TraceCheckUtils]: 14: Hoare triple {60003#(<= ~counter~0 0)} assume true; {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,859 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {60003#(<= ~counter~0 0)} {60003#(<= ~counter~0 0)} #92#return; {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,860 INFO L290 TraceCheckUtils]: 16: Hoare triple {60003#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {60003#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:36,861 INFO L290 TraceCheckUtils]: 17: Hoare triple {60003#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60052#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:36,861 INFO L290 TraceCheckUtils]: 18: Hoare triple {60052#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {60052#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:36,862 INFO L272 TraceCheckUtils]: 19: Hoare triple {60052#(<= ~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)); {60052#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:36,862 INFO L290 TraceCheckUtils]: 20: Hoare triple {60052#(<= ~counter~0 1)} ~cond := #in~cond; {60052#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:36,862 INFO L290 TraceCheckUtils]: 21: Hoare triple {60052#(<= ~counter~0 1)} assume !(0 == ~cond); {60052#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:36,862 INFO L290 TraceCheckUtils]: 22: Hoare triple {60052#(<= ~counter~0 1)} assume true; {60052#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:36,863 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {60052#(<= ~counter~0 1)} {60052#(<= ~counter~0 1)} #94#return; {60052#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:36,863 INFO L290 TraceCheckUtils]: 24: Hoare triple {60052#(<= ~counter~0 1)} assume !!(0 != ~r~0); {60052#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:36,864 INFO L290 TraceCheckUtils]: 25: Hoare triple {60052#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60077#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:36,864 INFO L290 TraceCheckUtils]: 26: Hoare triple {60077#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {60077#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:36,865 INFO L272 TraceCheckUtils]: 27: Hoare triple {60077#(<= ~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)); {60077#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:36,865 INFO L290 TraceCheckUtils]: 28: Hoare triple {60077#(<= ~counter~0 2)} ~cond := #in~cond; {60077#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:36,865 INFO L290 TraceCheckUtils]: 29: Hoare triple {60077#(<= ~counter~0 2)} assume !(0 == ~cond); {60077#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:36,865 INFO L290 TraceCheckUtils]: 30: Hoare triple {60077#(<= ~counter~0 2)} assume true; {60077#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:36,866 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {60077#(<= ~counter~0 2)} {60077#(<= ~counter~0 2)} #96#return; {60077#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:36,866 INFO L290 TraceCheckUtils]: 32: Hoare triple {60077#(<= ~counter~0 2)} assume !(~r~0 > 0); {60077#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:36,867 INFO L290 TraceCheckUtils]: 33: Hoare triple {60077#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60102#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:36,867 INFO L290 TraceCheckUtils]: 34: Hoare triple {60102#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {60102#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:36,867 INFO L272 TraceCheckUtils]: 35: Hoare triple {60102#(<= ~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)); {60102#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:36,868 INFO L290 TraceCheckUtils]: 36: Hoare triple {60102#(<= ~counter~0 3)} ~cond := #in~cond; {60102#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:36,868 INFO L290 TraceCheckUtils]: 37: Hoare triple {60102#(<= ~counter~0 3)} assume !(0 == ~cond); {60102#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:36,868 INFO L290 TraceCheckUtils]: 38: Hoare triple {60102#(<= ~counter~0 3)} assume true; {60102#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:36,869 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {60102#(<= ~counter~0 3)} {60102#(<= ~counter~0 3)} #98#return; {60102#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:36,869 INFO L290 TraceCheckUtils]: 40: Hoare triple {60102#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {60102#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:36,870 INFO L290 TraceCheckUtils]: 41: Hoare triple {60102#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60127#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:36,870 INFO L290 TraceCheckUtils]: 42: Hoare triple {60127#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {60127#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:36,870 INFO L272 TraceCheckUtils]: 43: Hoare triple {60127#(<= ~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)); {60127#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:36,871 INFO L290 TraceCheckUtils]: 44: Hoare triple {60127#(<= ~counter~0 4)} ~cond := #in~cond; {60127#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:36,871 INFO L290 TraceCheckUtils]: 45: Hoare triple {60127#(<= ~counter~0 4)} assume !(0 == ~cond); {60127#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:36,871 INFO L290 TraceCheckUtils]: 46: Hoare triple {60127#(<= ~counter~0 4)} assume true; {60127#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:36,871 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {60127#(<= ~counter~0 4)} {60127#(<= ~counter~0 4)} #98#return; {60127#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:36,872 INFO L290 TraceCheckUtils]: 48: Hoare triple {60127#(<= ~counter~0 4)} assume !(~r~0 < 0); {60127#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:36,872 INFO L290 TraceCheckUtils]: 49: Hoare triple {60127#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60152#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:36,873 INFO L290 TraceCheckUtils]: 50: Hoare triple {60152#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {60152#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:36,873 INFO L272 TraceCheckUtils]: 51: Hoare triple {60152#(<= ~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)); {60152#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:36,873 INFO L290 TraceCheckUtils]: 52: Hoare triple {60152#(<= ~counter~0 5)} ~cond := #in~cond; {60152#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:36,874 INFO L290 TraceCheckUtils]: 53: Hoare triple {60152#(<= ~counter~0 5)} assume !(0 == ~cond); {60152#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:36,874 INFO L290 TraceCheckUtils]: 54: Hoare triple {60152#(<= ~counter~0 5)} assume true; {60152#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:36,874 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {60152#(<= ~counter~0 5)} {60152#(<= ~counter~0 5)} #94#return; {60152#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:36,875 INFO L290 TraceCheckUtils]: 56: Hoare triple {60152#(<= ~counter~0 5)} assume !!(0 != ~r~0); {60152#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:36,875 INFO L290 TraceCheckUtils]: 57: Hoare triple {60152#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60177#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:36,876 INFO L290 TraceCheckUtils]: 58: Hoare triple {60177#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {60177#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:36,876 INFO L272 TraceCheckUtils]: 59: Hoare triple {60177#(<= ~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)); {60177#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:36,876 INFO L290 TraceCheckUtils]: 60: Hoare triple {60177#(<= ~counter~0 6)} ~cond := #in~cond; {60177#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:36,876 INFO L290 TraceCheckUtils]: 61: Hoare triple {60177#(<= ~counter~0 6)} assume !(0 == ~cond); {60177#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:36,877 INFO L290 TraceCheckUtils]: 62: Hoare triple {60177#(<= ~counter~0 6)} assume true; {60177#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:36,877 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {60177#(<= ~counter~0 6)} {60177#(<= ~counter~0 6)} #96#return; {60177#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:36,877 INFO L290 TraceCheckUtils]: 64: Hoare triple {60177#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60177#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:36,878 INFO L290 TraceCheckUtils]: 65: Hoare triple {60177#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60202#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:36,878 INFO L290 TraceCheckUtils]: 66: Hoare triple {60202#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {60202#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:36,879 INFO L272 TraceCheckUtils]: 67: Hoare triple {60202#(<= ~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)); {60202#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:36,879 INFO L290 TraceCheckUtils]: 68: Hoare triple {60202#(<= ~counter~0 7)} ~cond := #in~cond; {60202#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:36,879 INFO L290 TraceCheckUtils]: 69: Hoare triple {60202#(<= ~counter~0 7)} assume !(0 == ~cond); {60202#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:36,880 INFO L290 TraceCheckUtils]: 70: Hoare triple {60202#(<= ~counter~0 7)} assume true; {60202#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:36,880 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {60202#(<= ~counter~0 7)} {60202#(<= ~counter~0 7)} #96#return; {60202#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:36,880 INFO L290 TraceCheckUtils]: 72: Hoare triple {60202#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60202#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:36,881 INFO L290 TraceCheckUtils]: 73: Hoare triple {60202#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60227#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:36,881 INFO L290 TraceCheckUtils]: 74: Hoare triple {60227#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {60227#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:36,882 INFO L272 TraceCheckUtils]: 75: Hoare triple {60227#(<= ~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)); {60227#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:36,882 INFO L290 TraceCheckUtils]: 76: Hoare triple {60227#(<= ~counter~0 8)} ~cond := #in~cond; {60227#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:36,882 INFO L290 TraceCheckUtils]: 77: Hoare triple {60227#(<= ~counter~0 8)} assume !(0 == ~cond); {60227#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:36,882 INFO L290 TraceCheckUtils]: 78: Hoare triple {60227#(<= ~counter~0 8)} assume true; {60227#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:36,883 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {60227#(<= ~counter~0 8)} {60227#(<= ~counter~0 8)} #96#return; {60227#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:36,883 INFO L290 TraceCheckUtils]: 80: Hoare triple {60227#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60227#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:36,884 INFO L290 TraceCheckUtils]: 81: Hoare triple {60227#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:36,884 INFO L290 TraceCheckUtils]: 82: Hoare triple {60252#(<= ~counter~0 9)} assume !!(#t~post7 < 20);havoc #t~post7; {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:36,885 INFO L272 TraceCheckUtils]: 83: Hoare triple {60252#(<= ~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)); {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:36,885 INFO L290 TraceCheckUtils]: 84: Hoare triple {60252#(<= ~counter~0 9)} ~cond := #in~cond; {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:36,885 INFO L290 TraceCheckUtils]: 85: Hoare triple {60252#(<= ~counter~0 9)} assume !(0 == ~cond); {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:36,885 INFO L290 TraceCheckUtils]: 86: Hoare triple {60252#(<= ~counter~0 9)} assume true; {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:36,886 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {60252#(<= ~counter~0 9)} {60252#(<= ~counter~0 9)} #96#return; {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:36,886 INFO L290 TraceCheckUtils]: 88: Hoare triple {60252#(<= ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:36,887 INFO L290 TraceCheckUtils]: 89: Hoare triple {60252#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60277#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:36,887 INFO L290 TraceCheckUtils]: 90: Hoare triple {60277#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {60277#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:36,887 INFO L272 TraceCheckUtils]: 91: Hoare triple {60277#(<= ~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)); {60277#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:36,888 INFO L290 TraceCheckUtils]: 92: Hoare triple {60277#(<= ~counter~0 10)} ~cond := #in~cond; {60277#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:36,888 INFO L290 TraceCheckUtils]: 93: Hoare triple {60277#(<= ~counter~0 10)} assume !(0 == ~cond); {60277#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:36,888 INFO L290 TraceCheckUtils]: 94: Hoare triple {60277#(<= ~counter~0 10)} assume true; {60277#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:36,889 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {60277#(<= ~counter~0 10)} {60277#(<= ~counter~0 10)} #96#return; {60277#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:36,889 INFO L290 TraceCheckUtils]: 96: Hoare triple {60277#(<= ~counter~0 10)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60277#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:36,889 INFO L290 TraceCheckUtils]: 97: Hoare triple {60277#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60302#(<= |main_#t~post7| 10)} is VALID [2022-04-08 06:07:36,890 INFO L290 TraceCheckUtils]: 98: Hoare triple {60302#(<= |main_#t~post7| 10)} assume !(#t~post7 < 20);havoc #t~post7; {59996#false} is VALID [2022-04-08 06:07:36,890 INFO L290 TraceCheckUtils]: 99: Hoare triple {59996#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {59996#false} is VALID [2022-04-08 06:07:36,890 INFO L290 TraceCheckUtils]: 100: Hoare triple {59996#false} assume !(#t~post8 < 20);havoc #t~post8; {59996#false} is VALID [2022-04-08 06:07:36,890 INFO L290 TraceCheckUtils]: 101: Hoare triple {59996#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59996#false} is VALID [2022-04-08 06:07:36,890 INFO L290 TraceCheckUtils]: 102: Hoare triple {59996#false} assume !(#t~post6 < 20);havoc #t~post6; {59996#false} is VALID [2022-04-08 06:07:36,890 INFO L272 TraceCheckUtils]: 103: Hoare triple {59996#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)); {59996#false} is VALID [2022-04-08 06:07:36,890 INFO L290 TraceCheckUtils]: 104: Hoare triple {59996#false} ~cond := #in~cond; {59996#false} is VALID [2022-04-08 06:07:36,890 INFO L290 TraceCheckUtils]: 105: Hoare triple {59996#false} assume 0 == ~cond; {59996#false} is VALID [2022-04-08 06:07:36,890 INFO L290 TraceCheckUtils]: 106: Hoare triple {59996#false} assume !false; {59996#false} is VALID [2022-04-08 06:07:36,891 INFO L134 CoverageAnalysis]: Checked inductivity of 292 backedges. 28 proven. 260 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:07:36,891 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:07:37,450 INFO L290 TraceCheckUtils]: 106: Hoare triple {59996#false} assume !false; {59996#false} is VALID [2022-04-08 06:07:37,450 INFO L290 TraceCheckUtils]: 105: Hoare triple {59996#false} assume 0 == ~cond; {59996#false} is VALID [2022-04-08 06:07:37,450 INFO L290 TraceCheckUtils]: 104: Hoare triple {59996#false} ~cond := #in~cond; {59996#false} is VALID [2022-04-08 06:07:37,450 INFO L272 TraceCheckUtils]: 103: Hoare triple {59996#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)); {59996#false} is VALID [2022-04-08 06:07:37,450 INFO L290 TraceCheckUtils]: 102: Hoare triple {59996#false} assume !(#t~post6 < 20);havoc #t~post6; {59996#false} is VALID [2022-04-08 06:07:37,450 INFO L290 TraceCheckUtils]: 101: Hoare triple {59996#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59996#false} is VALID [2022-04-08 06:07:37,450 INFO L290 TraceCheckUtils]: 100: Hoare triple {59996#false} assume !(#t~post8 < 20);havoc #t~post8; {59996#false} is VALID [2022-04-08 06:07:37,450 INFO L290 TraceCheckUtils]: 99: Hoare triple {59996#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {59996#false} is VALID [2022-04-08 06:07:37,451 INFO L290 TraceCheckUtils]: 98: Hoare triple {60354#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {59996#false} is VALID [2022-04-08 06:07:37,451 INFO L290 TraceCheckUtils]: 97: Hoare triple {60358#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60354#(< |main_#t~post7| 20)} is VALID [2022-04-08 06:07:37,451 INFO L290 TraceCheckUtils]: 96: Hoare triple {60358#(< ~counter~0 20)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60358#(< ~counter~0 20)} is VALID [2022-04-08 06:07:37,452 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {59995#true} {60358#(< ~counter~0 20)} #96#return; {60358#(< ~counter~0 20)} is VALID [2022-04-08 06:07:37,452 INFO L290 TraceCheckUtils]: 94: Hoare triple {59995#true} assume true; {59995#true} is VALID [2022-04-08 06:07:37,452 INFO L290 TraceCheckUtils]: 93: Hoare triple {59995#true} assume !(0 == ~cond); {59995#true} is VALID [2022-04-08 06:07:37,452 INFO L290 TraceCheckUtils]: 92: Hoare triple {59995#true} ~cond := #in~cond; {59995#true} is VALID [2022-04-08 06:07:37,452 INFO L272 TraceCheckUtils]: 91: Hoare triple {60358#(< ~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)); {59995#true} is VALID [2022-04-08 06:07:37,452 INFO L290 TraceCheckUtils]: 90: Hoare triple {60358#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {60358#(< ~counter~0 20)} is VALID [2022-04-08 06:07:37,454 INFO L290 TraceCheckUtils]: 89: Hoare triple {60383#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60358#(< ~counter~0 20)} is VALID [2022-04-08 06:07:37,454 INFO L290 TraceCheckUtils]: 88: Hoare triple {60383#(< ~counter~0 19)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60383#(< ~counter~0 19)} is VALID [2022-04-08 06:07:37,454 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {59995#true} {60383#(< ~counter~0 19)} #96#return; {60383#(< ~counter~0 19)} is VALID [2022-04-08 06:07:37,454 INFO L290 TraceCheckUtils]: 86: Hoare triple {59995#true} assume true; {59995#true} is VALID [2022-04-08 06:07:37,455 INFO L290 TraceCheckUtils]: 85: Hoare triple {59995#true} assume !(0 == ~cond); {59995#true} is VALID [2022-04-08 06:07:37,455 INFO L290 TraceCheckUtils]: 84: Hoare triple {59995#true} ~cond := #in~cond; {59995#true} is VALID [2022-04-08 06:07:37,455 INFO L272 TraceCheckUtils]: 83: Hoare triple {60383#(< ~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)); {59995#true} is VALID [2022-04-08 06:07:37,455 INFO L290 TraceCheckUtils]: 82: Hoare triple {60383#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {60383#(< ~counter~0 19)} is VALID [2022-04-08 06:07:37,456 INFO L290 TraceCheckUtils]: 81: Hoare triple {60408#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60383#(< ~counter~0 19)} is VALID [2022-04-08 06:07:37,456 INFO L290 TraceCheckUtils]: 80: Hoare triple {60408#(< ~counter~0 18)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60408#(< ~counter~0 18)} is VALID [2022-04-08 06:07:37,456 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {59995#true} {60408#(< ~counter~0 18)} #96#return; {60408#(< ~counter~0 18)} is VALID [2022-04-08 06:07:37,456 INFO L290 TraceCheckUtils]: 78: Hoare triple {59995#true} assume true; {59995#true} is VALID [2022-04-08 06:07:37,456 INFO L290 TraceCheckUtils]: 77: Hoare triple {59995#true} assume !(0 == ~cond); {59995#true} is VALID [2022-04-08 06:07:37,457 INFO L290 TraceCheckUtils]: 76: Hoare triple {59995#true} ~cond := #in~cond; {59995#true} is VALID [2022-04-08 06:07:37,457 INFO L272 TraceCheckUtils]: 75: Hoare triple {60408#(< ~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)); {59995#true} is VALID [2022-04-08 06:07:37,457 INFO L290 TraceCheckUtils]: 74: Hoare triple {60408#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {60408#(< ~counter~0 18)} is VALID [2022-04-08 06:07:37,458 INFO L290 TraceCheckUtils]: 73: Hoare triple {60433#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60408#(< ~counter~0 18)} is VALID [2022-04-08 06:07:37,458 INFO L290 TraceCheckUtils]: 72: Hoare triple {60433#(< ~counter~0 17)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60433#(< ~counter~0 17)} is VALID [2022-04-08 06:07:37,458 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {59995#true} {60433#(< ~counter~0 17)} #96#return; {60433#(< ~counter~0 17)} is VALID [2022-04-08 06:07:37,458 INFO L290 TraceCheckUtils]: 70: Hoare triple {59995#true} assume true; {59995#true} is VALID [2022-04-08 06:07:37,458 INFO L290 TraceCheckUtils]: 69: Hoare triple {59995#true} assume !(0 == ~cond); {59995#true} is VALID [2022-04-08 06:07:37,459 INFO L290 TraceCheckUtils]: 68: Hoare triple {59995#true} ~cond := #in~cond; {59995#true} is VALID [2022-04-08 06:07:37,459 INFO L272 TraceCheckUtils]: 67: Hoare triple {60433#(< ~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)); {59995#true} is VALID [2022-04-08 06:07:37,459 INFO L290 TraceCheckUtils]: 66: Hoare triple {60433#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {60433#(< ~counter~0 17)} is VALID [2022-04-08 06:07:37,459 INFO L290 TraceCheckUtils]: 65: Hoare triple {60458#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60433#(< ~counter~0 17)} is VALID [2022-04-08 06:07:37,460 INFO L290 TraceCheckUtils]: 64: Hoare triple {60458#(< ~counter~0 16)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60458#(< ~counter~0 16)} is VALID [2022-04-08 06:07:37,460 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {59995#true} {60458#(< ~counter~0 16)} #96#return; {60458#(< ~counter~0 16)} is VALID [2022-04-08 06:07:37,460 INFO L290 TraceCheckUtils]: 62: Hoare triple {59995#true} assume true; {59995#true} is VALID [2022-04-08 06:07:37,460 INFO L290 TraceCheckUtils]: 61: Hoare triple {59995#true} assume !(0 == ~cond); {59995#true} is VALID [2022-04-08 06:07:37,460 INFO L290 TraceCheckUtils]: 60: Hoare triple {59995#true} ~cond := #in~cond; {59995#true} is VALID [2022-04-08 06:07:37,460 INFO L272 TraceCheckUtils]: 59: Hoare triple {60458#(< ~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)); {59995#true} is VALID [2022-04-08 06:07:37,461 INFO L290 TraceCheckUtils]: 58: Hoare triple {60458#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {60458#(< ~counter~0 16)} is VALID [2022-04-08 06:07:37,461 INFO L290 TraceCheckUtils]: 57: Hoare triple {60483#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60458#(< ~counter~0 16)} is VALID [2022-04-08 06:07:37,462 INFO L290 TraceCheckUtils]: 56: Hoare triple {60483#(< ~counter~0 15)} assume !!(0 != ~r~0); {60483#(< ~counter~0 15)} is VALID [2022-04-08 06:07:37,462 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {59995#true} {60483#(< ~counter~0 15)} #94#return; {60483#(< ~counter~0 15)} is VALID [2022-04-08 06:07:37,462 INFO L290 TraceCheckUtils]: 54: Hoare triple {59995#true} assume true; {59995#true} is VALID [2022-04-08 06:07:37,462 INFO L290 TraceCheckUtils]: 53: Hoare triple {59995#true} assume !(0 == ~cond); {59995#true} is VALID [2022-04-08 06:07:37,462 INFO L290 TraceCheckUtils]: 52: Hoare triple {59995#true} ~cond := #in~cond; {59995#true} is VALID [2022-04-08 06:07:37,462 INFO L272 TraceCheckUtils]: 51: Hoare triple {60483#(< ~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)); {59995#true} is VALID [2022-04-08 06:07:37,463 INFO L290 TraceCheckUtils]: 50: Hoare triple {60483#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {60483#(< ~counter~0 15)} is VALID [2022-04-08 06:07:37,463 INFO L290 TraceCheckUtils]: 49: Hoare triple {60508#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60483#(< ~counter~0 15)} is VALID [2022-04-08 06:07:37,464 INFO L290 TraceCheckUtils]: 48: Hoare triple {60508#(< ~counter~0 14)} assume !(~r~0 < 0); {60508#(< ~counter~0 14)} is VALID [2022-04-08 06:07:37,464 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {59995#true} {60508#(< ~counter~0 14)} #98#return; {60508#(< ~counter~0 14)} is VALID [2022-04-08 06:07:37,464 INFO L290 TraceCheckUtils]: 46: Hoare triple {59995#true} assume true; {59995#true} is VALID [2022-04-08 06:07:37,464 INFO L290 TraceCheckUtils]: 45: Hoare triple {59995#true} assume !(0 == ~cond); {59995#true} is VALID [2022-04-08 06:07:37,464 INFO L290 TraceCheckUtils]: 44: Hoare triple {59995#true} ~cond := #in~cond; {59995#true} is VALID [2022-04-08 06:07:37,464 INFO L272 TraceCheckUtils]: 43: Hoare triple {60508#(< ~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)); {59995#true} is VALID [2022-04-08 06:07:37,465 INFO L290 TraceCheckUtils]: 42: Hoare triple {60508#(< ~counter~0 14)} assume !!(#t~post8 < 20);havoc #t~post8; {60508#(< ~counter~0 14)} is VALID [2022-04-08 06:07:37,465 INFO L290 TraceCheckUtils]: 41: Hoare triple {60533#(< ~counter~0 13)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60508#(< ~counter~0 14)} is VALID [2022-04-08 06:07:37,465 INFO L290 TraceCheckUtils]: 40: Hoare triple {60533#(< ~counter~0 13)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {60533#(< ~counter~0 13)} is VALID [2022-04-08 06:07:37,466 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {59995#true} {60533#(< ~counter~0 13)} #98#return; {60533#(< ~counter~0 13)} is VALID [2022-04-08 06:07:37,466 INFO L290 TraceCheckUtils]: 38: Hoare triple {59995#true} assume true; {59995#true} is VALID [2022-04-08 06:07:37,466 INFO L290 TraceCheckUtils]: 37: Hoare triple {59995#true} assume !(0 == ~cond); {59995#true} is VALID [2022-04-08 06:07:37,466 INFO L290 TraceCheckUtils]: 36: Hoare triple {59995#true} ~cond := #in~cond; {59995#true} is VALID [2022-04-08 06:07:37,466 INFO L272 TraceCheckUtils]: 35: Hoare triple {60533#(< ~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)); {59995#true} is VALID [2022-04-08 06:07:37,466 INFO L290 TraceCheckUtils]: 34: Hoare triple {60533#(< ~counter~0 13)} assume !!(#t~post8 < 20);havoc #t~post8; {60533#(< ~counter~0 13)} is VALID [2022-04-08 06:07:37,467 INFO L290 TraceCheckUtils]: 33: Hoare triple {60558#(< ~counter~0 12)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60533#(< ~counter~0 13)} is VALID [2022-04-08 06:07:37,467 INFO L290 TraceCheckUtils]: 32: Hoare triple {60558#(< ~counter~0 12)} assume !(~r~0 > 0); {60558#(< ~counter~0 12)} is VALID [2022-04-08 06:07:37,468 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {59995#true} {60558#(< ~counter~0 12)} #96#return; {60558#(< ~counter~0 12)} is VALID [2022-04-08 06:07:37,468 INFO L290 TraceCheckUtils]: 30: Hoare triple {59995#true} assume true; {59995#true} is VALID [2022-04-08 06:07:37,468 INFO L290 TraceCheckUtils]: 29: Hoare triple {59995#true} assume !(0 == ~cond); {59995#true} is VALID [2022-04-08 06:07:37,468 INFO L290 TraceCheckUtils]: 28: Hoare triple {59995#true} ~cond := #in~cond; {59995#true} is VALID [2022-04-08 06:07:37,468 INFO L272 TraceCheckUtils]: 27: Hoare triple {60558#(< ~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)); {59995#true} is VALID [2022-04-08 06:07:37,468 INFO L290 TraceCheckUtils]: 26: Hoare triple {60558#(< ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {60558#(< ~counter~0 12)} is VALID [2022-04-08 06:07:37,469 INFO L290 TraceCheckUtils]: 25: Hoare triple {60277#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60558#(< ~counter~0 12)} is VALID [2022-04-08 06:07:37,469 INFO L290 TraceCheckUtils]: 24: Hoare triple {60277#(<= ~counter~0 10)} assume !!(0 != ~r~0); {60277#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:37,470 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {59995#true} {60277#(<= ~counter~0 10)} #94#return; {60277#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:37,470 INFO L290 TraceCheckUtils]: 22: Hoare triple {59995#true} assume true; {59995#true} is VALID [2022-04-08 06:07:37,470 INFO L290 TraceCheckUtils]: 21: Hoare triple {59995#true} assume !(0 == ~cond); {59995#true} is VALID [2022-04-08 06:07:37,470 INFO L290 TraceCheckUtils]: 20: Hoare triple {59995#true} ~cond := #in~cond; {59995#true} is VALID [2022-04-08 06:07:37,470 INFO L272 TraceCheckUtils]: 19: Hoare triple {60277#(<= ~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)); {59995#true} is VALID [2022-04-08 06:07:37,470 INFO L290 TraceCheckUtils]: 18: Hoare triple {60277#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {60277#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:37,471 INFO L290 TraceCheckUtils]: 17: Hoare triple {60252#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60277#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:37,471 INFO L290 TraceCheckUtils]: 16: Hoare triple {60252#(<= ~counter~0 9)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:37,472 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {59995#true} {60252#(<= ~counter~0 9)} #92#return; {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:37,472 INFO L290 TraceCheckUtils]: 14: Hoare triple {59995#true} assume true; {59995#true} is VALID [2022-04-08 06:07:37,472 INFO L290 TraceCheckUtils]: 13: Hoare triple {59995#true} assume !(0 == ~cond); {59995#true} is VALID [2022-04-08 06:07:37,472 INFO L290 TraceCheckUtils]: 12: Hoare triple {59995#true} ~cond := #in~cond; {59995#true} is VALID [2022-04-08 06:07:37,472 INFO L272 TraceCheckUtils]: 11: Hoare triple {60252#(<= ~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)); {59995#true} is VALID [2022-04-08 06:07:37,472 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {59995#true} {60252#(<= ~counter~0 9)} #90#return; {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:37,472 INFO L290 TraceCheckUtils]: 9: Hoare triple {59995#true} assume true; {59995#true} is VALID [2022-04-08 06:07:37,472 INFO L290 TraceCheckUtils]: 8: Hoare triple {59995#true} assume !(0 == ~cond); {59995#true} is VALID [2022-04-08 06:07:37,472 INFO L290 TraceCheckUtils]: 7: Hoare triple {59995#true} ~cond := #in~cond; {59995#true} is VALID [2022-04-08 06:07:37,472 INFO L272 TraceCheckUtils]: 6: Hoare triple {60252#(<= ~counter~0 9)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {59995#true} is VALID [2022-04-08 06:07:37,473 INFO L290 TraceCheckUtils]: 5: Hoare triple {60252#(<= ~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; {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:37,473 INFO L272 TraceCheckUtils]: 4: Hoare triple {60252#(<= ~counter~0 9)} call #t~ret9 := main(); {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:37,473 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {60252#(<= ~counter~0 9)} {59995#true} #102#return; {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:37,474 INFO L290 TraceCheckUtils]: 2: Hoare triple {60252#(<= ~counter~0 9)} assume true; {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:37,474 INFO L290 TraceCheckUtils]: 1: Hoare triple {59995#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {60252#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:37,474 INFO L272 TraceCheckUtils]: 0: Hoare triple {59995#true} call ULTIMATE.init(); {59995#true} is VALID [2022-04-08 06:07:37,474 INFO L134 CoverageAnalysis]: Checked inductivity of 292 backedges. 28 proven. 80 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-08 06:07:37,474 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:37,475 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [766893711] [2022-04-08 06:07:37,475 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:37,475 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1186971427] [2022-04-08 06:07:37,475 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1186971427] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:07:37,475 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:07:37,475 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 24 [2022-04-08 06:07:37,475 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:37,475 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [142881732] [2022-04-08 06:07:37,475 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [142881732] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:37,475 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:37,475 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 06:07:37,475 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1409050480] [2022-04-08 06:07:37,475 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:37,476 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 5.428571428571429) internal successors, (76), 13 states have internal predecessors, (76), 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 107 [2022-04-08 06:07:37,476 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:37,476 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 5.428571428571429) internal successors, (76), 13 states have internal predecessors, (76), 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:07:37,552 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:37,552 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 06:07:37,552 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:37,553 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 06:07:37,553 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:07:37,553 INFO L87 Difference]: Start difference. First operand 550 states and 738 transitions. Second operand has 14 states, 14 states have (on average 5.428571428571429) internal successors, (76), 13 states have internal predecessors, (76), 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:07:39,427 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:39,428 INFO L93 Difference]: Finished difference Result 767 states and 1065 transitions. [2022-04-08 06:07:39,428 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-08 06:07:39,428 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 5.428571428571429) internal successors, (76), 13 states have internal predecessors, (76), 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 107 [2022-04-08 06:07:39,428 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:07:39,428 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 5.428571428571429) internal successors, (76), 13 states have internal predecessors, (76), 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:07:39,430 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 236 transitions. [2022-04-08 06:07:39,430 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 5.428571428571429) internal successors, (76), 13 states have internal predecessors, (76), 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:07:39,432 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 236 transitions. [2022-04-08 06:07:39,432 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 236 transitions. [2022-04-08 06:07:39,646 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 236 edges. 236 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:39,661 INFO L225 Difference]: With dead ends: 767 [2022-04-08 06:07:39,661 INFO L226 Difference]: Without dead ends: 566 [2022-04-08 06:07:39,662 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 222 GetRequests, 190 SyntacticMatches, 1 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 74 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=434, Invalid=622, Unknown=0, NotChecked=0, Total=1056 [2022-04-08 06:07:39,662 INFO L913 BasicCegarLoop]: 60 mSDtfsCounter, 153 mSDsluCounter, 194 mSDsCounter, 0 mSdLazyCounter, 138 mSolverCounterSat, 113 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 153 SdHoareTripleChecker+Valid, 254 SdHoareTripleChecker+Invalid, 251 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 113 IncrementalHoareTripleChecker+Valid, 138 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 06:07:39,662 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [153 Valid, 254 Invalid, 251 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [113 Valid, 138 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 06:07:39,663 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 566 states. [2022-04-08 06:07:40,759 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 566 to 566. [2022-04-08 06:07:40,759 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:07:40,760 INFO L82 GeneralOperation]: Start isEquivalent. First operand 566 states. Second operand has 566 states, 431 states have (on average 1.2250580046403712) internal successors, (528), 431 states have internal predecessors, (528), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 112 states have call predecessors, (112), 112 states have call successors, (112) [2022-04-08 06:07:40,760 INFO L74 IsIncluded]: Start isIncluded. First operand 566 states. Second operand has 566 states, 431 states have (on average 1.2250580046403712) internal successors, (528), 431 states have internal predecessors, (528), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 112 states have call predecessors, (112), 112 states have call successors, (112) [2022-04-08 06:07:40,760 INFO L87 Difference]: Start difference. First operand 566 states. Second operand has 566 states, 431 states have (on average 1.2250580046403712) internal successors, (528), 431 states have internal predecessors, (528), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 112 states have call predecessors, (112), 112 states have call successors, (112) [2022-04-08 06:07:40,773 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:40,773 INFO L93 Difference]: Finished difference Result 566 states and 754 transitions. [2022-04-08 06:07:40,773 INFO L276 IsEmpty]: Start isEmpty. Operand 566 states and 754 transitions. [2022-04-08 06:07:40,774 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:40,774 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:40,774 INFO L74 IsIncluded]: Start isIncluded. First operand has 566 states, 431 states have (on average 1.2250580046403712) internal successors, (528), 431 states have internal predecessors, (528), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 112 states have call predecessors, (112), 112 states have call successors, (112) Second operand 566 states. [2022-04-08 06:07:40,775 INFO L87 Difference]: Start difference. First operand has 566 states, 431 states have (on average 1.2250580046403712) internal successors, (528), 431 states have internal predecessors, (528), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 112 states have call predecessors, (112), 112 states have call successors, (112) Second operand 566 states. [2022-04-08 06:07:40,787 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:07:40,787 INFO L93 Difference]: Finished difference Result 566 states and 754 transitions. [2022-04-08 06:07:40,787 INFO L276 IsEmpty]: Start isEmpty. Operand 566 states and 754 transitions. [2022-04-08 06:07:40,788 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:07:40,788 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:07:40,788 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:07:40,788 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:07:40,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 566 states, 431 states have (on average 1.2250580046403712) internal successors, (528), 431 states have internal predecessors, (528), 114 states have call successors, (114), 22 states have call predecessors, (114), 20 states have return successors, (112), 112 states have call predecessors, (112), 112 states have call successors, (112) [2022-04-08 06:07:40,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 566 states to 566 states and 754 transitions. [2022-04-08 06:07:40,805 INFO L78 Accepts]: Start accepts. Automaton has 566 states and 754 transitions. Word has length 107 [2022-04-08 06:07:40,805 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:07:40,805 INFO L478 AbstractCegarLoop]: Abstraction has 566 states and 754 transitions. [2022-04-08 06:07:40,805 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 5.428571428571429) internal successors, (76), 13 states have internal predecessors, (76), 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:07:40,805 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 566 states and 754 transitions. [2022-04-08 06:07:56,548 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 754 edges. 750 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:56,548 INFO L276 IsEmpty]: Start isEmpty. Operand 566 states and 754 transitions. [2022-04-08 06:07:56,549 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 112 [2022-04-08 06:07:56,549 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:07:56,549 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 5, 5, 5, 5, 4, 4, 4, 4, 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:56,555 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Forceful destruction successful, exit code 0 [2022-04-08 06:07:56,750 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable33,35 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:56,750 INFO L403 AbstractCegarLoop]: === Iteration 35 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:07:56,750 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:07:56,750 INFO L85 PathProgramCache]: Analyzing trace with hash -1965005106, now seen corresponding path program 5 times [2022-04-08 06:07:56,750 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:56,751 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1089992998] [2022-04-08 06:07:56,751 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:07:56,751 INFO L85 PathProgramCache]: Analyzing trace with hash -1965005106, now seen corresponding path program 6 times [2022-04-08 06:07:56,751 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:07:56,751 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1984401837] [2022-04-08 06:07:56,751 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:07:56,751 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:07:56,762 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:07:56,762 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1032482307] [2022-04-08 06:07:56,762 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:07:56,762 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:07:56,762 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:07:56,763 INFO L229 MonitoredProcess]: Starting monitored process 36 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:07:56,764 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Waiting until timeout for monitored process [2022-04-08 06:07:56,901 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2022-04-08 06:07:56,901 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:07:56,903 INFO L263 TraceCheckSpWp]: Trace formula consists of 278 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-08 06:07:56,922 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:07:56,923 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:07:57,499 INFO L272 TraceCheckUtils]: 0: Hoare triple {64476#true} call ULTIMATE.init(); {64476#true} is VALID [2022-04-08 06:07:57,500 INFO L290 TraceCheckUtils]: 1: Hoare triple {64476#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,500 INFO L290 TraceCheckUtils]: 2: Hoare triple {64484#(<= ~counter~0 0)} assume true; {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,500 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {64484#(<= ~counter~0 0)} {64476#true} #102#return; {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,501 INFO L272 TraceCheckUtils]: 4: Hoare triple {64484#(<= ~counter~0 0)} call #t~ret9 := main(); {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,501 INFO L290 TraceCheckUtils]: 5: Hoare triple {64484#(<= ~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; {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,501 INFO L272 TraceCheckUtils]: 6: Hoare triple {64484#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,502 INFO L290 TraceCheckUtils]: 7: Hoare triple {64484#(<= ~counter~0 0)} ~cond := #in~cond; {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,502 INFO L290 TraceCheckUtils]: 8: Hoare triple {64484#(<= ~counter~0 0)} assume !(0 == ~cond); {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,502 INFO L290 TraceCheckUtils]: 9: Hoare triple {64484#(<= ~counter~0 0)} assume true; {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,503 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {64484#(<= ~counter~0 0)} {64484#(<= ~counter~0 0)} #90#return; {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,503 INFO L272 TraceCheckUtils]: 11: Hoare triple {64484#(<= ~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)); {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,503 INFO L290 TraceCheckUtils]: 12: Hoare triple {64484#(<= ~counter~0 0)} ~cond := #in~cond; {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,504 INFO L290 TraceCheckUtils]: 13: Hoare triple {64484#(<= ~counter~0 0)} assume !(0 == ~cond); {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,504 INFO L290 TraceCheckUtils]: 14: Hoare triple {64484#(<= ~counter~0 0)} assume true; {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,504 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {64484#(<= ~counter~0 0)} {64484#(<= ~counter~0 0)} #92#return; {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,505 INFO L290 TraceCheckUtils]: 16: Hoare triple {64484#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {64484#(<= ~counter~0 0)} is VALID [2022-04-08 06:07:57,506 INFO L290 TraceCheckUtils]: 17: Hoare triple {64484#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {64533#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:57,506 INFO L290 TraceCheckUtils]: 18: Hoare triple {64533#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {64533#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:57,507 INFO L272 TraceCheckUtils]: 19: Hoare triple {64533#(<= ~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)); {64533#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:57,507 INFO L290 TraceCheckUtils]: 20: Hoare triple {64533#(<= ~counter~0 1)} ~cond := #in~cond; {64533#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:57,507 INFO L290 TraceCheckUtils]: 21: Hoare triple {64533#(<= ~counter~0 1)} assume !(0 == ~cond); {64533#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:57,508 INFO L290 TraceCheckUtils]: 22: Hoare triple {64533#(<= ~counter~0 1)} assume true; {64533#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:57,508 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {64533#(<= ~counter~0 1)} {64533#(<= ~counter~0 1)} #94#return; {64533#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:57,508 INFO L290 TraceCheckUtils]: 24: Hoare triple {64533#(<= ~counter~0 1)} assume !!(0 != ~r~0); {64533#(<= ~counter~0 1)} is VALID [2022-04-08 06:07:57,509 INFO L290 TraceCheckUtils]: 25: Hoare triple {64533#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64558#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:57,509 INFO L290 TraceCheckUtils]: 26: Hoare triple {64558#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {64558#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:57,510 INFO L272 TraceCheckUtils]: 27: Hoare triple {64558#(<= ~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)); {64558#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:57,510 INFO L290 TraceCheckUtils]: 28: Hoare triple {64558#(<= ~counter~0 2)} ~cond := #in~cond; {64558#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:57,510 INFO L290 TraceCheckUtils]: 29: Hoare triple {64558#(<= ~counter~0 2)} assume !(0 == ~cond); {64558#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:57,511 INFO L290 TraceCheckUtils]: 30: Hoare triple {64558#(<= ~counter~0 2)} assume true; {64558#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:57,511 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {64558#(<= ~counter~0 2)} {64558#(<= ~counter~0 2)} #96#return; {64558#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:57,512 INFO L290 TraceCheckUtils]: 32: Hoare triple {64558#(<= ~counter~0 2)} assume !(~r~0 > 0); {64558#(<= ~counter~0 2)} is VALID [2022-04-08 06:07:57,512 INFO L290 TraceCheckUtils]: 33: Hoare triple {64558#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {64583#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:57,513 INFO L290 TraceCheckUtils]: 34: Hoare triple {64583#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {64583#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:57,513 INFO L272 TraceCheckUtils]: 35: Hoare triple {64583#(<= ~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)); {64583#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:57,513 INFO L290 TraceCheckUtils]: 36: Hoare triple {64583#(<= ~counter~0 3)} ~cond := #in~cond; {64583#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:57,514 INFO L290 TraceCheckUtils]: 37: Hoare triple {64583#(<= ~counter~0 3)} assume !(0 == ~cond); {64583#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:57,514 INFO L290 TraceCheckUtils]: 38: Hoare triple {64583#(<= ~counter~0 3)} assume true; {64583#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:57,514 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {64583#(<= ~counter~0 3)} {64583#(<= ~counter~0 3)} #98#return; {64583#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:57,515 INFO L290 TraceCheckUtils]: 40: Hoare triple {64583#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {64583#(<= ~counter~0 3)} is VALID [2022-04-08 06:07:57,516 INFO L290 TraceCheckUtils]: 41: Hoare triple {64583#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {64608#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:57,516 INFO L290 TraceCheckUtils]: 42: Hoare triple {64608#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {64608#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:57,516 INFO L272 TraceCheckUtils]: 43: Hoare triple {64608#(<= ~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)); {64608#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:57,517 INFO L290 TraceCheckUtils]: 44: Hoare triple {64608#(<= ~counter~0 4)} ~cond := #in~cond; {64608#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:57,517 INFO L290 TraceCheckUtils]: 45: Hoare triple {64608#(<= ~counter~0 4)} assume !(0 == ~cond); {64608#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:57,517 INFO L290 TraceCheckUtils]: 46: Hoare triple {64608#(<= ~counter~0 4)} assume true; {64608#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:57,518 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {64608#(<= ~counter~0 4)} {64608#(<= ~counter~0 4)} #98#return; {64608#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:57,518 INFO L290 TraceCheckUtils]: 48: Hoare triple {64608#(<= ~counter~0 4)} assume !(~r~0 < 0); {64608#(<= ~counter~0 4)} is VALID [2022-04-08 06:07:57,519 INFO L290 TraceCheckUtils]: 49: Hoare triple {64608#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {64633#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:57,519 INFO L290 TraceCheckUtils]: 50: Hoare triple {64633#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {64633#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:57,519 INFO L272 TraceCheckUtils]: 51: Hoare triple {64633#(<= ~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)); {64633#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:57,520 INFO L290 TraceCheckUtils]: 52: Hoare triple {64633#(<= ~counter~0 5)} ~cond := #in~cond; {64633#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:57,520 INFO L290 TraceCheckUtils]: 53: Hoare triple {64633#(<= ~counter~0 5)} assume !(0 == ~cond); {64633#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:57,520 INFO L290 TraceCheckUtils]: 54: Hoare triple {64633#(<= ~counter~0 5)} assume true; {64633#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:57,521 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {64633#(<= ~counter~0 5)} {64633#(<= ~counter~0 5)} #94#return; {64633#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:57,521 INFO L290 TraceCheckUtils]: 56: Hoare triple {64633#(<= ~counter~0 5)} assume !!(0 != ~r~0); {64633#(<= ~counter~0 5)} is VALID [2022-04-08 06:07:57,522 INFO L290 TraceCheckUtils]: 57: Hoare triple {64633#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64658#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:57,522 INFO L290 TraceCheckUtils]: 58: Hoare triple {64658#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {64658#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:57,522 INFO L272 TraceCheckUtils]: 59: Hoare triple {64658#(<= ~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)); {64658#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:57,523 INFO L290 TraceCheckUtils]: 60: Hoare triple {64658#(<= ~counter~0 6)} ~cond := #in~cond; {64658#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:57,523 INFO L290 TraceCheckUtils]: 61: Hoare triple {64658#(<= ~counter~0 6)} assume !(0 == ~cond); {64658#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:57,523 INFO L290 TraceCheckUtils]: 62: Hoare triple {64658#(<= ~counter~0 6)} assume true; {64658#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:57,524 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {64658#(<= ~counter~0 6)} {64658#(<= ~counter~0 6)} #96#return; {64658#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:57,524 INFO L290 TraceCheckUtils]: 64: Hoare triple {64658#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {64658#(<= ~counter~0 6)} is VALID [2022-04-08 06:07:57,525 INFO L290 TraceCheckUtils]: 65: Hoare triple {64658#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64683#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:57,525 INFO L290 TraceCheckUtils]: 66: Hoare triple {64683#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {64683#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:57,525 INFO L272 TraceCheckUtils]: 67: Hoare triple {64683#(<= ~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)); {64683#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:57,526 INFO L290 TraceCheckUtils]: 68: Hoare triple {64683#(<= ~counter~0 7)} ~cond := #in~cond; {64683#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:57,526 INFO L290 TraceCheckUtils]: 69: Hoare triple {64683#(<= ~counter~0 7)} assume !(0 == ~cond); {64683#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:57,526 INFO L290 TraceCheckUtils]: 70: Hoare triple {64683#(<= ~counter~0 7)} assume true; {64683#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:57,527 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {64683#(<= ~counter~0 7)} {64683#(<= ~counter~0 7)} #96#return; {64683#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:57,527 INFO L290 TraceCheckUtils]: 72: Hoare triple {64683#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {64683#(<= ~counter~0 7)} is VALID [2022-04-08 06:07:57,528 INFO L290 TraceCheckUtils]: 73: Hoare triple {64683#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:57,528 INFO L290 TraceCheckUtils]: 74: Hoare triple {64708#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:57,528 INFO L272 TraceCheckUtils]: 75: Hoare triple {64708#(<= ~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)); {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:57,529 INFO L290 TraceCheckUtils]: 76: Hoare triple {64708#(<= ~counter~0 8)} ~cond := #in~cond; {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:57,529 INFO L290 TraceCheckUtils]: 77: Hoare triple {64708#(<= ~counter~0 8)} assume !(0 == ~cond); {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:57,529 INFO L290 TraceCheckUtils]: 78: Hoare triple {64708#(<= ~counter~0 8)} assume true; {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:57,530 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {64708#(<= ~counter~0 8)} {64708#(<= ~counter~0 8)} #96#return; {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:57,530 INFO L290 TraceCheckUtils]: 80: Hoare triple {64708#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:57,530 INFO L290 TraceCheckUtils]: 81: Hoare triple {64708#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64733#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:57,531 INFO L290 TraceCheckUtils]: 82: Hoare triple {64733#(<= ~counter~0 9)} assume !!(#t~post7 < 20);havoc #t~post7; {64733#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:57,531 INFO L272 TraceCheckUtils]: 83: Hoare triple {64733#(<= ~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)); {64733#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:57,531 INFO L290 TraceCheckUtils]: 84: Hoare triple {64733#(<= ~counter~0 9)} ~cond := #in~cond; {64733#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:57,532 INFO L290 TraceCheckUtils]: 85: Hoare triple {64733#(<= ~counter~0 9)} assume !(0 == ~cond); {64733#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:57,532 INFO L290 TraceCheckUtils]: 86: Hoare triple {64733#(<= ~counter~0 9)} assume true; {64733#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:57,532 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {64733#(<= ~counter~0 9)} {64733#(<= ~counter~0 9)} #96#return; {64733#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:57,533 INFO L290 TraceCheckUtils]: 88: Hoare triple {64733#(<= ~counter~0 9)} assume !(~r~0 > 0); {64733#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:57,533 INFO L290 TraceCheckUtils]: 89: Hoare triple {64733#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {64758#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:57,534 INFO L290 TraceCheckUtils]: 90: Hoare triple {64758#(<= ~counter~0 10)} assume !!(#t~post8 < 20);havoc #t~post8; {64758#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:57,534 INFO L272 TraceCheckUtils]: 91: Hoare triple {64758#(<= ~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)); {64758#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:57,534 INFO L290 TraceCheckUtils]: 92: Hoare triple {64758#(<= ~counter~0 10)} ~cond := #in~cond; {64758#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:57,535 INFO L290 TraceCheckUtils]: 93: Hoare triple {64758#(<= ~counter~0 10)} assume !(0 == ~cond); {64758#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:57,535 INFO L290 TraceCheckUtils]: 94: Hoare triple {64758#(<= ~counter~0 10)} assume true; {64758#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:57,535 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {64758#(<= ~counter~0 10)} {64758#(<= ~counter~0 10)} #98#return; {64758#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:57,536 INFO L290 TraceCheckUtils]: 96: Hoare triple {64758#(<= ~counter~0 10)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {64758#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:57,536 INFO L290 TraceCheckUtils]: 97: Hoare triple {64758#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {64783#(<= ~counter~0 11)} is VALID [2022-04-08 06:07:57,537 INFO L290 TraceCheckUtils]: 98: Hoare triple {64783#(<= ~counter~0 11)} assume !!(#t~post8 < 20);havoc #t~post8; {64783#(<= ~counter~0 11)} is VALID [2022-04-08 06:07:57,537 INFO L272 TraceCheckUtils]: 99: Hoare triple {64783#(<= ~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)); {64783#(<= ~counter~0 11)} is VALID [2022-04-08 06:07:57,537 INFO L290 TraceCheckUtils]: 100: Hoare triple {64783#(<= ~counter~0 11)} ~cond := #in~cond; {64783#(<= ~counter~0 11)} is VALID [2022-04-08 06:07:57,538 INFO L290 TraceCheckUtils]: 101: Hoare triple {64783#(<= ~counter~0 11)} assume !(0 == ~cond); {64783#(<= ~counter~0 11)} is VALID [2022-04-08 06:07:57,538 INFO L290 TraceCheckUtils]: 102: Hoare triple {64783#(<= ~counter~0 11)} assume true; {64783#(<= ~counter~0 11)} is VALID [2022-04-08 06:07:57,538 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {64783#(<= ~counter~0 11)} {64783#(<= ~counter~0 11)} #98#return; {64783#(<= ~counter~0 11)} is VALID [2022-04-08 06:07:57,539 INFO L290 TraceCheckUtils]: 104: Hoare triple {64783#(<= ~counter~0 11)} assume !(~r~0 < 0); {64783#(<= ~counter~0 11)} is VALID [2022-04-08 06:07:57,539 INFO L290 TraceCheckUtils]: 105: Hoare triple {64783#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {64808#(<= |main_#t~post6| 11)} is VALID [2022-04-08 06:07:57,539 INFO L290 TraceCheckUtils]: 106: Hoare triple {64808#(<= |main_#t~post6| 11)} assume !(#t~post6 < 20);havoc #t~post6; {64477#false} is VALID [2022-04-08 06:07:57,539 INFO L272 TraceCheckUtils]: 107: Hoare triple {64477#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)); {64477#false} is VALID [2022-04-08 06:07:57,539 INFO L290 TraceCheckUtils]: 108: Hoare triple {64477#false} ~cond := #in~cond; {64477#false} is VALID [2022-04-08 06:07:57,540 INFO L290 TraceCheckUtils]: 109: Hoare triple {64477#false} assume 0 == ~cond; {64477#false} is VALID [2022-04-08 06:07:57,540 INFO L290 TraceCheckUtils]: 110: Hoare triple {64477#false} assume !false; {64477#false} is VALID [2022-04-08 06:07:57,540 INFO L134 CoverageAnalysis]: Checked inductivity of 318 backedges. 22 proven. 292 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:07:57,540 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:07:58,121 INFO L290 TraceCheckUtils]: 110: Hoare triple {64477#false} assume !false; {64477#false} is VALID [2022-04-08 06:07:58,121 INFO L290 TraceCheckUtils]: 109: Hoare triple {64477#false} assume 0 == ~cond; {64477#false} is VALID [2022-04-08 06:07:58,121 INFO L290 TraceCheckUtils]: 108: Hoare triple {64477#false} ~cond := #in~cond; {64477#false} is VALID [2022-04-08 06:07:58,121 INFO L272 TraceCheckUtils]: 107: Hoare triple {64477#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)); {64477#false} is VALID [2022-04-08 06:07:58,121 INFO L290 TraceCheckUtils]: 106: Hoare triple {64836#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {64477#false} is VALID [2022-04-08 06:07:58,122 INFO L290 TraceCheckUtils]: 105: Hoare triple {64840#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {64836#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:07:58,122 INFO L290 TraceCheckUtils]: 104: Hoare triple {64840#(< ~counter~0 20)} assume !(~r~0 < 0); {64840#(< ~counter~0 20)} is VALID [2022-04-08 06:07:58,125 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {64476#true} {64840#(< ~counter~0 20)} #98#return; {64840#(< ~counter~0 20)} is VALID [2022-04-08 06:07:58,125 INFO L290 TraceCheckUtils]: 102: Hoare triple {64476#true} assume true; {64476#true} is VALID [2022-04-08 06:07:58,125 INFO L290 TraceCheckUtils]: 101: Hoare triple {64476#true} assume !(0 == ~cond); {64476#true} is VALID [2022-04-08 06:07:58,125 INFO L290 TraceCheckUtils]: 100: Hoare triple {64476#true} ~cond := #in~cond; {64476#true} is VALID [2022-04-08 06:07:58,125 INFO L272 TraceCheckUtils]: 99: Hoare triple {64840#(< ~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)); {64476#true} is VALID [2022-04-08 06:07:58,125 INFO L290 TraceCheckUtils]: 98: Hoare triple {64840#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {64840#(< ~counter~0 20)} is VALID [2022-04-08 06:07:58,127 INFO L290 TraceCheckUtils]: 97: Hoare triple {64865#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {64840#(< ~counter~0 20)} is VALID [2022-04-08 06:07:58,127 INFO L290 TraceCheckUtils]: 96: Hoare triple {64865#(< ~counter~0 19)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {64865#(< ~counter~0 19)} is VALID [2022-04-08 06:07:58,127 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {64476#true} {64865#(< ~counter~0 19)} #98#return; {64865#(< ~counter~0 19)} is VALID [2022-04-08 06:07:58,127 INFO L290 TraceCheckUtils]: 94: Hoare triple {64476#true} assume true; {64476#true} is VALID [2022-04-08 06:07:58,128 INFO L290 TraceCheckUtils]: 93: Hoare triple {64476#true} assume !(0 == ~cond); {64476#true} is VALID [2022-04-08 06:07:58,128 INFO L290 TraceCheckUtils]: 92: Hoare triple {64476#true} ~cond := #in~cond; {64476#true} is VALID [2022-04-08 06:07:58,128 INFO L272 TraceCheckUtils]: 91: Hoare triple {64865#(< ~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)); {64476#true} is VALID [2022-04-08 06:07:58,128 INFO L290 TraceCheckUtils]: 90: Hoare triple {64865#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {64865#(< ~counter~0 19)} is VALID [2022-04-08 06:07:58,129 INFO L290 TraceCheckUtils]: 89: Hoare triple {64890#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {64865#(< ~counter~0 19)} is VALID [2022-04-08 06:07:58,129 INFO L290 TraceCheckUtils]: 88: Hoare triple {64890#(< ~counter~0 18)} assume !(~r~0 > 0); {64890#(< ~counter~0 18)} is VALID [2022-04-08 06:07:58,129 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {64476#true} {64890#(< ~counter~0 18)} #96#return; {64890#(< ~counter~0 18)} is VALID [2022-04-08 06:07:58,129 INFO L290 TraceCheckUtils]: 86: Hoare triple {64476#true} assume true; {64476#true} is VALID [2022-04-08 06:07:58,130 INFO L290 TraceCheckUtils]: 85: Hoare triple {64476#true} assume !(0 == ~cond); {64476#true} is VALID [2022-04-08 06:07:58,130 INFO L290 TraceCheckUtils]: 84: Hoare triple {64476#true} ~cond := #in~cond; {64476#true} is VALID [2022-04-08 06:07:58,130 INFO L272 TraceCheckUtils]: 83: Hoare triple {64890#(< ~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)); {64476#true} is VALID [2022-04-08 06:07:58,130 INFO L290 TraceCheckUtils]: 82: Hoare triple {64890#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {64890#(< ~counter~0 18)} is VALID [2022-04-08 06:07:58,131 INFO L290 TraceCheckUtils]: 81: Hoare triple {64915#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64890#(< ~counter~0 18)} is VALID [2022-04-08 06:07:58,131 INFO L290 TraceCheckUtils]: 80: Hoare triple {64915#(< ~counter~0 17)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {64915#(< ~counter~0 17)} is VALID [2022-04-08 06:07:58,131 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {64476#true} {64915#(< ~counter~0 17)} #96#return; {64915#(< ~counter~0 17)} is VALID [2022-04-08 06:07:58,131 INFO L290 TraceCheckUtils]: 78: Hoare triple {64476#true} assume true; {64476#true} is VALID [2022-04-08 06:07:58,132 INFO L290 TraceCheckUtils]: 77: Hoare triple {64476#true} assume !(0 == ~cond); {64476#true} is VALID [2022-04-08 06:07:58,132 INFO L290 TraceCheckUtils]: 76: Hoare triple {64476#true} ~cond := #in~cond; {64476#true} is VALID [2022-04-08 06:07:58,132 INFO L272 TraceCheckUtils]: 75: Hoare triple {64915#(< ~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)); {64476#true} is VALID [2022-04-08 06:07:58,132 INFO L290 TraceCheckUtils]: 74: Hoare triple {64915#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {64915#(< ~counter~0 17)} is VALID [2022-04-08 06:07:58,133 INFO L290 TraceCheckUtils]: 73: Hoare triple {64940#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64915#(< ~counter~0 17)} is VALID [2022-04-08 06:07:58,133 INFO L290 TraceCheckUtils]: 72: Hoare triple {64940#(< ~counter~0 16)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {64940#(< ~counter~0 16)} is VALID [2022-04-08 06:07:58,133 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {64476#true} {64940#(< ~counter~0 16)} #96#return; {64940#(< ~counter~0 16)} is VALID [2022-04-08 06:07:58,133 INFO L290 TraceCheckUtils]: 70: Hoare triple {64476#true} assume true; {64476#true} is VALID [2022-04-08 06:07:58,134 INFO L290 TraceCheckUtils]: 69: Hoare triple {64476#true} assume !(0 == ~cond); {64476#true} is VALID [2022-04-08 06:07:58,134 INFO L290 TraceCheckUtils]: 68: Hoare triple {64476#true} ~cond := #in~cond; {64476#true} is VALID [2022-04-08 06:07:58,134 INFO L272 TraceCheckUtils]: 67: Hoare triple {64940#(< ~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)); {64476#true} is VALID [2022-04-08 06:07:58,134 INFO L290 TraceCheckUtils]: 66: Hoare triple {64940#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {64940#(< ~counter~0 16)} is VALID [2022-04-08 06:07:58,135 INFO L290 TraceCheckUtils]: 65: Hoare triple {64965#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64940#(< ~counter~0 16)} is VALID [2022-04-08 06:07:58,135 INFO L290 TraceCheckUtils]: 64: Hoare triple {64965#(< ~counter~0 15)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {64965#(< ~counter~0 15)} is VALID [2022-04-08 06:07:58,135 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {64476#true} {64965#(< ~counter~0 15)} #96#return; {64965#(< ~counter~0 15)} is VALID [2022-04-08 06:07:58,135 INFO L290 TraceCheckUtils]: 62: Hoare triple {64476#true} assume true; {64476#true} is VALID [2022-04-08 06:07:58,136 INFO L290 TraceCheckUtils]: 61: Hoare triple {64476#true} assume !(0 == ~cond); {64476#true} is VALID [2022-04-08 06:07:58,136 INFO L290 TraceCheckUtils]: 60: Hoare triple {64476#true} ~cond := #in~cond; {64476#true} is VALID [2022-04-08 06:07:58,136 INFO L272 TraceCheckUtils]: 59: Hoare triple {64965#(< ~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)); {64476#true} is VALID [2022-04-08 06:07:58,136 INFO L290 TraceCheckUtils]: 58: Hoare triple {64965#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {64965#(< ~counter~0 15)} is VALID [2022-04-08 06:07:58,137 INFO L290 TraceCheckUtils]: 57: Hoare triple {64990#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64965#(< ~counter~0 15)} is VALID [2022-04-08 06:07:58,137 INFO L290 TraceCheckUtils]: 56: Hoare triple {64990#(< ~counter~0 14)} assume !!(0 != ~r~0); {64990#(< ~counter~0 14)} is VALID [2022-04-08 06:07:58,137 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {64476#true} {64990#(< ~counter~0 14)} #94#return; {64990#(< ~counter~0 14)} is VALID [2022-04-08 06:07:58,137 INFO L290 TraceCheckUtils]: 54: Hoare triple {64476#true} assume true; {64476#true} is VALID [2022-04-08 06:07:58,137 INFO L290 TraceCheckUtils]: 53: Hoare triple {64476#true} assume !(0 == ~cond); {64476#true} is VALID [2022-04-08 06:07:58,138 INFO L290 TraceCheckUtils]: 52: Hoare triple {64476#true} ~cond := #in~cond; {64476#true} is VALID [2022-04-08 06:07:58,138 INFO L272 TraceCheckUtils]: 51: Hoare triple {64990#(< ~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)); {64476#true} is VALID [2022-04-08 06:07:58,138 INFO L290 TraceCheckUtils]: 50: Hoare triple {64990#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {64990#(< ~counter~0 14)} is VALID [2022-04-08 06:07:58,139 INFO L290 TraceCheckUtils]: 49: Hoare triple {65015#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {64990#(< ~counter~0 14)} is VALID [2022-04-08 06:07:58,139 INFO L290 TraceCheckUtils]: 48: Hoare triple {65015#(< ~counter~0 13)} assume !(~r~0 < 0); {65015#(< ~counter~0 13)} is VALID [2022-04-08 06:07:58,139 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {64476#true} {65015#(< ~counter~0 13)} #98#return; {65015#(< ~counter~0 13)} is VALID [2022-04-08 06:07:58,139 INFO L290 TraceCheckUtils]: 46: Hoare triple {64476#true} assume true; {64476#true} is VALID [2022-04-08 06:07:58,139 INFO L290 TraceCheckUtils]: 45: Hoare triple {64476#true} assume !(0 == ~cond); {64476#true} is VALID [2022-04-08 06:07:58,140 INFO L290 TraceCheckUtils]: 44: Hoare triple {64476#true} ~cond := #in~cond; {64476#true} is VALID [2022-04-08 06:07:58,140 INFO L272 TraceCheckUtils]: 43: Hoare triple {65015#(< ~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)); {64476#true} is VALID [2022-04-08 06:07:58,140 INFO L290 TraceCheckUtils]: 42: Hoare triple {65015#(< ~counter~0 13)} assume !!(#t~post8 < 20);havoc #t~post8; {65015#(< ~counter~0 13)} is VALID [2022-04-08 06:07:58,140 INFO L290 TraceCheckUtils]: 41: Hoare triple {64783#(<= ~counter~0 11)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65015#(< ~counter~0 13)} is VALID [2022-04-08 06:07:58,141 INFO L290 TraceCheckUtils]: 40: Hoare triple {64783#(<= ~counter~0 11)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {64783#(<= ~counter~0 11)} is VALID [2022-04-08 06:07:58,141 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {64476#true} {64783#(<= ~counter~0 11)} #98#return; {64783#(<= ~counter~0 11)} is VALID [2022-04-08 06:07:58,141 INFO L290 TraceCheckUtils]: 38: Hoare triple {64476#true} assume true; {64476#true} is VALID [2022-04-08 06:07:58,141 INFO L290 TraceCheckUtils]: 37: Hoare triple {64476#true} assume !(0 == ~cond); {64476#true} is VALID [2022-04-08 06:07:58,141 INFO L290 TraceCheckUtils]: 36: Hoare triple {64476#true} ~cond := #in~cond; {64476#true} is VALID [2022-04-08 06:07:58,142 INFO L272 TraceCheckUtils]: 35: Hoare triple {64783#(<= ~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)); {64476#true} is VALID [2022-04-08 06:07:58,142 INFO L290 TraceCheckUtils]: 34: Hoare triple {64783#(<= ~counter~0 11)} assume !!(#t~post8 < 20);havoc #t~post8; {64783#(<= ~counter~0 11)} is VALID [2022-04-08 06:07:58,142 INFO L290 TraceCheckUtils]: 33: Hoare triple {64758#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {64783#(<= ~counter~0 11)} is VALID [2022-04-08 06:07:58,143 INFO L290 TraceCheckUtils]: 32: Hoare triple {64758#(<= ~counter~0 10)} assume !(~r~0 > 0); {64758#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:58,143 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {64476#true} {64758#(<= ~counter~0 10)} #96#return; {64758#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:58,143 INFO L290 TraceCheckUtils]: 30: Hoare triple {64476#true} assume true; {64476#true} is VALID [2022-04-08 06:07:58,143 INFO L290 TraceCheckUtils]: 29: Hoare triple {64476#true} assume !(0 == ~cond); {64476#true} is VALID [2022-04-08 06:07:58,143 INFO L290 TraceCheckUtils]: 28: Hoare triple {64476#true} ~cond := #in~cond; {64476#true} is VALID [2022-04-08 06:07:58,143 INFO L272 TraceCheckUtils]: 27: Hoare triple {64758#(<= ~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)); {64476#true} is VALID [2022-04-08 06:07:58,144 INFO L290 TraceCheckUtils]: 26: Hoare triple {64758#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {64758#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:58,144 INFO L290 TraceCheckUtils]: 25: Hoare triple {64733#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64758#(<= ~counter~0 10)} is VALID [2022-04-08 06:07:58,145 INFO L290 TraceCheckUtils]: 24: Hoare triple {64733#(<= ~counter~0 9)} assume !!(0 != ~r~0); {64733#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:58,145 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {64476#true} {64733#(<= ~counter~0 9)} #94#return; {64733#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:58,145 INFO L290 TraceCheckUtils]: 22: Hoare triple {64476#true} assume true; {64476#true} is VALID [2022-04-08 06:07:58,145 INFO L290 TraceCheckUtils]: 21: Hoare triple {64476#true} assume !(0 == ~cond); {64476#true} is VALID [2022-04-08 06:07:58,145 INFO L290 TraceCheckUtils]: 20: Hoare triple {64476#true} ~cond := #in~cond; {64476#true} is VALID [2022-04-08 06:07:58,145 INFO L272 TraceCheckUtils]: 19: Hoare triple {64733#(<= ~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)); {64476#true} is VALID [2022-04-08 06:07:58,146 INFO L290 TraceCheckUtils]: 18: Hoare triple {64733#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {64733#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:58,146 INFO L290 TraceCheckUtils]: 17: Hoare triple {64708#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {64733#(<= ~counter~0 9)} is VALID [2022-04-08 06:07:58,147 INFO L290 TraceCheckUtils]: 16: Hoare triple {64708#(<= ~counter~0 8)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:58,147 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {64476#true} {64708#(<= ~counter~0 8)} #92#return; {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:58,147 INFO L290 TraceCheckUtils]: 14: Hoare triple {64476#true} assume true; {64476#true} is VALID [2022-04-08 06:07:58,147 INFO L290 TraceCheckUtils]: 13: Hoare triple {64476#true} assume !(0 == ~cond); {64476#true} is VALID [2022-04-08 06:07:58,147 INFO L290 TraceCheckUtils]: 12: Hoare triple {64476#true} ~cond := #in~cond; {64476#true} is VALID [2022-04-08 06:07:58,147 INFO L272 TraceCheckUtils]: 11: Hoare triple {64708#(<= ~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)); {64476#true} is VALID [2022-04-08 06:07:58,148 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {64476#true} {64708#(<= ~counter~0 8)} #90#return; {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:58,148 INFO L290 TraceCheckUtils]: 9: Hoare triple {64476#true} assume true; {64476#true} is VALID [2022-04-08 06:07:58,148 INFO L290 TraceCheckUtils]: 8: Hoare triple {64476#true} assume !(0 == ~cond); {64476#true} is VALID [2022-04-08 06:07:58,148 INFO L290 TraceCheckUtils]: 7: Hoare triple {64476#true} ~cond := #in~cond; {64476#true} is VALID [2022-04-08 06:07:58,148 INFO L272 TraceCheckUtils]: 6: Hoare triple {64708#(<= ~counter~0 8)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {64476#true} is VALID [2022-04-08 06:07:58,148 INFO L290 TraceCheckUtils]: 5: Hoare triple {64708#(<= ~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; {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:58,148 INFO L272 TraceCheckUtils]: 4: Hoare triple {64708#(<= ~counter~0 8)} call #t~ret9 := main(); {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:58,149 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {64708#(<= ~counter~0 8)} {64476#true} #102#return; {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:58,149 INFO L290 TraceCheckUtils]: 2: Hoare triple {64708#(<= ~counter~0 8)} assume true; {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:58,149 INFO L290 TraceCheckUtils]: 1: Hoare triple {64476#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {64708#(<= ~counter~0 8)} is VALID [2022-04-08 06:07:58,150 INFO L272 TraceCheckUtils]: 0: Hoare triple {64476#true} call ULTIMATE.init(); {64476#true} is VALID [2022-04-08 06:07:58,150 INFO L134 CoverageAnalysis]: Checked inductivity of 318 backedges. 22 proven. 72 refuted. 0 times theorem prover too weak. 224 trivial. 0 not checked. [2022-04-08 06:07:58,150 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:07:58,150 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1984401837] [2022-04-08 06:07:58,150 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:07:58,150 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1032482307] [2022-04-08 06:07:58,150 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1032482307] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:07:58,150 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:07:58,150 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 24 [2022-04-08 06:07:58,151 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:07:58,151 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1089992998] [2022-04-08 06:07:58,151 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1089992998] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:07:58,151 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:07:58,151 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-08 06:07:58,151 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1296446855] [2022-04-08 06:07:58,151 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:07:58,151 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 5.2) internal successors, (78), 14 states have internal predecessors, (78), 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 111 [2022-04-08 06:07:58,151 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:07:58,151 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 5.2) internal successors, (78), 14 states have internal predecessors, (78), 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:07:58,228 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:07:58,228 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-08 06:07:58,228 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:07:58,228 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-08 06:07:58,229 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:07:58,229 INFO L87 Difference]: Start difference. First operand 566 states and 754 transitions. Second operand has 15 states, 15 states have (on average 5.2) internal successors, (78), 14 states have internal predecessors, (78), 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:00,287 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:00,287 INFO L93 Difference]: Finished difference Result 625 states and 834 transitions. [2022-04-08 06:08:00,288 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-08 06:08:00,288 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 5.2) internal successors, (78), 14 states have internal predecessors, (78), 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 111 [2022-04-08 06:08:00,288 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:08:00,288 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 5.2) internal successors, (78), 14 states have internal predecessors, (78), 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:00,289 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 234 transitions. [2022-04-08 06:08:00,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 5.2) internal successors, (78), 14 states have internal predecessors, (78), 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:00,291 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 234 transitions. [2022-04-08 06:08:00,291 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 234 transitions. [2022-04-08 06:08:00,470 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 234 edges. 234 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:00,489 INFO L225 Difference]: With dead ends: 625 [2022-04-08 06:08:00,490 INFO L226 Difference]: Without dead ends: 614 [2022-04-08 06:08:00,490 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 229 GetRequests, 198 SyntacticMatches, 1 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 66 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=399, Invalid=593, Unknown=0, NotChecked=0, Total=992 [2022-04-08 06:08:00,490 INFO L913 BasicCegarLoop]: 63 mSDtfsCounter, 142 mSDsluCounter, 209 mSDsCounter, 0 mSdLazyCounter, 155 mSolverCounterSat, 112 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 142 SdHoareTripleChecker+Valid, 272 SdHoareTripleChecker+Invalid, 267 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 112 IncrementalHoareTripleChecker+Valid, 155 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-08 06:08:00,490 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [142 Valid, 272 Invalid, 267 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [112 Valid, 155 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-08 06:08:00,491 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 614 states. [2022-04-08 06:08:01,607 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 614 to 592. [2022-04-08 06:08:01,607 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:08:01,611 INFO L82 GeneralOperation]: Start isEquivalent. First operand 614 states. Second operand has 592 states, 442 states have (on average 1.2217194570135748) internal successors, (540), 452 states have internal predecessors, (540), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 115 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:08:01,611 INFO L74 IsIncluded]: Start isIncluded. First operand 614 states. Second operand has 592 states, 442 states have (on average 1.2217194570135748) internal successors, (540), 452 states have internal predecessors, (540), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 115 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:08:01,612 INFO L87 Difference]: Start difference. First operand 614 states. Second operand has 592 states, 442 states have (on average 1.2217194570135748) internal successors, (540), 452 states have internal predecessors, (540), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 115 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:08:01,626 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:01,626 INFO L93 Difference]: Finished difference Result 614 states and 818 transitions. [2022-04-08 06:08:01,626 INFO L276 IsEmpty]: Start isEmpty. Operand 614 states and 818 transitions. [2022-04-08 06:08:01,627 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:01,627 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:01,627 INFO L74 IsIncluded]: Start isIncluded. First operand has 592 states, 442 states have (on average 1.2217194570135748) internal successors, (540), 452 states have internal predecessors, (540), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 115 states have call predecessors, (125), 125 states have call successors, (125) Second operand 614 states. [2022-04-08 06:08:01,628 INFO L87 Difference]: Start difference. First operand has 592 states, 442 states have (on average 1.2217194570135748) internal successors, (540), 452 states have internal predecessors, (540), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 115 states have call predecessors, (125), 125 states have call successors, (125) Second operand 614 states. [2022-04-08 06:08:01,642 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:01,642 INFO L93 Difference]: Finished difference Result 614 states and 818 transitions. [2022-04-08 06:08:01,642 INFO L276 IsEmpty]: Start isEmpty. Operand 614 states and 818 transitions. [2022-04-08 06:08:01,643 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:01,643 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:01,643 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:08:01,643 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:08:01,644 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 592 states, 442 states have (on average 1.2217194570135748) internal successors, (540), 452 states have internal predecessors, (540), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 115 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:08:01,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 592 states to 592 states and 792 transitions. [2022-04-08 06:08:01,662 INFO L78 Accepts]: Start accepts. Automaton has 592 states and 792 transitions. Word has length 111 [2022-04-08 06:08:01,662 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:08:01,662 INFO L478 AbstractCegarLoop]: Abstraction has 592 states and 792 transitions. [2022-04-08 06:08:01,662 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 5.2) internal successors, (78), 14 states have internal predecessors, (78), 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:01,662 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 592 states and 792 transitions. [2022-04-08 06:08:19,352 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 792 edges. 788 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:19,352 INFO L276 IsEmpty]: Start isEmpty. Operand 592 states and 792 transitions. [2022-04-08 06:08:19,353 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-08 06:08:19,353 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:08:19,353 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 5, 5, 5, 5, 5, 4, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:08:19,357 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Forceful destruction successful, exit code 0 [2022-04-08 06:08:19,557 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 36 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable34 [2022-04-08 06:08:19,557 INFO L403 AbstractCegarLoop]: === Iteration 36 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:08:19,558 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:08:19,558 INFO L85 PathProgramCache]: Analyzing trace with hash -1038942829, now seen corresponding path program 13 times [2022-04-08 06:08:19,558 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:19,558 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1535224058] [2022-04-08 06:08:19,558 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:08:19,558 INFO L85 PathProgramCache]: Analyzing trace with hash -1038942829, now seen corresponding path program 14 times [2022-04-08 06:08:19,558 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:08:19,558 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [264817515] [2022-04-08 06:08:19,558 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:08:19,559 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:08:19,569 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:08:19,569 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1037473810] [2022-04-08 06:08:19,570 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:08:19,570 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:08:19,570 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:08:19,571 INFO L229 MonitoredProcess]: Starting monitored process 37 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:08:19,571 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Waiting until timeout for monitored process [2022-04-08 06:08:19,626 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:08:19,627 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:08:19,628 INFO L263 TraceCheckSpWp]: Trace formula consists of 287 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 06:08:19,643 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:08:19,644 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:08:20,537 INFO L272 TraceCheckUtils]: 0: Hoare triple {68843#true} call ULTIMATE.init(); {68843#true} is VALID [2022-04-08 06:08:20,538 INFO L290 TraceCheckUtils]: 1: Hoare triple {68843#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {68843#true} is VALID [2022-04-08 06:08:20,538 INFO L290 TraceCheckUtils]: 2: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:20,538 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {68843#true} {68843#true} #102#return; {68843#true} is VALID [2022-04-08 06:08:20,538 INFO L272 TraceCheckUtils]: 4: Hoare triple {68843#true} call #t~ret9 := main(); {68843#true} is VALID [2022-04-08 06:08:20,538 INFO L290 TraceCheckUtils]: 5: Hoare triple {68843#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; {68843#true} is VALID [2022-04-08 06:08:20,539 INFO L272 TraceCheckUtils]: 6: Hoare triple {68843#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:20,539 INFO L290 TraceCheckUtils]: 7: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:20,539 INFO L290 TraceCheckUtils]: 8: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:20,539 INFO L290 TraceCheckUtils]: 9: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:20,539 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {68843#true} {68843#true} #90#return; {68843#true} is VALID [2022-04-08 06:08:20,539 INFO L272 TraceCheckUtils]: 11: Hoare triple {68843#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)); {68843#true} is VALID [2022-04-08 06:08:20,539 INFO L290 TraceCheckUtils]: 12: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:20,539 INFO L290 TraceCheckUtils]: 13: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:20,539 INFO L290 TraceCheckUtils]: 14: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:20,539 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {68843#true} {68843#true} #92#return; {68843#true} is VALID [2022-04-08 06:08:20,540 INFO L290 TraceCheckUtils]: 16: Hoare triple {68843#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {68896#(<= 1 main_~v~0)} is VALID [2022-04-08 06:08:20,540 INFO L290 TraceCheckUtils]: 17: Hoare triple {68896#(<= 1 main_~v~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {68896#(<= 1 main_~v~0)} is VALID [2022-04-08 06:08:20,540 INFO L290 TraceCheckUtils]: 18: Hoare triple {68896#(<= 1 main_~v~0)} assume !!(#t~post6 < 20);havoc #t~post6; {68896#(<= 1 main_~v~0)} is VALID [2022-04-08 06:08:20,540 INFO L272 TraceCheckUtils]: 19: Hoare triple {68896#(<= 1 main_~v~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:20,540 INFO L290 TraceCheckUtils]: 20: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:20,540 INFO L290 TraceCheckUtils]: 21: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:20,540 INFO L290 TraceCheckUtils]: 22: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:20,541 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {68843#true} {68896#(<= 1 main_~v~0)} #94#return; {68896#(<= 1 main_~v~0)} is VALID [2022-04-08 06:08:20,541 INFO L290 TraceCheckUtils]: 24: Hoare triple {68896#(<= 1 main_~v~0)} assume !!(0 != ~r~0); {68896#(<= 1 main_~v~0)} is VALID [2022-04-08 06:08:20,541 INFO L290 TraceCheckUtils]: 25: Hoare triple {68896#(<= 1 main_~v~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {68896#(<= 1 main_~v~0)} is VALID [2022-04-08 06:08:20,541 INFO L290 TraceCheckUtils]: 26: Hoare triple {68896#(<= 1 main_~v~0)} assume !!(#t~post7 < 20);havoc #t~post7; {68896#(<= 1 main_~v~0)} is VALID [2022-04-08 06:08:20,542 INFO L272 TraceCheckUtils]: 27: Hoare triple {68896#(<= 1 main_~v~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:20,542 INFO L290 TraceCheckUtils]: 28: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:20,542 INFO L290 TraceCheckUtils]: 29: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:20,542 INFO L290 TraceCheckUtils]: 30: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:20,542 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {68843#true} {68896#(<= 1 main_~v~0)} #96#return; {68896#(<= 1 main_~v~0)} is VALID [2022-04-08 06:08:20,542 INFO L290 TraceCheckUtils]: 32: Hoare triple {68896#(<= 1 main_~v~0)} assume !(~r~0 > 0); {68896#(<= 1 main_~v~0)} is VALID [2022-04-08 06:08:20,543 INFO L290 TraceCheckUtils]: 33: Hoare triple {68896#(<= 1 main_~v~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {68896#(<= 1 main_~v~0)} is VALID [2022-04-08 06:08:20,543 INFO L290 TraceCheckUtils]: 34: Hoare triple {68896#(<= 1 main_~v~0)} assume !!(#t~post8 < 20);havoc #t~post8; {68896#(<= 1 main_~v~0)} is VALID [2022-04-08 06:08:20,543 INFO L272 TraceCheckUtils]: 35: Hoare triple {68896#(<= 1 main_~v~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:20,543 INFO L290 TraceCheckUtils]: 36: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:20,543 INFO L290 TraceCheckUtils]: 37: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:20,543 INFO L290 TraceCheckUtils]: 38: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:20,544 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {68843#true} {68896#(<= 1 main_~v~0)} #98#return; {68896#(<= 1 main_~v~0)} is VALID [2022-04-08 06:08:20,545 INFO L290 TraceCheckUtils]: 40: Hoare triple {68896#(<= 1 main_~v~0)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-08 06:08:20,546 INFO L290 TraceCheckUtils]: 41: Hoare triple {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-08 06:08:20,546 INFO L290 TraceCheckUtils]: 42: Hoare triple {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} assume !!(#t~post8 < 20);havoc #t~post8; {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-08 06:08:20,546 INFO L272 TraceCheckUtils]: 43: Hoare triple {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:20,546 INFO L290 TraceCheckUtils]: 44: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:20,546 INFO L290 TraceCheckUtils]: 45: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:20,546 INFO L290 TraceCheckUtils]: 46: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:20,547 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {68843#true} {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} #98#return; {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-08 06:08:20,547 INFO L290 TraceCheckUtils]: 48: Hoare triple {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} assume !(~r~0 < 0); {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-08 06:08:20,547 INFO L290 TraceCheckUtils]: 49: Hoare triple {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-08 06:08:20,548 INFO L290 TraceCheckUtils]: 50: Hoare triple {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} assume !!(#t~post6 < 20);havoc #t~post6; {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-08 06:08:20,548 INFO L272 TraceCheckUtils]: 51: Hoare triple {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:20,548 INFO L290 TraceCheckUtils]: 52: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:20,548 INFO L290 TraceCheckUtils]: 53: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:20,548 INFO L290 TraceCheckUtils]: 54: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:20,549 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {68843#true} {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} #94#return; {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-08 06:08:20,549 INFO L290 TraceCheckUtils]: 56: Hoare triple {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} assume !!(0 != ~r~0); {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-08 06:08:20,549 INFO L290 TraceCheckUtils]: 57: Hoare triple {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-08 06:08:20,550 INFO L290 TraceCheckUtils]: 58: Hoare triple {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} assume !!(#t~post7 < 20);havoc #t~post7; {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-08 06:08:20,550 INFO L272 TraceCheckUtils]: 59: Hoare triple {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:20,550 INFO L290 TraceCheckUtils]: 60: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:20,550 INFO L290 TraceCheckUtils]: 61: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:20,550 INFO L290 TraceCheckUtils]: 62: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:20,550 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {68843#true} {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} #96#return; {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-08 06:08:20,551 INFO L290 TraceCheckUtils]: 64: Hoare triple {68969#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {69042#(< (+ main_~r~0 3) main_~u~0)} is VALID [2022-04-08 06:08:20,551 INFO L290 TraceCheckUtils]: 65: Hoare triple {69042#(< (+ main_~r~0 3) main_~u~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69042#(< (+ main_~r~0 3) main_~u~0)} is VALID [2022-04-08 06:08:20,552 INFO L290 TraceCheckUtils]: 66: Hoare triple {69042#(< (+ main_~r~0 3) main_~u~0)} assume !!(#t~post7 < 20);havoc #t~post7; {69042#(< (+ main_~r~0 3) main_~u~0)} is VALID [2022-04-08 06:08:20,552 INFO L272 TraceCheckUtils]: 67: Hoare triple {69042#(< (+ main_~r~0 3) main_~u~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:20,552 INFO L290 TraceCheckUtils]: 68: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:20,552 INFO L290 TraceCheckUtils]: 69: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:20,552 INFO L290 TraceCheckUtils]: 70: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:20,552 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {68843#true} {69042#(< (+ main_~r~0 3) main_~u~0)} #96#return; {69042#(< (+ main_~r~0 3) main_~u~0)} is VALID [2022-04-08 06:08:20,553 INFO L290 TraceCheckUtils]: 72: Hoare triple {69042#(< (+ main_~r~0 3) main_~u~0)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {69067#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} is VALID [2022-04-08 06:08:20,553 INFO L290 TraceCheckUtils]: 73: Hoare triple {69067#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69067#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} is VALID [2022-04-08 06:08:20,553 INFO L290 TraceCheckUtils]: 74: Hoare triple {69067#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} assume !!(#t~post7 < 20);havoc #t~post7; {69067#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} is VALID [2022-04-08 06:08:20,554 INFO L272 TraceCheckUtils]: 75: Hoare triple {69067#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:20,554 INFO L290 TraceCheckUtils]: 76: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:20,554 INFO L290 TraceCheckUtils]: 77: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:20,554 INFO L290 TraceCheckUtils]: 78: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:20,554 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {68843#true} {69067#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} #96#return; {69067#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} is VALID [2022-04-08 06:08:20,555 INFO L290 TraceCheckUtils]: 80: Hoare triple {69067#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:08:20,555 INFO L290 TraceCheckUtils]: 81: Hoare triple {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:08:20,555 INFO L290 TraceCheckUtils]: 82: Hoare triple {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} assume !!(#t~post7 < 20);havoc #t~post7; {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:08:20,555 INFO L272 TraceCheckUtils]: 83: Hoare triple {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~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)); {68843#true} is VALID [2022-04-08 06:08:20,555 INFO L290 TraceCheckUtils]: 84: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:20,555 INFO L290 TraceCheckUtils]: 85: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:20,555 INFO L290 TraceCheckUtils]: 86: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:20,556 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {68843#true} {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} #96#return; {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:08:20,556 INFO L290 TraceCheckUtils]: 88: Hoare triple {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} assume !(~r~0 > 0); {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:08:20,556 INFO L290 TraceCheckUtils]: 89: Hoare triple {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:08:20,557 INFO L290 TraceCheckUtils]: 90: Hoare triple {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} assume !!(#t~post8 < 20);havoc #t~post8; {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:08:20,557 INFO L272 TraceCheckUtils]: 91: Hoare triple {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~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)); {68843#true} is VALID [2022-04-08 06:08:20,557 INFO L290 TraceCheckUtils]: 92: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:20,557 INFO L290 TraceCheckUtils]: 93: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:20,557 INFO L290 TraceCheckUtils]: 94: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:20,557 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {68843#true} {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} #98#return; {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-08 06:08:20,558 INFO L290 TraceCheckUtils]: 96: Hoare triple {69092#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {69141#(< 0 (div (+ (- 2) main_~r~0) 2))} is VALID [2022-04-08 06:08:20,559 INFO L290 TraceCheckUtils]: 97: Hoare triple {69141#(< 0 (div (+ (- 2) main_~r~0) 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {69141#(< 0 (div (+ (- 2) main_~r~0) 2))} is VALID [2022-04-08 06:08:20,559 INFO L290 TraceCheckUtils]: 98: Hoare triple {69141#(< 0 (div (+ (- 2) main_~r~0) 2))} assume !!(#t~post8 < 20);havoc #t~post8; {69141#(< 0 (div (+ (- 2) main_~r~0) 2))} is VALID [2022-04-08 06:08:20,559 INFO L272 TraceCheckUtils]: 99: Hoare triple {69141#(< 0 (div (+ (- 2) main_~r~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)); {68843#true} is VALID [2022-04-08 06:08:20,559 INFO L290 TraceCheckUtils]: 100: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:20,559 INFO L290 TraceCheckUtils]: 101: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:20,559 INFO L290 TraceCheckUtils]: 102: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:20,560 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {68843#true} {69141#(< 0 (div (+ (- 2) main_~r~0) 2))} #98#return; {69141#(< 0 (div (+ (- 2) main_~r~0) 2))} is VALID [2022-04-08 06:08:20,560 INFO L290 TraceCheckUtils]: 104: Hoare triple {69141#(< 0 (div (+ (- 2) main_~r~0) 2))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {68844#false} is VALID [2022-04-08 06:08:20,561 INFO L290 TraceCheckUtils]: 105: Hoare triple {68844#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {68844#false} is VALID [2022-04-08 06:08:20,561 INFO L290 TraceCheckUtils]: 106: Hoare triple {68844#false} assume !(#t~post8 < 20);havoc #t~post8; {68844#false} is VALID [2022-04-08 06:08:20,561 INFO L290 TraceCheckUtils]: 107: Hoare triple {68844#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {68844#false} is VALID [2022-04-08 06:08:20,561 INFO L290 TraceCheckUtils]: 108: Hoare triple {68844#false} assume !(#t~post6 < 20);havoc #t~post6; {68844#false} is VALID [2022-04-08 06:08:20,561 INFO L272 TraceCheckUtils]: 109: Hoare triple {68844#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)); {68844#false} is VALID [2022-04-08 06:08:20,561 INFO L290 TraceCheckUtils]: 110: Hoare triple {68844#false} ~cond := #in~cond; {68844#false} is VALID [2022-04-08 06:08:20,561 INFO L290 TraceCheckUtils]: 111: Hoare triple {68844#false} assume 0 == ~cond; {68844#false} is VALID [2022-04-08 06:08:20,561 INFO L290 TraceCheckUtils]: 112: Hoare triple {68844#false} assume !false; {68844#false} is VALID [2022-04-08 06:08:20,561 INFO L134 CoverageAnalysis]: Checked inductivity of 326 backedges. 46 proven. 56 refuted. 0 times theorem prover too weak. 224 trivial. 0 not checked. [2022-04-08 06:08:20,561 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:08:21,107 INFO L290 TraceCheckUtils]: 112: Hoare triple {68844#false} assume !false; {68844#false} is VALID [2022-04-08 06:08:21,108 INFO L290 TraceCheckUtils]: 111: Hoare triple {68844#false} assume 0 == ~cond; {68844#false} is VALID [2022-04-08 06:08:21,108 INFO L290 TraceCheckUtils]: 110: Hoare triple {68844#false} ~cond := #in~cond; {68844#false} is VALID [2022-04-08 06:08:21,108 INFO L272 TraceCheckUtils]: 109: Hoare triple {68844#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)); {68844#false} is VALID [2022-04-08 06:08:21,108 INFO L290 TraceCheckUtils]: 108: Hoare triple {68844#false} assume !(#t~post6 < 20);havoc #t~post6; {68844#false} is VALID [2022-04-08 06:08:21,108 INFO L290 TraceCheckUtils]: 107: Hoare triple {68844#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {68844#false} is VALID [2022-04-08 06:08:21,108 INFO L290 TraceCheckUtils]: 106: Hoare triple {68844#false} assume !(#t~post8 < 20);havoc #t~post8; {68844#false} is VALID [2022-04-08 06:08:21,108 INFO L290 TraceCheckUtils]: 105: Hoare triple {68844#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {68844#false} is VALID [2022-04-08 06:08:21,108 INFO L290 TraceCheckUtils]: 104: Hoare triple {69214#(not (< main_~r~0 0))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {68844#false} is VALID [2022-04-08 06:08:21,109 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {68843#true} {69214#(not (< main_~r~0 0))} #98#return; {69214#(not (< main_~r~0 0))} is VALID [2022-04-08 06:08:21,109 INFO L290 TraceCheckUtils]: 102: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:21,109 INFO L290 TraceCheckUtils]: 101: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:21,109 INFO L290 TraceCheckUtils]: 100: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:21,109 INFO L272 TraceCheckUtils]: 99: Hoare triple {69214#(not (< main_~r~0 0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:21,109 INFO L290 TraceCheckUtils]: 98: Hoare triple {69214#(not (< main_~r~0 0))} assume !!(#t~post8 < 20);havoc #t~post8; {69214#(not (< main_~r~0 0))} is VALID [2022-04-08 06:08:21,110 INFO L290 TraceCheckUtils]: 97: Hoare triple {69214#(not (< main_~r~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {69214#(not (< main_~r~0 0))} is VALID [2022-04-08 06:08:21,110 INFO L290 TraceCheckUtils]: 96: Hoare triple {69239#(<= 0 (+ main_~u~0 main_~r~0))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {69214#(not (< main_~r~0 0))} is VALID [2022-04-08 06:08:21,111 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {68843#true} {69239#(<= 0 (+ main_~u~0 main_~r~0))} #98#return; {69239#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:08:21,111 INFO L290 TraceCheckUtils]: 94: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:21,111 INFO L290 TraceCheckUtils]: 93: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:21,111 INFO L290 TraceCheckUtils]: 92: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:21,111 INFO L272 TraceCheckUtils]: 91: Hoare triple {69239#(<= 0 (+ main_~u~0 main_~r~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:21,111 INFO L290 TraceCheckUtils]: 90: Hoare triple {69239#(<= 0 (+ main_~u~0 main_~r~0))} assume !!(#t~post8 < 20);havoc #t~post8; {69239#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:08:21,111 INFO L290 TraceCheckUtils]: 89: Hoare triple {69239#(<= 0 (+ main_~u~0 main_~r~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {69239#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:08:21,112 INFO L290 TraceCheckUtils]: 88: Hoare triple {69239#(<= 0 (+ main_~u~0 main_~r~0))} assume !(~r~0 > 0); {69239#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:08:21,112 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {68843#true} {69239#(<= 0 (+ main_~u~0 main_~r~0))} #96#return; {69239#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:08:21,112 INFO L290 TraceCheckUtils]: 86: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:21,112 INFO L290 TraceCheckUtils]: 85: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:21,112 INFO L290 TraceCheckUtils]: 84: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:21,112 INFO L272 TraceCheckUtils]: 83: Hoare triple {69239#(<= 0 (+ main_~u~0 main_~r~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:21,113 INFO L290 TraceCheckUtils]: 82: Hoare triple {69239#(<= 0 (+ main_~u~0 main_~r~0))} assume !!(#t~post7 < 20);havoc #t~post7; {69239#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:08:21,113 INFO L290 TraceCheckUtils]: 81: Hoare triple {69239#(<= 0 (+ main_~u~0 main_~r~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69239#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:08:21,114 INFO L290 TraceCheckUtils]: 80: Hoare triple {69288#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {69239#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:08:21,114 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {68843#true} {69288#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} #96#return; {69288#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 06:08:21,114 INFO L290 TraceCheckUtils]: 78: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:21,114 INFO L290 TraceCheckUtils]: 77: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:21,114 INFO L290 TraceCheckUtils]: 76: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:21,114 INFO L272 TraceCheckUtils]: 75: Hoare triple {69288#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:21,115 INFO L290 TraceCheckUtils]: 74: Hoare triple {69288#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {69288#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 06:08:21,115 INFO L290 TraceCheckUtils]: 73: Hoare triple {69288#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69288#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 06:08:21,116 INFO L290 TraceCheckUtils]: 72: Hoare triple {69313#(<= main_~r~0 main_~u~0)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {69288#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 06:08:21,117 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {68843#true} {69313#(<= main_~r~0 main_~u~0)} #96#return; {69313#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:08:21,117 INFO L290 TraceCheckUtils]: 70: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:21,117 INFO L290 TraceCheckUtils]: 69: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:21,117 INFO L290 TraceCheckUtils]: 68: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:21,117 INFO L272 TraceCheckUtils]: 67: Hoare triple {69313#(<= main_~r~0 main_~u~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:21,117 INFO L290 TraceCheckUtils]: 66: Hoare triple {69313#(<= main_~r~0 main_~u~0)} assume !!(#t~post7 < 20);havoc #t~post7; {69313#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:08:21,118 INFO L290 TraceCheckUtils]: 65: Hoare triple {69313#(<= main_~r~0 main_~u~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69313#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:08:21,118 INFO L290 TraceCheckUtils]: 64: Hoare triple {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {69313#(<= main_~r~0 main_~u~0)} is VALID [2022-04-08 06:08:21,119 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {68843#true} {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} #96#return; {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-08 06:08:21,119 INFO L290 TraceCheckUtils]: 62: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:21,119 INFO L290 TraceCheckUtils]: 61: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:21,119 INFO L290 TraceCheckUtils]: 60: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:21,119 INFO L272 TraceCheckUtils]: 59: Hoare triple {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:21,119 INFO L290 TraceCheckUtils]: 58: Hoare triple {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} assume !!(#t~post7 < 20);havoc #t~post7; {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-08 06:08:21,119 INFO L290 TraceCheckUtils]: 57: Hoare triple {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-08 06:08:21,120 INFO L290 TraceCheckUtils]: 56: Hoare triple {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} assume !!(0 != ~r~0); {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-08 06:08:21,120 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {68843#true} {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} #94#return; {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-08 06:08:21,120 INFO L290 TraceCheckUtils]: 54: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:21,120 INFO L290 TraceCheckUtils]: 53: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:21,120 INFO L290 TraceCheckUtils]: 52: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:21,120 INFO L272 TraceCheckUtils]: 51: Hoare triple {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:21,121 INFO L290 TraceCheckUtils]: 50: Hoare triple {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} assume !!(#t~post6 < 20);havoc #t~post6; {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-08 06:08:21,121 INFO L290 TraceCheckUtils]: 49: Hoare triple {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-08 06:08:21,121 INFO L290 TraceCheckUtils]: 48: Hoare triple {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} assume !(~r~0 < 0); {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-08 06:08:21,122 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {68843#true} {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} #98#return; {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-08 06:08:21,122 INFO L290 TraceCheckUtils]: 46: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:21,122 INFO L290 TraceCheckUtils]: 45: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:21,122 INFO L290 TraceCheckUtils]: 44: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:21,122 INFO L272 TraceCheckUtils]: 43: Hoare triple {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:21,122 INFO L290 TraceCheckUtils]: 42: Hoare triple {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} assume !!(#t~post8 < 20);havoc #t~post8; {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-08 06:08:21,123 INFO L290 TraceCheckUtils]: 41: Hoare triple {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-08 06:08:21,123 INFO L290 TraceCheckUtils]: 40: Hoare triple {69411#(<= 0 (+ main_~v~0 3))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {69338#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-08 06:08:21,124 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {68843#true} {69411#(<= 0 (+ main_~v~0 3))} #98#return; {69411#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-08 06:08:21,124 INFO L290 TraceCheckUtils]: 38: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:21,124 INFO L290 TraceCheckUtils]: 37: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:21,124 INFO L290 TraceCheckUtils]: 36: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:21,124 INFO L272 TraceCheckUtils]: 35: Hoare triple {69411#(<= 0 (+ main_~v~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)); {68843#true} is VALID [2022-04-08 06:08:21,124 INFO L290 TraceCheckUtils]: 34: Hoare triple {69411#(<= 0 (+ main_~v~0 3))} assume !!(#t~post8 < 20);havoc #t~post8; {69411#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-08 06:08:21,124 INFO L290 TraceCheckUtils]: 33: Hoare triple {69411#(<= 0 (+ main_~v~0 3))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {69411#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-08 06:08:21,125 INFO L290 TraceCheckUtils]: 32: Hoare triple {69411#(<= 0 (+ main_~v~0 3))} assume !(~r~0 > 0); {69411#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-08 06:08:21,125 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {68843#true} {69411#(<= 0 (+ main_~v~0 3))} #96#return; {69411#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-08 06:08:21,125 INFO L290 TraceCheckUtils]: 30: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:21,125 INFO L290 TraceCheckUtils]: 29: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:21,125 INFO L290 TraceCheckUtils]: 28: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:21,125 INFO L272 TraceCheckUtils]: 27: Hoare triple {69411#(<= 0 (+ main_~v~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)); {68843#true} is VALID [2022-04-08 06:08:21,126 INFO L290 TraceCheckUtils]: 26: Hoare triple {69411#(<= 0 (+ main_~v~0 3))} assume !!(#t~post7 < 20);havoc #t~post7; {69411#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-08 06:08:21,126 INFO L290 TraceCheckUtils]: 25: Hoare triple {69411#(<= 0 (+ main_~v~0 3))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69411#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-08 06:08:21,126 INFO L290 TraceCheckUtils]: 24: Hoare triple {69411#(<= 0 (+ main_~v~0 3))} assume !!(0 != ~r~0); {69411#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-08 06:08:21,127 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {68843#true} {69411#(<= 0 (+ main_~v~0 3))} #94#return; {69411#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-08 06:08:21,127 INFO L290 TraceCheckUtils]: 22: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:21,127 INFO L290 TraceCheckUtils]: 21: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:21,127 INFO L290 TraceCheckUtils]: 20: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:21,127 INFO L272 TraceCheckUtils]: 19: Hoare triple {69411#(<= 0 (+ main_~v~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)); {68843#true} is VALID [2022-04-08 06:08:21,127 INFO L290 TraceCheckUtils]: 18: Hoare triple {69411#(<= 0 (+ main_~v~0 3))} assume !!(#t~post6 < 20);havoc #t~post6; {69411#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-08 06:08:21,128 INFO L290 TraceCheckUtils]: 17: Hoare triple {69411#(<= 0 (+ main_~v~0 3))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {69411#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-08 06:08:21,128 INFO L290 TraceCheckUtils]: 16: Hoare triple {68843#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {69411#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-08 06:08:21,128 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {68843#true} {68843#true} #92#return; {68843#true} is VALID [2022-04-08 06:08:21,128 INFO L290 TraceCheckUtils]: 14: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:21,128 INFO L290 TraceCheckUtils]: 13: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:21,128 INFO L290 TraceCheckUtils]: 12: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:21,128 INFO L272 TraceCheckUtils]: 11: Hoare triple {68843#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)); {68843#true} is VALID [2022-04-08 06:08:21,128 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {68843#true} {68843#true} #90#return; {68843#true} is VALID [2022-04-08 06:08:21,129 INFO L290 TraceCheckUtils]: 9: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:21,129 INFO L290 TraceCheckUtils]: 8: Hoare triple {68843#true} assume !(0 == ~cond); {68843#true} is VALID [2022-04-08 06:08:21,129 INFO L290 TraceCheckUtils]: 7: Hoare triple {68843#true} ~cond := #in~cond; {68843#true} is VALID [2022-04-08 06:08:21,129 INFO L272 TraceCheckUtils]: 6: Hoare triple {68843#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {68843#true} is VALID [2022-04-08 06:08:21,129 INFO L290 TraceCheckUtils]: 5: Hoare triple {68843#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; {68843#true} is VALID [2022-04-08 06:08:21,129 INFO L272 TraceCheckUtils]: 4: Hoare triple {68843#true} call #t~ret9 := main(); {68843#true} is VALID [2022-04-08 06:08:21,129 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {68843#true} {68843#true} #102#return; {68843#true} is VALID [2022-04-08 06:08:21,129 INFO L290 TraceCheckUtils]: 2: Hoare triple {68843#true} assume true; {68843#true} is VALID [2022-04-08 06:08:21,129 INFO L290 TraceCheckUtils]: 1: Hoare triple {68843#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {68843#true} is VALID [2022-04-08 06:08:21,129 INFO L272 TraceCheckUtils]: 0: Hoare triple {68843#true} call ULTIMATE.init(); {68843#true} is VALID [2022-04-08 06:08:21,129 INFO L134 CoverageAnalysis]: Checked inductivity of 326 backedges. 34 proven. 68 refuted. 0 times theorem prover too weak. 224 trivial. 0 not checked. [2022-04-08 06:08:21,130 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:08:21,130 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [264817515] [2022-04-08 06:08:21,130 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:08:21,130 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1037473810] [2022-04-08 06:08:21,130 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1037473810] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:08:21,130 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:08:21,130 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-08 06:08:21,130 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:08:21,130 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1535224058] [2022-04-08 06:08:21,130 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1535224058] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:08:21,130 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:08:21,130 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 06:08:21,130 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [385006809] [2022-04-08 06:08:21,131 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:08:21,131 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 8 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) Word has length 113 [2022-04-08 06:08:21,131 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:08:21,131 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 8 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-08 06:08:21,203 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:21,204 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 06:08:21,204 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:21,204 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 06:08:21,204 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=148, Unknown=0, NotChecked=0, Total=182 [2022-04-08 06:08:21,204 INFO L87 Difference]: Start difference. First operand 592 states and 792 transitions. Second operand has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 8 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-08 06:08:24,631 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:24,631 INFO L93 Difference]: Finished difference Result 894 states and 1248 transitions. [2022-04-08 06:08:24,632 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 06:08:24,632 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 8 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) Word has length 113 [2022-04-08 06:08:24,632 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:08:24,632 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 8 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-08 06:08:24,633 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 190 transitions. [2022-04-08 06:08:24,633 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 8 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-08 06:08:24,635 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 190 transitions. [2022-04-08 06:08:24,635 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 190 transitions. [2022-04-08 06:08:24,834 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 190 edges. 190 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:24,859 INFO L225 Difference]: With dead ends: 894 [2022-04-08 06:08:24,859 INFO L226 Difference]: Without dead ends: 743 [2022-04-08 06:08:24,860 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 230 GetRequests, 213 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=90, Invalid=252, Unknown=0, NotChecked=0, Total=342 [2022-04-08 06:08:24,860 INFO L913 BasicCegarLoop]: 113 mSDtfsCounter, 68 mSDsluCounter, 237 mSDsCounter, 0 mSdLazyCounter, 259 mSolverCounterSat, 22 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 68 SdHoareTripleChecker+Valid, 350 SdHoareTripleChecker+Invalid, 281 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 22 IncrementalHoareTripleChecker+Valid, 259 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-08 06:08:24,860 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [68 Valid, 350 Invalid, 281 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [22 Valid, 259 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-08 06:08:24,860 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 743 states. [2022-04-08 06:08:26,374 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 743 to 592. [2022-04-08 06:08:26,374 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:08:26,375 INFO L82 GeneralOperation]: Start isEquivalent. First operand 743 states. Second operand has 592 states, 442 states have (on average 1.2217194570135748) internal successors, (540), 452 states have internal predecessors, (540), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 115 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:08:26,375 INFO L74 IsIncluded]: Start isIncluded. First operand 743 states. Second operand has 592 states, 442 states have (on average 1.2217194570135748) internal successors, (540), 452 states have internal predecessors, (540), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 115 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:08:26,376 INFO L87 Difference]: Start difference. First operand 743 states. Second operand has 592 states, 442 states have (on average 1.2217194570135748) internal successors, (540), 452 states have internal predecessors, (540), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 115 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:08:26,396 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:26,396 INFO L93 Difference]: Finished difference Result 743 states and 1013 transitions. [2022-04-08 06:08:26,397 INFO L276 IsEmpty]: Start isEmpty. Operand 743 states and 1013 transitions. [2022-04-08 06:08:26,397 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:26,397 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:26,398 INFO L74 IsIncluded]: Start isIncluded. First operand has 592 states, 442 states have (on average 1.2217194570135748) internal successors, (540), 452 states have internal predecessors, (540), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 115 states have call predecessors, (125), 125 states have call successors, (125) Second operand 743 states. [2022-04-08 06:08:26,398 INFO L87 Difference]: Start difference. First operand has 592 states, 442 states have (on average 1.2217194570135748) internal successors, (540), 452 states have internal predecessors, (540), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 115 states have call predecessors, (125), 125 states have call successors, (125) Second operand 743 states. [2022-04-08 06:08:26,419 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:26,419 INFO L93 Difference]: Finished difference Result 743 states and 1013 transitions. [2022-04-08 06:08:26,419 INFO L276 IsEmpty]: Start isEmpty. Operand 743 states and 1013 transitions. [2022-04-08 06:08:26,420 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:26,420 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:26,420 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:08:26,420 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:08:26,421 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 592 states, 442 states have (on average 1.2217194570135748) internal successors, (540), 452 states have internal predecessors, (540), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 115 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:08:26,438 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 592 states to 592 states and 792 transitions. [2022-04-08 06:08:26,439 INFO L78 Accepts]: Start accepts. Automaton has 592 states and 792 transitions. Word has length 113 [2022-04-08 06:08:26,439 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:08:26,439 INFO L478 AbstractCegarLoop]: Abstraction has 592 states and 792 transitions. [2022-04-08 06:08:26,439 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 6.25) internal successors, (50), 8 states have internal predecessors, (50), 8 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (14), 7 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-08 06:08:26,439 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 592 states and 792 transitions. [2022-04-08 06:08:42,808 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 792 edges. 789 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:42,808 INFO L276 IsEmpty]: Start isEmpty. Operand 592 states and 792 transitions. [2022-04-08 06:08:42,809 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-08 06:08:42,809 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:08:42,809 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 6, 6, 6, 6, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:08:42,829 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Forceful destruction successful, exit code 0 [2022-04-08 06:08:43,010 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable35,37 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:08:43,010 INFO L403 AbstractCegarLoop]: === Iteration 37 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:08:43,011 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:08:43,011 INFO L85 PathProgramCache]: Analyzing trace with hash -144297019, now seen corresponding path program 15 times [2022-04-08 06:08:43,011 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:43,011 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [581540846] [2022-04-08 06:08:43,011 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:08:43,011 INFO L85 PathProgramCache]: Analyzing trace with hash -144297019, now seen corresponding path program 16 times [2022-04-08 06:08:43,011 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:08:43,011 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1815885643] [2022-04-08 06:08:43,012 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:08:43,012 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:08:43,022 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:08:43,022 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [887554416] [2022-04-08 06:08:43,022 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:08:43,023 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:08:43,023 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:08:43,025 INFO L229 MonitoredProcess]: Starting monitored process 38 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:08:43,025 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Waiting until timeout for monitored process [2022-04-08 06:08:43,423 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:08:43,424 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:08:43,425 INFO L263 TraceCheckSpWp]: Trace formula consists of 287 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-08 06:08:43,444 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:08:43,446 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:08:43,978 INFO L272 TraceCheckUtils]: 0: Hoare triple {74002#true} call ULTIMATE.init(); {74002#true} is VALID [2022-04-08 06:08:43,979 INFO L290 TraceCheckUtils]: 1: Hoare triple {74002#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,979 INFO L290 TraceCheckUtils]: 2: Hoare triple {74010#(<= ~counter~0 0)} assume true; {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,979 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {74010#(<= ~counter~0 0)} {74002#true} #102#return; {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,980 INFO L272 TraceCheckUtils]: 4: Hoare triple {74010#(<= ~counter~0 0)} call #t~ret9 := main(); {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,980 INFO L290 TraceCheckUtils]: 5: Hoare triple {74010#(<= ~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; {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,980 INFO L272 TraceCheckUtils]: 6: Hoare triple {74010#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,980 INFO L290 TraceCheckUtils]: 7: Hoare triple {74010#(<= ~counter~0 0)} ~cond := #in~cond; {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,981 INFO L290 TraceCheckUtils]: 8: Hoare triple {74010#(<= ~counter~0 0)} assume !(0 == ~cond); {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,981 INFO L290 TraceCheckUtils]: 9: Hoare triple {74010#(<= ~counter~0 0)} assume true; {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,981 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {74010#(<= ~counter~0 0)} {74010#(<= ~counter~0 0)} #90#return; {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,982 INFO L272 TraceCheckUtils]: 11: Hoare triple {74010#(<= ~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)); {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,982 INFO L290 TraceCheckUtils]: 12: Hoare triple {74010#(<= ~counter~0 0)} ~cond := #in~cond; {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,982 INFO L290 TraceCheckUtils]: 13: Hoare triple {74010#(<= ~counter~0 0)} assume !(0 == ~cond); {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,982 INFO L290 TraceCheckUtils]: 14: Hoare triple {74010#(<= ~counter~0 0)} assume true; {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,983 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {74010#(<= ~counter~0 0)} {74010#(<= ~counter~0 0)} #92#return; {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,983 INFO L290 TraceCheckUtils]: 16: Hoare triple {74010#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {74010#(<= ~counter~0 0)} is VALID [2022-04-08 06:08:43,985 INFO L290 TraceCheckUtils]: 17: Hoare triple {74010#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {74059#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:43,985 INFO L290 TraceCheckUtils]: 18: Hoare triple {74059#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {74059#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:43,985 INFO L272 TraceCheckUtils]: 19: Hoare triple {74059#(<= ~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)); {74059#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:43,986 INFO L290 TraceCheckUtils]: 20: Hoare triple {74059#(<= ~counter~0 1)} ~cond := #in~cond; {74059#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:43,986 INFO L290 TraceCheckUtils]: 21: Hoare triple {74059#(<= ~counter~0 1)} assume !(0 == ~cond); {74059#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:43,986 INFO L290 TraceCheckUtils]: 22: Hoare triple {74059#(<= ~counter~0 1)} assume true; {74059#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:43,987 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {74059#(<= ~counter~0 1)} {74059#(<= ~counter~0 1)} #94#return; {74059#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:43,987 INFO L290 TraceCheckUtils]: 24: Hoare triple {74059#(<= ~counter~0 1)} assume !!(0 != ~r~0); {74059#(<= ~counter~0 1)} is VALID [2022-04-08 06:08:43,988 INFO L290 TraceCheckUtils]: 25: Hoare triple {74059#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74084#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:43,988 INFO L290 TraceCheckUtils]: 26: Hoare triple {74084#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {74084#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:43,988 INFO L272 TraceCheckUtils]: 27: Hoare triple {74084#(<= ~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)); {74084#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:43,989 INFO L290 TraceCheckUtils]: 28: Hoare triple {74084#(<= ~counter~0 2)} ~cond := #in~cond; {74084#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:43,989 INFO L290 TraceCheckUtils]: 29: Hoare triple {74084#(<= ~counter~0 2)} assume !(0 == ~cond); {74084#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:43,989 INFO L290 TraceCheckUtils]: 30: Hoare triple {74084#(<= ~counter~0 2)} assume true; {74084#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:43,990 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {74084#(<= ~counter~0 2)} {74084#(<= ~counter~0 2)} #96#return; {74084#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:43,990 INFO L290 TraceCheckUtils]: 32: Hoare triple {74084#(<= ~counter~0 2)} assume !(~r~0 > 0); {74084#(<= ~counter~0 2)} is VALID [2022-04-08 06:08:43,991 INFO L290 TraceCheckUtils]: 33: Hoare triple {74084#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74109#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:43,991 INFO L290 TraceCheckUtils]: 34: Hoare triple {74109#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {74109#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:43,991 INFO L272 TraceCheckUtils]: 35: Hoare triple {74109#(<= ~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)); {74109#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:43,992 INFO L290 TraceCheckUtils]: 36: Hoare triple {74109#(<= ~counter~0 3)} ~cond := #in~cond; {74109#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:43,992 INFO L290 TraceCheckUtils]: 37: Hoare triple {74109#(<= ~counter~0 3)} assume !(0 == ~cond); {74109#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:43,992 INFO L290 TraceCheckUtils]: 38: Hoare triple {74109#(<= ~counter~0 3)} assume true; {74109#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:43,993 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {74109#(<= ~counter~0 3)} {74109#(<= ~counter~0 3)} #98#return; {74109#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:43,993 INFO L290 TraceCheckUtils]: 40: Hoare triple {74109#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {74109#(<= ~counter~0 3)} is VALID [2022-04-08 06:08:43,994 INFO L290 TraceCheckUtils]: 41: Hoare triple {74109#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74134#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:43,994 INFO L290 TraceCheckUtils]: 42: Hoare triple {74134#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {74134#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:43,994 INFO L272 TraceCheckUtils]: 43: Hoare triple {74134#(<= ~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)); {74134#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:43,995 INFO L290 TraceCheckUtils]: 44: Hoare triple {74134#(<= ~counter~0 4)} ~cond := #in~cond; {74134#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:43,995 INFO L290 TraceCheckUtils]: 45: Hoare triple {74134#(<= ~counter~0 4)} assume !(0 == ~cond); {74134#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:43,995 INFO L290 TraceCheckUtils]: 46: Hoare triple {74134#(<= ~counter~0 4)} assume true; {74134#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:43,996 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {74134#(<= ~counter~0 4)} {74134#(<= ~counter~0 4)} #98#return; {74134#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:43,996 INFO L290 TraceCheckUtils]: 48: Hoare triple {74134#(<= ~counter~0 4)} assume !(~r~0 < 0); {74134#(<= ~counter~0 4)} is VALID [2022-04-08 06:08:43,997 INFO L290 TraceCheckUtils]: 49: Hoare triple {74134#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {74159#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:43,997 INFO L290 TraceCheckUtils]: 50: Hoare triple {74159#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {74159#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:43,997 INFO L272 TraceCheckUtils]: 51: Hoare triple {74159#(<= ~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)); {74159#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:43,998 INFO L290 TraceCheckUtils]: 52: Hoare triple {74159#(<= ~counter~0 5)} ~cond := #in~cond; {74159#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:43,998 INFO L290 TraceCheckUtils]: 53: Hoare triple {74159#(<= ~counter~0 5)} assume !(0 == ~cond); {74159#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:43,998 INFO L290 TraceCheckUtils]: 54: Hoare triple {74159#(<= ~counter~0 5)} assume true; {74159#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:43,999 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {74159#(<= ~counter~0 5)} {74159#(<= ~counter~0 5)} #94#return; {74159#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:43,999 INFO L290 TraceCheckUtils]: 56: Hoare triple {74159#(<= ~counter~0 5)} assume !!(0 != ~r~0); {74159#(<= ~counter~0 5)} is VALID [2022-04-08 06:08:44,000 INFO L290 TraceCheckUtils]: 57: Hoare triple {74159#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74184#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:44,000 INFO L290 TraceCheckUtils]: 58: Hoare triple {74184#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {74184#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:44,000 INFO L272 TraceCheckUtils]: 59: Hoare triple {74184#(<= ~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)); {74184#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:44,001 INFO L290 TraceCheckUtils]: 60: Hoare triple {74184#(<= ~counter~0 6)} ~cond := #in~cond; {74184#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:44,001 INFO L290 TraceCheckUtils]: 61: Hoare triple {74184#(<= ~counter~0 6)} assume !(0 == ~cond); {74184#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:44,001 INFO L290 TraceCheckUtils]: 62: Hoare triple {74184#(<= ~counter~0 6)} assume true; {74184#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:44,002 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {74184#(<= ~counter~0 6)} {74184#(<= ~counter~0 6)} #96#return; {74184#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:44,002 INFO L290 TraceCheckUtils]: 64: Hoare triple {74184#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74184#(<= ~counter~0 6)} is VALID [2022-04-08 06:08:44,003 INFO L290 TraceCheckUtils]: 65: Hoare triple {74184#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74209#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:44,003 INFO L290 TraceCheckUtils]: 66: Hoare triple {74209#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {74209#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:44,003 INFO L272 TraceCheckUtils]: 67: Hoare triple {74209#(<= ~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)); {74209#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:44,004 INFO L290 TraceCheckUtils]: 68: Hoare triple {74209#(<= ~counter~0 7)} ~cond := #in~cond; {74209#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:44,004 INFO L290 TraceCheckUtils]: 69: Hoare triple {74209#(<= ~counter~0 7)} assume !(0 == ~cond); {74209#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:44,004 INFO L290 TraceCheckUtils]: 70: Hoare triple {74209#(<= ~counter~0 7)} assume true; {74209#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:44,004 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {74209#(<= ~counter~0 7)} {74209#(<= ~counter~0 7)} #96#return; {74209#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:44,005 INFO L290 TraceCheckUtils]: 72: Hoare triple {74209#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74209#(<= ~counter~0 7)} is VALID [2022-04-08 06:08:44,005 INFO L290 TraceCheckUtils]: 73: Hoare triple {74209#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,006 INFO L290 TraceCheckUtils]: 74: Hoare triple {74234#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,006 INFO L272 TraceCheckUtils]: 75: Hoare triple {74234#(<= ~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)); {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,006 INFO L290 TraceCheckUtils]: 76: Hoare triple {74234#(<= ~counter~0 8)} ~cond := #in~cond; {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,007 INFO L290 TraceCheckUtils]: 77: Hoare triple {74234#(<= ~counter~0 8)} assume !(0 == ~cond); {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,007 INFO L290 TraceCheckUtils]: 78: Hoare triple {74234#(<= ~counter~0 8)} assume true; {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,007 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {74234#(<= ~counter~0 8)} {74234#(<= ~counter~0 8)} #96#return; {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,008 INFO L290 TraceCheckUtils]: 80: Hoare triple {74234#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,008 INFO L290 TraceCheckUtils]: 81: Hoare triple {74234#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74259#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:44,009 INFO L290 TraceCheckUtils]: 82: Hoare triple {74259#(<= ~counter~0 9)} assume !!(#t~post7 < 20);havoc #t~post7; {74259#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:44,009 INFO L272 TraceCheckUtils]: 83: Hoare triple {74259#(<= ~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)); {74259#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:44,009 INFO L290 TraceCheckUtils]: 84: Hoare triple {74259#(<= ~counter~0 9)} ~cond := #in~cond; {74259#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:44,010 INFO L290 TraceCheckUtils]: 85: Hoare triple {74259#(<= ~counter~0 9)} assume !(0 == ~cond); {74259#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:44,010 INFO L290 TraceCheckUtils]: 86: Hoare triple {74259#(<= ~counter~0 9)} assume true; {74259#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:44,010 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {74259#(<= ~counter~0 9)} {74259#(<= ~counter~0 9)} #96#return; {74259#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:44,011 INFO L290 TraceCheckUtils]: 88: Hoare triple {74259#(<= ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74259#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:44,011 INFO L290 TraceCheckUtils]: 89: Hoare triple {74259#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74284#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:44,012 INFO L290 TraceCheckUtils]: 90: Hoare triple {74284#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {74284#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:44,012 INFO L272 TraceCheckUtils]: 91: Hoare triple {74284#(<= ~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)); {74284#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:44,012 INFO L290 TraceCheckUtils]: 92: Hoare triple {74284#(<= ~counter~0 10)} ~cond := #in~cond; {74284#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:44,013 INFO L290 TraceCheckUtils]: 93: Hoare triple {74284#(<= ~counter~0 10)} assume !(0 == ~cond); {74284#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:44,013 INFO L290 TraceCheckUtils]: 94: Hoare triple {74284#(<= ~counter~0 10)} assume true; {74284#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:44,013 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {74284#(<= ~counter~0 10)} {74284#(<= ~counter~0 10)} #96#return; {74284#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:44,014 INFO L290 TraceCheckUtils]: 96: Hoare triple {74284#(<= ~counter~0 10)} assume !(~r~0 > 0); {74284#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:44,014 INFO L290 TraceCheckUtils]: 97: Hoare triple {74284#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74309#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:44,015 INFO L290 TraceCheckUtils]: 98: Hoare triple {74309#(<= ~counter~0 11)} assume !!(#t~post8 < 20);havoc #t~post8; {74309#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:44,015 INFO L272 TraceCheckUtils]: 99: Hoare triple {74309#(<= ~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)); {74309#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:44,015 INFO L290 TraceCheckUtils]: 100: Hoare triple {74309#(<= ~counter~0 11)} ~cond := #in~cond; {74309#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:44,016 INFO L290 TraceCheckUtils]: 101: Hoare triple {74309#(<= ~counter~0 11)} assume !(0 == ~cond); {74309#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:44,016 INFO L290 TraceCheckUtils]: 102: Hoare triple {74309#(<= ~counter~0 11)} assume true; {74309#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:44,016 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {74309#(<= ~counter~0 11)} {74309#(<= ~counter~0 11)} #98#return; {74309#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:44,017 INFO L290 TraceCheckUtils]: 104: Hoare triple {74309#(<= ~counter~0 11)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {74309#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:44,017 INFO L290 TraceCheckUtils]: 105: Hoare triple {74309#(<= ~counter~0 11)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74334#(<= |main_#t~post8| 11)} is VALID [2022-04-08 06:08:44,017 INFO L290 TraceCheckUtils]: 106: Hoare triple {74334#(<= |main_#t~post8| 11)} assume !(#t~post8 < 20);havoc #t~post8; {74003#false} is VALID [2022-04-08 06:08:44,017 INFO L290 TraceCheckUtils]: 107: Hoare triple {74003#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {74003#false} is VALID [2022-04-08 06:08:44,017 INFO L290 TraceCheckUtils]: 108: Hoare triple {74003#false} assume !(#t~post6 < 20);havoc #t~post6; {74003#false} is VALID [2022-04-08 06:08:44,017 INFO L272 TraceCheckUtils]: 109: Hoare triple {74003#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)); {74003#false} is VALID [2022-04-08 06:08:44,018 INFO L290 TraceCheckUtils]: 110: Hoare triple {74003#false} ~cond := #in~cond; {74003#false} is VALID [2022-04-08 06:08:44,018 INFO L290 TraceCheckUtils]: 111: Hoare triple {74003#false} assume 0 == ~cond; {74003#false} is VALID [2022-04-08 06:08:44,018 INFO L290 TraceCheckUtils]: 112: Hoare triple {74003#false} assume !false; {74003#false} is VALID [2022-04-08 06:08:44,018 INFO L134 CoverageAnalysis]: Checked inductivity of 332 backedges. 26 proven. 302 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:08:44,018 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:08:44,554 INFO L290 TraceCheckUtils]: 112: Hoare triple {74003#false} assume !false; {74003#false} is VALID [2022-04-08 06:08:44,554 INFO L290 TraceCheckUtils]: 111: Hoare triple {74003#false} assume 0 == ~cond; {74003#false} is VALID [2022-04-08 06:08:44,554 INFO L290 TraceCheckUtils]: 110: Hoare triple {74003#false} ~cond := #in~cond; {74003#false} is VALID [2022-04-08 06:08:44,554 INFO L272 TraceCheckUtils]: 109: Hoare triple {74003#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)); {74003#false} is VALID [2022-04-08 06:08:44,555 INFO L290 TraceCheckUtils]: 108: Hoare triple {74003#false} assume !(#t~post6 < 20);havoc #t~post6; {74003#false} is VALID [2022-04-08 06:08:44,555 INFO L290 TraceCheckUtils]: 107: Hoare triple {74003#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {74003#false} is VALID [2022-04-08 06:08:44,555 INFO L290 TraceCheckUtils]: 106: Hoare triple {74374#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {74003#false} is VALID [2022-04-08 06:08:44,555 INFO L290 TraceCheckUtils]: 105: Hoare triple {74378#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74374#(< |main_#t~post8| 20)} is VALID [2022-04-08 06:08:44,555 INFO L290 TraceCheckUtils]: 104: Hoare triple {74378#(< ~counter~0 20)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {74378#(< ~counter~0 20)} is VALID [2022-04-08 06:08:44,556 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {74002#true} {74378#(< ~counter~0 20)} #98#return; {74378#(< ~counter~0 20)} is VALID [2022-04-08 06:08:44,562 INFO L290 TraceCheckUtils]: 102: Hoare triple {74002#true} assume true; {74002#true} is VALID [2022-04-08 06:08:44,562 INFO L290 TraceCheckUtils]: 101: Hoare triple {74002#true} assume !(0 == ~cond); {74002#true} is VALID [2022-04-08 06:08:44,562 INFO L290 TraceCheckUtils]: 100: Hoare triple {74002#true} ~cond := #in~cond; {74002#true} is VALID [2022-04-08 06:08:44,562 INFO L272 TraceCheckUtils]: 99: Hoare triple {74378#(< ~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)); {74002#true} is VALID [2022-04-08 06:08:44,563 INFO L290 TraceCheckUtils]: 98: Hoare triple {74378#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {74378#(< ~counter~0 20)} is VALID [2022-04-08 06:08:44,564 INFO L290 TraceCheckUtils]: 97: Hoare triple {74403#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74378#(< ~counter~0 20)} is VALID [2022-04-08 06:08:44,565 INFO L290 TraceCheckUtils]: 96: Hoare triple {74403#(< ~counter~0 19)} assume !(~r~0 > 0); {74403#(< ~counter~0 19)} is VALID [2022-04-08 06:08:44,565 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {74002#true} {74403#(< ~counter~0 19)} #96#return; {74403#(< ~counter~0 19)} is VALID [2022-04-08 06:08:44,565 INFO L290 TraceCheckUtils]: 94: Hoare triple {74002#true} assume true; {74002#true} is VALID [2022-04-08 06:08:44,565 INFO L290 TraceCheckUtils]: 93: Hoare triple {74002#true} assume !(0 == ~cond); {74002#true} is VALID [2022-04-08 06:08:44,565 INFO L290 TraceCheckUtils]: 92: Hoare triple {74002#true} ~cond := #in~cond; {74002#true} is VALID [2022-04-08 06:08:44,565 INFO L272 TraceCheckUtils]: 91: Hoare triple {74403#(< ~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)); {74002#true} is VALID [2022-04-08 06:08:44,566 INFO L290 TraceCheckUtils]: 90: Hoare triple {74403#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {74403#(< ~counter~0 19)} is VALID [2022-04-08 06:08:44,566 INFO L290 TraceCheckUtils]: 89: Hoare triple {74428#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74403#(< ~counter~0 19)} is VALID [2022-04-08 06:08:44,567 INFO L290 TraceCheckUtils]: 88: Hoare triple {74428#(< ~counter~0 18)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74428#(< ~counter~0 18)} is VALID [2022-04-08 06:08:44,567 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {74002#true} {74428#(< ~counter~0 18)} #96#return; {74428#(< ~counter~0 18)} is VALID [2022-04-08 06:08:44,567 INFO L290 TraceCheckUtils]: 86: Hoare triple {74002#true} assume true; {74002#true} is VALID [2022-04-08 06:08:44,567 INFO L290 TraceCheckUtils]: 85: Hoare triple {74002#true} assume !(0 == ~cond); {74002#true} is VALID [2022-04-08 06:08:44,567 INFO L290 TraceCheckUtils]: 84: Hoare triple {74002#true} ~cond := #in~cond; {74002#true} is VALID [2022-04-08 06:08:44,567 INFO L272 TraceCheckUtils]: 83: Hoare triple {74428#(< ~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)); {74002#true} is VALID [2022-04-08 06:08:44,568 INFO L290 TraceCheckUtils]: 82: Hoare triple {74428#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {74428#(< ~counter~0 18)} is VALID [2022-04-08 06:08:44,568 INFO L290 TraceCheckUtils]: 81: Hoare triple {74453#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74428#(< ~counter~0 18)} is VALID [2022-04-08 06:08:44,569 INFO L290 TraceCheckUtils]: 80: Hoare triple {74453#(< ~counter~0 17)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74453#(< ~counter~0 17)} is VALID [2022-04-08 06:08:44,569 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {74002#true} {74453#(< ~counter~0 17)} #96#return; {74453#(< ~counter~0 17)} is VALID [2022-04-08 06:08:44,569 INFO L290 TraceCheckUtils]: 78: Hoare triple {74002#true} assume true; {74002#true} is VALID [2022-04-08 06:08:44,569 INFO L290 TraceCheckUtils]: 77: Hoare triple {74002#true} assume !(0 == ~cond); {74002#true} is VALID [2022-04-08 06:08:44,569 INFO L290 TraceCheckUtils]: 76: Hoare triple {74002#true} ~cond := #in~cond; {74002#true} is VALID [2022-04-08 06:08:44,569 INFO L272 TraceCheckUtils]: 75: Hoare triple {74453#(< ~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)); {74002#true} is VALID [2022-04-08 06:08:44,570 INFO L290 TraceCheckUtils]: 74: Hoare triple {74453#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {74453#(< ~counter~0 17)} is VALID [2022-04-08 06:08:44,570 INFO L290 TraceCheckUtils]: 73: Hoare triple {74478#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74453#(< ~counter~0 17)} is VALID [2022-04-08 06:08:44,571 INFO L290 TraceCheckUtils]: 72: Hoare triple {74478#(< ~counter~0 16)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74478#(< ~counter~0 16)} is VALID [2022-04-08 06:08:44,571 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {74002#true} {74478#(< ~counter~0 16)} #96#return; {74478#(< ~counter~0 16)} is VALID [2022-04-08 06:08:44,571 INFO L290 TraceCheckUtils]: 70: Hoare triple {74002#true} assume true; {74002#true} is VALID [2022-04-08 06:08:44,571 INFO L290 TraceCheckUtils]: 69: Hoare triple {74002#true} assume !(0 == ~cond); {74002#true} is VALID [2022-04-08 06:08:44,571 INFO L290 TraceCheckUtils]: 68: Hoare triple {74002#true} ~cond := #in~cond; {74002#true} is VALID [2022-04-08 06:08:44,572 INFO L272 TraceCheckUtils]: 67: Hoare triple {74478#(< ~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)); {74002#true} is VALID [2022-04-08 06:08:44,572 INFO L290 TraceCheckUtils]: 66: Hoare triple {74478#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {74478#(< ~counter~0 16)} is VALID [2022-04-08 06:08:44,572 INFO L290 TraceCheckUtils]: 65: Hoare triple {74503#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74478#(< ~counter~0 16)} is VALID [2022-04-08 06:08:44,573 INFO L290 TraceCheckUtils]: 64: Hoare triple {74503#(< ~counter~0 15)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74503#(< ~counter~0 15)} is VALID [2022-04-08 06:08:44,573 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {74002#true} {74503#(< ~counter~0 15)} #96#return; {74503#(< ~counter~0 15)} is VALID [2022-04-08 06:08:44,573 INFO L290 TraceCheckUtils]: 62: Hoare triple {74002#true} assume true; {74002#true} is VALID [2022-04-08 06:08:44,573 INFO L290 TraceCheckUtils]: 61: Hoare triple {74002#true} assume !(0 == ~cond); {74002#true} is VALID [2022-04-08 06:08:44,573 INFO L290 TraceCheckUtils]: 60: Hoare triple {74002#true} ~cond := #in~cond; {74002#true} is VALID [2022-04-08 06:08:44,574 INFO L272 TraceCheckUtils]: 59: Hoare triple {74503#(< ~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)); {74002#true} is VALID [2022-04-08 06:08:44,574 INFO L290 TraceCheckUtils]: 58: Hoare triple {74503#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {74503#(< ~counter~0 15)} is VALID [2022-04-08 06:08:44,574 INFO L290 TraceCheckUtils]: 57: Hoare triple {74528#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74503#(< ~counter~0 15)} is VALID [2022-04-08 06:08:44,575 INFO L290 TraceCheckUtils]: 56: Hoare triple {74528#(< ~counter~0 14)} assume !!(0 != ~r~0); {74528#(< ~counter~0 14)} is VALID [2022-04-08 06:08:44,575 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {74002#true} {74528#(< ~counter~0 14)} #94#return; {74528#(< ~counter~0 14)} is VALID [2022-04-08 06:08:44,575 INFO L290 TraceCheckUtils]: 54: Hoare triple {74002#true} assume true; {74002#true} is VALID [2022-04-08 06:08:44,575 INFO L290 TraceCheckUtils]: 53: Hoare triple {74002#true} assume !(0 == ~cond); {74002#true} is VALID [2022-04-08 06:08:44,575 INFO L290 TraceCheckUtils]: 52: Hoare triple {74002#true} ~cond := #in~cond; {74002#true} is VALID [2022-04-08 06:08:44,576 INFO L272 TraceCheckUtils]: 51: Hoare triple {74528#(< ~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)); {74002#true} is VALID [2022-04-08 06:08:44,576 INFO L290 TraceCheckUtils]: 50: Hoare triple {74528#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {74528#(< ~counter~0 14)} is VALID [2022-04-08 06:08:44,577 INFO L290 TraceCheckUtils]: 49: Hoare triple {74553#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {74528#(< ~counter~0 14)} is VALID [2022-04-08 06:08:44,577 INFO L290 TraceCheckUtils]: 48: Hoare triple {74553#(< ~counter~0 13)} assume !(~r~0 < 0); {74553#(< ~counter~0 13)} is VALID [2022-04-08 06:08:44,577 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {74002#true} {74553#(< ~counter~0 13)} #98#return; {74553#(< ~counter~0 13)} is VALID [2022-04-08 06:08:44,577 INFO L290 TraceCheckUtils]: 46: Hoare triple {74002#true} assume true; {74002#true} is VALID [2022-04-08 06:08:44,577 INFO L290 TraceCheckUtils]: 45: Hoare triple {74002#true} assume !(0 == ~cond); {74002#true} is VALID [2022-04-08 06:08:44,578 INFO L290 TraceCheckUtils]: 44: Hoare triple {74002#true} ~cond := #in~cond; {74002#true} is VALID [2022-04-08 06:08:44,578 INFO L272 TraceCheckUtils]: 43: Hoare triple {74553#(< ~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)); {74002#true} is VALID [2022-04-08 06:08:44,578 INFO L290 TraceCheckUtils]: 42: Hoare triple {74553#(< ~counter~0 13)} assume !!(#t~post8 < 20);havoc #t~post8; {74553#(< ~counter~0 13)} is VALID [2022-04-08 06:08:44,579 INFO L290 TraceCheckUtils]: 41: Hoare triple {74309#(<= ~counter~0 11)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74553#(< ~counter~0 13)} is VALID [2022-04-08 06:08:44,579 INFO L290 TraceCheckUtils]: 40: Hoare triple {74309#(<= ~counter~0 11)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {74309#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:44,579 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {74002#true} {74309#(<= ~counter~0 11)} #98#return; {74309#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:44,579 INFO L290 TraceCheckUtils]: 38: Hoare triple {74002#true} assume true; {74002#true} is VALID [2022-04-08 06:08:44,579 INFO L290 TraceCheckUtils]: 37: Hoare triple {74002#true} assume !(0 == ~cond); {74002#true} is VALID [2022-04-08 06:08:44,580 INFO L290 TraceCheckUtils]: 36: Hoare triple {74002#true} ~cond := #in~cond; {74002#true} is VALID [2022-04-08 06:08:44,580 INFO L272 TraceCheckUtils]: 35: Hoare triple {74309#(<= ~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)); {74002#true} is VALID [2022-04-08 06:08:44,580 INFO L290 TraceCheckUtils]: 34: Hoare triple {74309#(<= ~counter~0 11)} assume !!(#t~post8 < 20);havoc #t~post8; {74309#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:44,581 INFO L290 TraceCheckUtils]: 33: Hoare triple {74284#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74309#(<= ~counter~0 11)} is VALID [2022-04-08 06:08:44,581 INFO L290 TraceCheckUtils]: 32: Hoare triple {74284#(<= ~counter~0 10)} assume !(~r~0 > 0); {74284#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:44,581 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {74002#true} {74284#(<= ~counter~0 10)} #96#return; {74284#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:44,581 INFO L290 TraceCheckUtils]: 30: Hoare triple {74002#true} assume true; {74002#true} is VALID [2022-04-08 06:08:44,581 INFO L290 TraceCheckUtils]: 29: Hoare triple {74002#true} assume !(0 == ~cond); {74002#true} is VALID [2022-04-08 06:08:44,582 INFO L290 TraceCheckUtils]: 28: Hoare triple {74002#true} ~cond := #in~cond; {74002#true} is VALID [2022-04-08 06:08:44,582 INFO L272 TraceCheckUtils]: 27: Hoare triple {74284#(<= ~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)); {74002#true} is VALID [2022-04-08 06:08:44,582 INFO L290 TraceCheckUtils]: 26: Hoare triple {74284#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {74284#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:44,583 INFO L290 TraceCheckUtils]: 25: Hoare triple {74259#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74284#(<= ~counter~0 10)} is VALID [2022-04-08 06:08:44,583 INFO L290 TraceCheckUtils]: 24: Hoare triple {74259#(<= ~counter~0 9)} assume !!(0 != ~r~0); {74259#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:44,583 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {74002#true} {74259#(<= ~counter~0 9)} #94#return; {74259#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:44,583 INFO L290 TraceCheckUtils]: 22: Hoare triple {74002#true} assume true; {74002#true} is VALID [2022-04-08 06:08:44,583 INFO L290 TraceCheckUtils]: 21: Hoare triple {74002#true} assume !(0 == ~cond); {74002#true} is VALID [2022-04-08 06:08:44,584 INFO L290 TraceCheckUtils]: 20: Hoare triple {74002#true} ~cond := #in~cond; {74002#true} is VALID [2022-04-08 06:08:44,584 INFO L272 TraceCheckUtils]: 19: Hoare triple {74259#(<= ~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)); {74002#true} is VALID [2022-04-08 06:08:44,584 INFO L290 TraceCheckUtils]: 18: Hoare triple {74259#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {74259#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:44,585 INFO L290 TraceCheckUtils]: 17: Hoare triple {74234#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {74259#(<= ~counter~0 9)} is VALID [2022-04-08 06:08:44,585 INFO L290 TraceCheckUtils]: 16: Hoare triple {74234#(<= ~counter~0 8)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,585 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {74002#true} {74234#(<= ~counter~0 8)} #92#return; {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,585 INFO L290 TraceCheckUtils]: 14: Hoare triple {74002#true} assume true; {74002#true} is VALID [2022-04-08 06:08:44,585 INFO L290 TraceCheckUtils]: 13: Hoare triple {74002#true} assume !(0 == ~cond); {74002#true} is VALID [2022-04-08 06:08:44,585 INFO L290 TraceCheckUtils]: 12: Hoare triple {74002#true} ~cond := #in~cond; {74002#true} is VALID [2022-04-08 06:08:44,585 INFO L272 TraceCheckUtils]: 11: Hoare triple {74234#(<= ~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)); {74002#true} is VALID [2022-04-08 06:08:44,586 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {74002#true} {74234#(<= ~counter~0 8)} #90#return; {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,586 INFO L290 TraceCheckUtils]: 9: Hoare triple {74002#true} assume true; {74002#true} is VALID [2022-04-08 06:08:44,586 INFO L290 TraceCheckUtils]: 8: Hoare triple {74002#true} assume !(0 == ~cond); {74002#true} is VALID [2022-04-08 06:08:44,586 INFO L290 TraceCheckUtils]: 7: Hoare triple {74002#true} ~cond := #in~cond; {74002#true} is VALID [2022-04-08 06:08:44,586 INFO L272 TraceCheckUtils]: 6: Hoare triple {74234#(<= ~counter~0 8)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {74002#true} is VALID [2022-04-08 06:08:44,586 INFO L290 TraceCheckUtils]: 5: Hoare triple {74234#(<= ~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; {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,587 INFO L272 TraceCheckUtils]: 4: Hoare triple {74234#(<= ~counter~0 8)} call #t~ret9 := main(); {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,587 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {74234#(<= ~counter~0 8)} {74002#true} #102#return; {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,587 INFO L290 TraceCheckUtils]: 2: Hoare triple {74234#(<= ~counter~0 8)} assume true; {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,588 INFO L290 TraceCheckUtils]: 1: Hoare triple {74002#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {74234#(<= ~counter~0 8)} is VALID [2022-04-08 06:08:44,588 INFO L272 TraceCheckUtils]: 0: Hoare triple {74002#true} call ULTIMATE.init(); {74002#true} is VALID [2022-04-08 06:08:44,588 INFO L134 CoverageAnalysis]: Checked inductivity of 332 backedges. 26 proven. 82 refuted. 0 times theorem prover too weak. 224 trivial. 0 not checked. [2022-04-08 06:08:44,588 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:08:44,588 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1815885643] [2022-04-08 06:08:44,588 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:08:44,588 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [887554416] [2022-04-08 06:08:44,588 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [887554416] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:08:44,589 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:08:44,589 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 24 [2022-04-08 06:08:44,589 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:08:44,589 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [581540846] [2022-04-08 06:08:44,589 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [581540846] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:08:44,589 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:08:44,589 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-08 06:08:44,589 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1476980522] [2022-04-08 06:08:44,589 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:08:44,590 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 5.333333333333333) internal successors, (80), 14 states have internal predecessors, (80), 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 113 [2022-04-08 06:08:44,590 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:08:44,590 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 5.333333333333333) internal successors, (80), 14 states have internal predecessors, (80), 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:44,678 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:44,679 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-08 06:08:44,679 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:44,679 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-08 06:08:44,679 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:08:44,680 INFO L87 Difference]: Start difference. First operand 592 states and 792 transitions. Second operand has 15 states, 15 states have (on average 5.333333333333333) internal successors, (80), 14 states have internal predecessors, (80), 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:47,277 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:47,278 INFO L93 Difference]: Finished difference Result 817 states and 1128 transitions. [2022-04-08 06:08:47,278 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-08 06:08:47,278 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 5.333333333333333) internal successors, (80), 14 states have internal predecessors, (80), 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 113 [2022-04-08 06:08:47,278 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:08:47,278 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 5.333333333333333) internal successors, (80), 14 states have internal predecessors, (80), 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:47,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 256 transitions. [2022-04-08 06:08:47,280 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 5.333333333333333) internal successors, (80), 14 states have internal predecessors, (80), 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:47,282 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 256 transitions. [2022-04-08 06:08:47,282 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 256 transitions. [2022-04-08 06:08:47,503 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 256 edges. 256 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:47,520 INFO L225 Difference]: With dead ends: 817 [2022-04-08 06:08:47,520 INFO L226 Difference]: Without dead ends: 620 [2022-04-08 06:08:47,521 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 234 GetRequests, 202 SyntacticMatches, 1 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 74 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=425, Invalid=631, Unknown=0, NotChecked=0, Total=1056 [2022-04-08 06:08:47,522 INFO L913 BasicCegarLoop]: 63 mSDtfsCounter, 170 mSDsluCounter, 203 mSDsCounter, 0 mSdLazyCounter, 143 mSolverCounterSat, 171 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 170 SdHoareTripleChecker+Valid, 266 SdHoareTripleChecker+Invalid, 314 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 171 IncrementalHoareTripleChecker+Valid, 143 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-08 06:08:47,522 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [170 Valid, 266 Invalid, 314 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [171 Valid, 143 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-08 06:08:47,522 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 620 states. [2022-04-08 06:08:49,081 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 620 to 610. [2022-04-08 06:08:49,081 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:08:49,082 INFO L82 GeneralOperation]: Start isEquivalent. First operand 620 states. Second operand has 610 states, 460 states have (on average 1.2217391304347827) internal successors, (562), 464 states have internal predecessors, (562), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 121 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:08:49,082 INFO L74 IsIncluded]: Start isIncluded. First operand 620 states. Second operand has 610 states, 460 states have (on average 1.2217391304347827) internal successors, (562), 464 states have internal predecessors, (562), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 121 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:08:49,083 INFO L87 Difference]: Start difference. First operand 620 states. Second operand has 610 states, 460 states have (on average 1.2217391304347827) internal successors, (562), 464 states have internal predecessors, (562), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 121 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:08:49,097 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:49,097 INFO L93 Difference]: Finished difference Result 620 states and 824 transitions. [2022-04-08 06:08:49,097 INFO L276 IsEmpty]: Start isEmpty. Operand 620 states and 824 transitions. [2022-04-08 06:08:49,098 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:49,098 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:49,099 INFO L74 IsIncluded]: Start isIncluded. First operand has 610 states, 460 states have (on average 1.2217391304347827) internal successors, (562), 464 states have internal predecessors, (562), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 121 states have call predecessors, (125), 125 states have call successors, (125) Second operand 620 states. [2022-04-08 06:08:49,099 INFO L87 Difference]: Start difference. First operand has 610 states, 460 states have (on average 1.2217391304347827) internal successors, (562), 464 states have internal predecessors, (562), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 121 states have call predecessors, (125), 125 states have call successors, (125) Second operand 620 states. [2022-04-08 06:08:49,113 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:49,113 INFO L93 Difference]: Finished difference Result 620 states and 824 transitions. [2022-04-08 06:08:49,113 INFO L276 IsEmpty]: Start isEmpty. Operand 620 states and 824 transitions. [2022-04-08 06:08:49,114 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:49,114 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:49,114 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:08:49,114 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:08:49,115 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 610 states, 460 states have (on average 1.2217391304347827) internal successors, (562), 464 states have internal predecessors, (562), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 121 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:08:49,133 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 610 states to 610 states and 814 transitions. [2022-04-08 06:08:49,134 INFO L78 Accepts]: Start accepts. Automaton has 610 states and 814 transitions. Word has length 113 [2022-04-08 06:08:49,134 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:08:49,134 INFO L478 AbstractCegarLoop]: Abstraction has 610 states and 814 transitions. [2022-04-08 06:08:49,134 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 5.333333333333333) internal successors, (80), 14 states have internal predecessors, (80), 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:49,134 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 610 states and 814 transitions. [2022-04-08 06:09:02,759 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 814 edges. 812 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:02,759 INFO L276 IsEmpty]: Start isEmpty. Operand 610 states and 814 transitions. [2022-04-08 06:09:02,760 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 116 [2022-04-08 06:09:02,760 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:09:02,760 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 5, 5, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:09:02,764 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Forceful destruction successful, exit code 0 [2022-04-08 06:09:02,961 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 38 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable36 [2022-04-08 06:09:02,961 INFO L403 AbstractCegarLoop]: === Iteration 38 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:09:02,961 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:09:02,961 INFO L85 PathProgramCache]: Analyzing trace with hash 533963976, now seen corresponding path program 13 times [2022-04-08 06:09:02,962 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:09:02,962 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [241620734] [2022-04-08 06:09:02,962 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:09:02,962 INFO L85 PathProgramCache]: Analyzing trace with hash 533963976, now seen corresponding path program 14 times [2022-04-08 06:09:02,962 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:09:02,962 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1741490499] [2022-04-08 06:09:02,962 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:09:02,962 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:09:02,973 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:09:02,973 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [156289257] [2022-04-08 06:09:02,973 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:09:02,973 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:09:02,973 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:09:02,974 INFO L229 MonitoredProcess]: Starting monitored process 39 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:09:02,974 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Waiting until timeout for monitored process [2022-04-08 06:09:03,056 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:09:03,057 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:09:03,059 INFO L263 TraceCheckSpWp]: Trace formula consists of 284 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-08 06:09:03,080 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:09:03,082 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:09:03,597 INFO L272 TraceCheckUtils]: 0: Hoare triple {78815#true} call ULTIMATE.init(); {78815#true} is VALID [2022-04-08 06:09:03,598 INFO L290 TraceCheckUtils]: 1: Hoare triple {78815#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,598 INFO L290 TraceCheckUtils]: 2: Hoare triple {78823#(<= ~counter~0 0)} assume true; {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,599 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {78823#(<= ~counter~0 0)} {78815#true} #102#return; {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,599 INFO L272 TraceCheckUtils]: 4: Hoare triple {78823#(<= ~counter~0 0)} call #t~ret9 := main(); {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,599 INFO L290 TraceCheckUtils]: 5: Hoare triple {78823#(<= ~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; {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,600 INFO L272 TraceCheckUtils]: 6: Hoare triple {78823#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,600 INFO L290 TraceCheckUtils]: 7: Hoare triple {78823#(<= ~counter~0 0)} ~cond := #in~cond; {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,600 INFO L290 TraceCheckUtils]: 8: Hoare triple {78823#(<= ~counter~0 0)} assume !(0 == ~cond); {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,601 INFO L290 TraceCheckUtils]: 9: Hoare triple {78823#(<= ~counter~0 0)} assume true; {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,601 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {78823#(<= ~counter~0 0)} {78823#(<= ~counter~0 0)} #90#return; {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,601 INFO L272 TraceCheckUtils]: 11: Hoare triple {78823#(<= ~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)); {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,602 INFO L290 TraceCheckUtils]: 12: Hoare triple {78823#(<= ~counter~0 0)} ~cond := #in~cond; {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,602 INFO L290 TraceCheckUtils]: 13: Hoare triple {78823#(<= ~counter~0 0)} assume !(0 == ~cond); {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,602 INFO L290 TraceCheckUtils]: 14: Hoare triple {78823#(<= ~counter~0 0)} assume true; {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,602 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {78823#(<= ~counter~0 0)} {78823#(<= ~counter~0 0)} #92#return; {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,603 INFO L290 TraceCheckUtils]: 16: Hoare triple {78823#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {78823#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:03,604 INFO L290 TraceCheckUtils]: 17: Hoare triple {78823#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78872#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:03,605 INFO L290 TraceCheckUtils]: 18: Hoare triple {78872#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {78872#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:03,605 INFO L272 TraceCheckUtils]: 19: Hoare triple {78872#(<= ~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)); {78872#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:03,605 INFO L290 TraceCheckUtils]: 20: Hoare triple {78872#(<= ~counter~0 1)} ~cond := #in~cond; {78872#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:03,606 INFO L290 TraceCheckUtils]: 21: Hoare triple {78872#(<= ~counter~0 1)} assume !(0 == ~cond); {78872#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:03,606 INFO L290 TraceCheckUtils]: 22: Hoare triple {78872#(<= ~counter~0 1)} assume true; {78872#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:03,606 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {78872#(<= ~counter~0 1)} {78872#(<= ~counter~0 1)} #94#return; {78872#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:03,607 INFO L290 TraceCheckUtils]: 24: Hoare triple {78872#(<= ~counter~0 1)} assume !!(0 != ~r~0); {78872#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:03,608 INFO L290 TraceCheckUtils]: 25: Hoare triple {78872#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {78897#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:03,608 INFO L290 TraceCheckUtils]: 26: Hoare triple {78897#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {78897#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:03,608 INFO L272 TraceCheckUtils]: 27: Hoare triple {78897#(<= ~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)); {78897#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:03,609 INFO L290 TraceCheckUtils]: 28: Hoare triple {78897#(<= ~counter~0 2)} ~cond := #in~cond; {78897#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:03,609 INFO L290 TraceCheckUtils]: 29: Hoare triple {78897#(<= ~counter~0 2)} assume !(0 == ~cond); {78897#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:03,609 INFO L290 TraceCheckUtils]: 30: Hoare triple {78897#(<= ~counter~0 2)} assume true; {78897#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:03,610 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {78897#(<= ~counter~0 2)} {78897#(<= ~counter~0 2)} #96#return; {78897#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:03,610 INFO L290 TraceCheckUtils]: 32: Hoare triple {78897#(<= ~counter~0 2)} assume !(~r~0 > 0); {78897#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:03,611 INFO L290 TraceCheckUtils]: 33: Hoare triple {78897#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {78922#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:03,611 INFO L290 TraceCheckUtils]: 34: Hoare triple {78922#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {78922#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:03,611 INFO L272 TraceCheckUtils]: 35: Hoare triple {78922#(<= ~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)); {78922#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:03,612 INFO L290 TraceCheckUtils]: 36: Hoare triple {78922#(<= ~counter~0 3)} ~cond := #in~cond; {78922#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:03,612 INFO L290 TraceCheckUtils]: 37: Hoare triple {78922#(<= ~counter~0 3)} assume !(0 == ~cond); {78922#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:03,612 INFO L290 TraceCheckUtils]: 38: Hoare triple {78922#(<= ~counter~0 3)} assume true; {78922#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:03,613 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {78922#(<= ~counter~0 3)} {78922#(<= ~counter~0 3)} #98#return; {78922#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:03,613 INFO L290 TraceCheckUtils]: 40: Hoare triple {78922#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {78922#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:03,614 INFO L290 TraceCheckUtils]: 41: Hoare triple {78922#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {78947#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:03,615 INFO L290 TraceCheckUtils]: 42: Hoare triple {78947#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {78947#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:03,615 INFO L272 TraceCheckUtils]: 43: Hoare triple {78947#(<= ~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)); {78947#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:03,615 INFO L290 TraceCheckUtils]: 44: Hoare triple {78947#(<= ~counter~0 4)} ~cond := #in~cond; {78947#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:03,616 INFO L290 TraceCheckUtils]: 45: Hoare triple {78947#(<= ~counter~0 4)} assume !(0 == ~cond); {78947#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:03,616 INFO L290 TraceCheckUtils]: 46: Hoare triple {78947#(<= ~counter~0 4)} assume true; {78947#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:03,616 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {78947#(<= ~counter~0 4)} {78947#(<= ~counter~0 4)} #98#return; {78947#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:03,617 INFO L290 TraceCheckUtils]: 48: Hoare triple {78947#(<= ~counter~0 4)} assume !(~r~0 < 0); {78947#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:03,618 INFO L290 TraceCheckUtils]: 49: Hoare triple {78947#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78972#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:03,618 INFO L290 TraceCheckUtils]: 50: Hoare triple {78972#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {78972#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:03,618 INFO L272 TraceCheckUtils]: 51: Hoare triple {78972#(<= ~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)); {78972#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:03,619 INFO L290 TraceCheckUtils]: 52: Hoare triple {78972#(<= ~counter~0 5)} ~cond := #in~cond; {78972#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:03,619 INFO L290 TraceCheckUtils]: 53: Hoare triple {78972#(<= ~counter~0 5)} assume !(0 == ~cond); {78972#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:03,619 INFO L290 TraceCheckUtils]: 54: Hoare triple {78972#(<= ~counter~0 5)} assume true; {78972#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:03,620 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {78972#(<= ~counter~0 5)} {78972#(<= ~counter~0 5)} #94#return; {78972#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:03,620 INFO L290 TraceCheckUtils]: 56: Hoare triple {78972#(<= ~counter~0 5)} assume !!(0 != ~r~0); {78972#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:03,621 INFO L290 TraceCheckUtils]: 57: Hoare triple {78972#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {78997#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:03,621 INFO L290 TraceCheckUtils]: 58: Hoare triple {78997#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {78997#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:03,621 INFO L272 TraceCheckUtils]: 59: Hoare triple {78997#(<= ~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)); {78997#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:03,622 INFO L290 TraceCheckUtils]: 60: Hoare triple {78997#(<= ~counter~0 6)} ~cond := #in~cond; {78997#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:03,622 INFO L290 TraceCheckUtils]: 61: Hoare triple {78997#(<= ~counter~0 6)} assume !(0 == ~cond); {78997#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:03,622 INFO L290 TraceCheckUtils]: 62: Hoare triple {78997#(<= ~counter~0 6)} assume true; {78997#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:03,623 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {78997#(<= ~counter~0 6)} {78997#(<= ~counter~0 6)} #96#return; {78997#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:03,623 INFO L290 TraceCheckUtils]: 64: Hoare triple {78997#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {78997#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:03,624 INFO L290 TraceCheckUtils]: 65: Hoare triple {78997#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79022#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:03,624 INFO L290 TraceCheckUtils]: 66: Hoare triple {79022#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {79022#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:03,624 INFO L272 TraceCheckUtils]: 67: Hoare triple {79022#(<= ~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)); {79022#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:03,625 INFO L290 TraceCheckUtils]: 68: Hoare triple {79022#(<= ~counter~0 7)} ~cond := #in~cond; {79022#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:03,625 INFO L290 TraceCheckUtils]: 69: Hoare triple {79022#(<= ~counter~0 7)} assume !(0 == ~cond); {79022#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:03,625 INFO L290 TraceCheckUtils]: 70: Hoare triple {79022#(<= ~counter~0 7)} assume true; {79022#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:03,626 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {79022#(<= ~counter~0 7)} {79022#(<= ~counter~0 7)} #96#return; {79022#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:03,626 INFO L290 TraceCheckUtils]: 72: Hoare triple {79022#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {79022#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:03,627 INFO L290 TraceCheckUtils]: 73: Hoare triple {79022#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:03,627 INFO L290 TraceCheckUtils]: 74: Hoare triple {79047#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:03,627 INFO L272 TraceCheckUtils]: 75: Hoare triple {79047#(<= ~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)); {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:03,628 INFO L290 TraceCheckUtils]: 76: Hoare triple {79047#(<= ~counter~0 8)} ~cond := #in~cond; {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:03,628 INFO L290 TraceCheckUtils]: 77: Hoare triple {79047#(<= ~counter~0 8)} assume !(0 == ~cond); {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:03,628 INFO L290 TraceCheckUtils]: 78: Hoare triple {79047#(<= ~counter~0 8)} assume true; {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:03,629 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {79047#(<= ~counter~0 8)} {79047#(<= ~counter~0 8)} #96#return; {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:03,629 INFO L290 TraceCheckUtils]: 80: Hoare triple {79047#(<= ~counter~0 8)} assume !(~r~0 > 0); {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:03,630 INFO L290 TraceCheckUtils]: 81: Hoare triple {79047#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79072#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:03,630 INFO L290 TraceCheckUtils]: 82: Hoare triple {79072#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {79072#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:03,631 INFO L272 TraceCheckUtils]: 83: Hoare triple {79072#(<= ~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)); {79072#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:03,631 INFO L290 TraceCheckUtils]: 84: Hoare triple {79072#(<= ~counter~0 9)} ~cond := #in~cond; {79072#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:03,631 INFO L290 TraceCheckUtils]: 85: Hoare triple {79072#(<= ~counter~0 9)} assume !(0 == ~cond); {79072#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:03,631 INFO L290 TraceCheckUtils]: 86: Hoare triple {79072#(<= ~counter~0 9)} assume true; {79072#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:03,632 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {79072#(<= ~counter~0 9)} {79072#(<= ~counter~0 9)} #98#return; {79072#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:03,632 INFO L290 TraceCheckUtils]: 88: Hoare triple {79072#(<= ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {79072#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:03,633 INFO L290 TraceCheckUtils]: 89: Hoare triple {79072#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79097#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:03,633 INFO L290 TraceCheckUtils]: 90: Hoare triple {79097#(<= ~counter~0 10)} assume !!(#t~post8 < 20);havoc #t~post8; {79097#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:03,634 INFO L272 TraceCheckUtils]: 91: Hoare triple {79097#(<= ~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)); {79097#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:03,634 INFO L290 TraceCheckUtils]: 92: Hoare triple {79097#(<= ~counter~0 10)} ~cond := #in~cond; {79097#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:03,634 INFO L290 TraceCheckUtils]: 93: Hoare triple {79097#(<= ~counter~0 10)} assume !(0 == ~cond); {79097#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:03,635 INFO L290 TraceCheckUtils]: 94: Hoare triple {79097#(<= ~counter~0 10)} assume true; {79097#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:03,635 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {79097#(<= ~counter~0 10)} {79097#(<= ~counter~0 10)} #98#return; {79097#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:03,635 INFO L290 TraceCheckUtils]: 96: Hoare triple {79097#(<= ~counter~0 10)} assume !(~r~0 < 0); {79097#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:03,636 INFO L290 TraceCheckUtils]: 97: Hoare triple {79097#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79122#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:03,636 INFO L290 TraceCheckUtils]: 98: Hoare triple {79122#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {79122#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:03,637 INFO L272 TraceCheckUtils]: 99: Hoare triple {79122#(<= ~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)); {79122#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:03,637 INFO L290 TraceCheckUtils]: 100: Hoare triple {79122#(<= ~counter~0 11)} ~cond := #in~cond; {79122#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:03,637 INFO L290 TraceCheckUtils]: 101: Hoare triple {79122#(<= ~counter~0 11)} assume !(0 == ~cond); {79122#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:03,638 INFO L290 TraceCheckUtils]: 102: Hoare triple {79122#(<= ~counter~0 11)} assume true; {79122#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:03,638 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {79122#(<= ~counter~0 11)} {79122#(<= ~counter~0 11)} #94#return; {79122#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:03,638 INFO L290 TraceCheckUtils]: 104: Hoare triple {79122#(<= ~counter~0 11)} assume !!(0 != ~r~0); {79122#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:03,639 INFO L290 TraceCheckUtils]: 105: Hoare triple {79122#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79147#(<= |main_#t~post7| 11)} is VALID [2022-04-08 06:09:03,639 INFO L290 TraceCheckUtils]: 106: Hoare triple {79147#(<= |main_#t~post7| 11)} assume !(#t~post7 < 20);havoc #t~post7; {78816#false} is VALID [2022-04-08 06:09:03,639 INFO L290 TraceCheckUtils]: 107: Hoare triple {78816#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {78816#false} is VALID [2022-04-08 06:09:03,639 INFO L290 TraceCheckUtils]: 108: Hoare triple {78816#false} assume !(#t~post8 < 20);havoc #t~post8; {78816#false} is VALID [2022-04-08 06:09:03,639 INFO L290 TraceCheckUtils]: 109: Hoare triple {78816#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78816#false} is VALID [2022-04-08 06:09:03,639 INFO L290 TraceCheckUtils]: 110: Hoare triple {78816#false} assume !(#t~post6 < 20);havoc #t~post6; {78816#false} is VALID [2022-04-08 06:09:03,639 INFO L272 TraceCheckUtils]: 111: Hoare triple {78816#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)); {78816#false} is VALID [2022-04-08 06:09:03,640 INFO L290 TraceCheckUtils]: 112: Hoare triple {78816#false} ~cond := #in~cond; {78816#false} is VALID [2022-04-08 06:09:03,640 INFO L290 TraceCheckUtils]: 113: Hoare triple {78816#false} assume 0 == ~cond; {78816#false} is VALID [2022-04-08 06:09:03,640 INFO L290 TraceCheckUtils]: 114: Hoare triple {78816#false} assume !false; {78816#false} is VALID [2022-04-08 06:09:03,640 INFO L134 CoverageAnalysis]: Checked inductivity of 328 backedges. 36 proven. 288 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:09:03,640 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:09:04,207 INFO L290 TraceCheckUtils]: 114: Hoare triple {78816#false} assume !false; {78816#false} is VALID [2022-04-08 06:09:04,207 INFO L290 TraceCheckUtils]: 113: Hoare triple {78816#false} assume 0 == ~cond; {78816#false} is VALID [2022-04-08 06:09:04,207 INFO L290 TraceCheckUtils]: 112: Hoare triple {78816#false} ~cond := #in~cond; {78816#false} is VALID [2022-04-08 06:09:04,207 INFO L272 TraceCheckUtils]: 111: Hoare triple {78816#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)); {78816#false} is VALID [2022-04-08 06:09:04,207 INFO L290 TraceCheckUtils]: 110: Hoare triple {78816#false} assume !(#t~post6 < 20);havoc #t~post6; {78816#false} is VALID [2022-04-08 06:09:04,207 INFO L290 TraceCheckUtils]: 109: Hoare triple {78816#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78816#false} is VALID [2022-04-08 06:09:04,207 INFO L290 TraceCheckUtils]: 108: Hoare triple {78816#false} assume !(#t~post8 < 20);havoc #t~post8; {78816#false} is VALID [2022-04-08 06:09:04,207 INFO L290 TraceCheckUtils]: 107: Hoare triple {78816#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {78816#false} is VALID [2022-04-08 06:09:04,208 INFO L290 TraceCheckUtils]: 106: Hoare triple {79199#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {78816#false} is VALID [2022-04-08 06:09:04,208 INFO L290 TraceCheckUtils]: 105: Hoare triple {79203#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79199#(< |main_#t~post7| 20)} is VALID [2022-04-08 06:09:04,208 INFO L290 TraceCheckUtils]: 104: Hoare triple {79203#(< ~counter~0 20)} assume !!(0 != ~r~0); {79203#(< ~counter~0 20)} is VALID [2022-04-08 06:09:04,209 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {78815#true} {79203#(< ~counter~0 20)} #94#return; {79203#(< ~counter~0 20)} is VALID [2022-04-08 06:09:04,209 INFO L290 TraceCheckUtils]: 102: Hoare triple {78815#true} assume true; {78815#true} is VALID [2022-04-08 06:09:04,209 INFO L290 TraceCheckUtils]: 101: Hoare triple {78815#true} assume !(0 == ~cond); {78815#true} is VALID [2022-04-08 06:09:04,209 INFO L290 TraceCheckUtils]: 100: Hoare triple {78815#true} ~cond := #in~cond; {78815#true} is VALID [2022-04-08 06:09:04,209 INFO L272 TraceCheckUtils]: 99: Hoare triple {79203#(< ~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)); {78815#true} is VALID [2022-04-08 06:09:04,209 INFO L290 TraceCheckUtils]: 98: Hoare triple {79203#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {79203#(< ~counter~0 20)} is VALID [2022-04-08 06:09:04,211 INFO L290 TraceCheckUtils]: 97: Hoare triple {79228#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79203#(< ~counter~0 20)} is VALID [2022-04-08 06:09:04,211 INFO L290 TraceCheckUtils]: 96: Hoare triple {79228#(< ~counter~0 19)} assume !(~r~0 < 0); {79228#(< ~counter~0 19)} is VALID [2022-04-08 06:09:04,212 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {78815#true} {79228#(< ~counter~0 19)} #98#return; {79228#(< ~counter~0 19)} is VALID [2022-04-08 06:09:04,212 INFO L290 TraceCheckUtils]: 94: Hoare triple {78815#true} assume true; {78815#true} is VALID [2022-04-08 06:09:04,212 INFO L290 TraceCheckUtils]: 93: Hoare triple {78815#true} assume !(0 == ~cond); {78815#true} is VALID [2022-04-08 06:09:04,212 INFO L290 TraceCheckUtils]: 92: Hoare triple {78815#true} ~cond := #in~cond; {78815#true} is VALID [2022-04-08 06:09:04,212 INFO L272 TraceCheckUtils]: 91: Hoare triple {79228#(< ~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)); {78815#true} is VALID [2022-04-08 06:09:04,212 INFO L290 TraceCheckUtils]: 90: Hoare triple {79228#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {79228#(< ~counter~0 19)} is VALID [2022-04-08 06:09:04,213 INFO L290 TraceCheckUtils]: 89: Hoare triple {79253#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79228#(< ~counter~0 19)} is VALID [2022-04-08 06:09:04,213 INFO L290 TraceCheckUtils]: 88: Hoare triple {79253#(< ~counter~0 18)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {79253#(< ~counter~0 18)} is VALID [2022-04-08 06:09:04,214 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {78815#true} {79253#(< ~counter~0 18)} #98#return; {79253#(< ~counter~0 18)} is VALID [2022-04-08 06:09:04,214 INFO L290 TraceCheckUtils]: 86: Hoare triple {78815#true} assume true; {78815#true} is VALID [2022-04-08 06:09:04,214 INFO L290 TraceCheckUtils]: 85: Hoare triple {78815#true} assume !(0 == ~cond); {78815#true} is VALID [2022-04-08 06:09:04,214 INFO L290 TraceCheckUtils]: 84: Hoare triple {78815#true} ~cond := #in~cond; {78815#true} is VALID [2022-04-08 06:09:04,214 INFO L272 TraceCheckUtils]: 83: Hoare triple {79253#(< ~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)); {78815#true} is VALID [2022-04-08 06:09:04,214 INFO L290 TraceCheckUtils]: 82: Hoare triple {79253#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {79253#(< ~counter~0 18)} is VALID [2022-04-08 06:09:04,215 INFO L290 TraceCheckUtils]: 81: Hoare triple {79278#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79253#(< ~counter~0 18)} is VALID [2022-04-08 06:09:04,215 INFO L290 TraceCheckUtils]: 80: Hoare triple {79278#(< ~counter~0 17)} assume !(~r~0 > 0); {79278#(< ~counter~0 17)} is VALID [2022-04-08 06:09:04,216 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {78815#true} {79278#(< ~counter~0 17)} #96#return; {79278#(< ~counter~0 17)} is VALID [2022-04-08 06:09:04,216 INFO L290 TraceCheckUtils]: 78: Hoare triple {78815#true} assume true; {78815#true} is VALID [2022-04-08 06:09:04,216 INFO L290 TraceCheckUtils]: 77: Hoare triple {78815#true} assume !(0 == ~cond); {78815#true} is VALID [2022-04-08 06:09:04,216 INFO L290 TraceCheckUtils]: 76: Hoare triple {78815#true} ~cond := #in~cond; {78815#true} is VALID [2022-04-08 06:09:04,216 INFO L272 TraceCheckUtils]: 75: Hoare triple {79278#(< ~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)); {78815#true} is VALID [2022-04-08 06:09:04,224 INFO L290 TraceCheckUtils]: 74: Hoare triple {79278#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {79278#(< ~counter~0 17)} is VALID [2022-04-08 06:09:04,225 INFO L290 TraceCheckUtils]: 73: Hoare triple {79303#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79278#(< ~counter~0 17)} is VALID [2022-04-08 06:09:04,226 INFO L290 TraceCheckUtils]: 72: Hoare triple {79303#(< ~counter~0 16)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {79303#(< ~counter~0 16)} is VALID [2022-04-08 06:09:04,226 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {78815#true} {79303#(< ~counter~0 16)} #96#return; {79303#(< ~counter~0 16)} is VALID [2022-04-08 06:09:04,226 INFO L290 TraceCheckUtils]: 70: Hoare triple {78815#true} assume true; {78815#true} is VALID [2022-04-08 06:09:04,226 INFO L290 TraceCheckUtils]: 69: Hoare triple {78815#true} assume !(0 == ~cond); {78815#true} is VALID [2022-04-08 06:09:04,226 INFO L290 TraceCheckUtils]: 68: Hoare triple {78815#true} ~cond := #in~cond; {78815#true} is VALID [2022-04-08 06:09:04,226 INFO L272 TraceCheckUtils]: 67: Hoare triple {79303#(< ~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)); {78815#true} is VALID [2022-04-08 06:09:04,227 INFO L290 TraceCheckUtils]: 66: Hoare triple {79303#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {79303#(< ~counter~0 16)} is VALID [2022-04-08 06:09:04,227 INFO L290 TraceCheckUtils]: 65: Hoare triple {79328#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79303#(< ~counter~0 16)} is VALID [2022-04-08 06:09:04,228 INFO L290 TraceCheckUtils]: 64: Hoare triple {79328#(< ~counter~0 15)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {79328#(< ~counter~0 15)} is VALID [2022-04-08 06:09:04,228 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {78815#true} {79328#(< ~counter~0 15)} #96#return; {79328#(< ~counter~0 15)} is VALID [2022-04-08 06:09:04,228 INFO L290 TraceCheckUtils]: 62: Hoare triple {78815#true} assume true; {78815#true} is VALID [2022-04-08 06:09:04,228 INFO L290 TraceCheckUtils]: 61: Hoare triple {78815#true} assume !(0 == ~cond); {78815#true} is VALID [2022-04-08 06:09:04,228 INFO L290 TraceCheckUtils]: 60: Hoare triple {78815#true} ~cond := #in~cond; {78815#true} is VALID [2022-04-08 06:09:04,229 INFO L272 TraceCheckUtils]: 59: Hoare triple {79328#(< ~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)); {78815#true} is VALID [2022-04-08 06:09:04,229 INFO L290 TraceCheckUtils]: 58: Hoare triple {79328#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {79328#(< ~counter~0 15)} is VALID [2022-04-08 06:09:04,230 INFO L290 TraceCheckUtils]: 57: Hoare triple {79353#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79328#(< ~counter~0 15)} is VALID [2022-04-08 06:09:04,230 INFO L290 TraceCheckUtils]: 56: Hoare triple {79353#(< ~counter~0 14)} assume !!(0 != ~r~0); {79353#(< ~counter~0 14)} is VALID [2022-04-08 06:09:04,230 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {78815#true} {79353#(< ~counter~0 14)} #94#return; {79353#(< ~counter~0 14)} is VALID [2022-04-08 06:09:04,230 INFO L290 TraceCheckUtils]: 54: Hoare triple {78815#true} assume true; {78815#true} is VALID [2022-04-08 06:09:04,231 INFO L290 TraceCheckUtils]: 53: Hoare triple {78815#true} assume !(0 == ~cond); {78815#true} is VALID [2022-04-08 06:09:04,231 INFO L290 TraceCheckUtils]: 52: Hoare triple {78815#true} ~cond := #in~cond; {78815#true} is VALID [2022-04-08 06:09:04,231 INFO L272 TraceCheckUtils]: 51: Hoare triple {79353#(< ~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)); {78815#true} is VALID [2022-04-08 06:09:04,231 INFO L290 TraceCheckUtils]: 50: Hoare triple {79353#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {79353#(< ~counter~0 14)} is VALID [2022-04-08 06:09:04,232 INFO L290 TraceCheckUtils]: 49: Hoare triple {79378#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79353#(< ~counter~0 14)} is VALID [2022-04-08 06:09:04,232 INFO L290 TraceCheckUtils]: 48: Hoare triple {79378#(< ~counter~0 13)} assume !(~r~0 < 0); {79378#(< ~counter~0 13)} is VALID [2022-04-08 06:09:04,232 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {78815#true} {79378#(< ~counter~0 13)} #98#return; {79378#(< ~counter~0 13)} is VALID [2022-04-08 06:09:04,233 INFO L290 TraceCheckUtils]: 46: Hoare triple {78815#true} assume true; {78815#true} is VALID [2022-04-08 06:09:04,233 INFO L290 TraceCheckUtils]: 45: Hoare triple {78815#true} assume !(0 == ~cond); {78815#true} is VALID [2022-04-08 06:09:04,233 INFO L290 TraceCheckUtils]: 44: Hoare triple {78815#true} ~cond := #in~cond; {78815#true} is VALID [2022-04-08 06:09:04,233 INFO L272 TraceCheckUtils]: 43: Hoare triple {79378#(< ~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)); {78815#true} is VALID [2022-04-08 06:09:04,233 INFO L290 TraceCheckUtils]: 42: Hoare triple {79378#(< ~counter~0 13)} assume !!(#t~post8 < 20);havoc #t~post8; {79378#(< ~counter~0 13)} is VALID [2022-04-08 06:09:04,234 INFO L290 TraceCheckUtils]: 41: Hoare triple {79122#(<= ~counter~0 11)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79378#(< ~counter~0 13)} is VALID [2022-04-08 06:09:04,234 INFO L290 TraceCheckUtils]: 40: Hoare triple {79122#(<= ~counter~0 11)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {79122#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:04,234 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {78815#true} {79122#(<= ~counter~0 11)} #98#return; {79122#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:04,235 INFO L290 TraceCheckUtils]: 38: Hoare triple {78815#true} assume true; {78815#true} is VALID [2022-04-08 06:09:04,235 INFO L290 TraceCheckUtils]: 37: Hoare triple {78815#true} assume !(0 == ~cond); {78815#true} is VALID [2022-04-08 06:09:04,235 INFO L290 TraceCheckUtils]: 36: Hoare triple {78815#true} ~cond := #in~cond; {78815#true} is VALID [2022-04-08 06:09:04,235 INFO L272 TraceCheckUtils]: 35: Hoare triple {79122#(<= ~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)); {78815#true} is VALID [2022-04-08 06:09:04,235 INFO L290 TraceCheckUtils]: 34: Hoare triple {79122#(<= ~counter~0 11)} assume !!(#t~post8 < 20);havoc #t~post8; {79122#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:04,236 INFO L290 TraceCheckUtils]: 33: Hoare triple {79097#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79122#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:04,236 INFO L290 TraceCheckUtils]: 32: Hoare triple {79097#(<= ~counter~0 10)} assume !(~r~0 > 0); {79097#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:04,237 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {78815#true} {79097#(<= ~counter~0 10)} #96#return; {79097#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:04,237 INFO L290 TraceCheckUtils]: 30: Hoare triple {78815#true} assume true; {78815#true} is VALID [2022-04-08 06:09:04,237 INFO L290 TraceCheckUtils]: 29: Hoare triple {78815#true} assume !(0 == ~cond); {78815#true} is VALID [2022-04-08 06:09:04,237 INFO L290 TraceCheckUtils]: 28: Hoare triple {78815#true} ~cond := #in~cond; {78815#true} is VALID [2022-04-08 06:09:04,237 INFO L272 TraceCheckUtils]: 27: Hoare triple {79097#(<= ~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)); {78815#true} is VALID [2022-04-08 06:09:04,237 INFO L290 TraceCheckUtils]: 26: Hoare triple {79097#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {79097#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:04,238 INFO L290 TraceCheckUtils]: 25: Hoare triple {79072#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79097#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:04,238 INFO L290 TraceCheckUtils]: 24: Hoare triple {79072#(<= ~counter~0 9)} assume !!(0 != ~r~0); {79072#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:04,239 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {78815#true} {79072#(<= ~counter~0 9)} #94#return; {79072#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:04,239 INFO L290 TraceCheckUtils]: 22: Hoare triple {78815#true} assume true; {78815#true} is VALID [2022-04-08 06:09:04,239 INFO L290 TraceCheckUtils]: 21: Hoare triple {78815#true} assume !(0 == ~cond); {78815#true} is VALID [2022-04-08 06:09:04,239 INFO L290 TraceCheckUtils]: 20: Hoare triple {78815#true} ~cond := #in~cond; {78815#true} is VALID [2022-04-08 06:09:04,239 INFO L272 TraceCheckUtils]: 19: Hoare triple {79072#(<= ~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)); {78815#true} is VALID [2022-04-08 06:09:04,239 INFO L290 TraceCheckUtils]: 18: Hoare triple {79072#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {79072#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:04,240 INFO L290 TraceCheckUtils]: 17: Hoare triple {79047#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79072#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:04,240 INFO L290 TraceCheckUtils]: 16: Hoare triple {79047#(<= ~counter~0 8)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:04,241 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {78815#true} {79047#(<= ~counter~0 8)} #92#return; {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:04,241 INFO L290 TraceCheckUtils]: 14: Hoare triple {78815#true} assume true; {78815#true} is VALID [2022-04-08 06:09:04,241 INFO L290 TraceCheckUtils]: 13: Hoare triple {78815#true} assume !(0 == ~cond); {78815#true} is VALID [2022-04-08 06:09:04,241 INFO L290 TraceCheckUtils]: 12: Hoare triple {78815#true} ~cond := #in~cond; {78815#true} is VALID [2022-04-08 06:09:04,241 INFO L272 TraceCheckUtils]: 11: Hoare triple {79047#(<= ~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)); {78815#true} is VALID [2022-04-08 06:09:04,241 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {78815#true} {79047#(<= ~counter~0 8)} #90#return; {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:04,241 INFO L290 TraceCheckUtils]: 9: Hoare triple {78815#true} assume true; {78815#true} is VALID [2022-04-08 06:09:04,241 INFO L290 TraceCheckUtils]: 8: Hoare triple {78815#true} assume !(0 == ~cond); {78815#true} is VALID [2022-04-08 06:09:04,241 INFO L290 TraceCheckUtils]: 7: Hoare triple {78815#true} ~cond := #in~cond; {78815#true} is VALID [2022-04-08 06:09:04,242 INFO L272 TraceCheckUtils]: 6: Hoare triple {79047#(<= ~counter~0 8)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {78815#true} is VALID [2022-04-08 06:09:04,242 INFO L290 TraceCheckUtils]: 5: Hoare triple {79047#(<= ~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; {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:04,242 INFO L272 TraceCheckUtils]: 4: Hoare triple {79047#(<= ~counter~0 8)} call #t~ret9 := main(); {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:04,242 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {79047#(<= ~counter~0 8)} {78815#true} #102#return; {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:04,243 INFO L290 TraceCheckUtils]: 2: Hoare triple {79047#(<= ~counter~0 8)} assume true; {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:04,243 INFO L290 TraceCheckUtils]: 1: Hoare triple {78815#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {79047#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:04,243 INFO L272 TraceCheckUtils]: 0: Hoare triple {78815#true} call ULTIMATE.init(); {78815#true} is VALID [2022-04-08 06:09:04,243 INFO L134 CoverageAnalysis]: Checked inductivity of 328 backedges. 36 proven. 68 refuted. 0 times theorem prover too weak. 224 trivial. 0 not checked. [2022-04-08 06:09:04,244 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:09:04,244 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1741490499] [2022-04-08 06:09:04,244 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:09:04,244 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [156289257] [2022-04-08 06:09:04,244 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [156289257] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:09:04,244 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:09:04,244 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 24 [2022-04-08 06:09:04,244 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:09:04,244 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [241620734] [2022-04-08 06:09:04,244 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [241620734] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:09:04,244 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:09:04,244 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-08 06:09:04,244 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [289373239] [2022-04-08 06:09:04,245 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:09:04,245 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 5.466666666666667) internal successors, (82), 14 states have internal predecessors, (82), 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 115 [2022-04-08 06:09:04,245 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:09:04,245 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 5.466666666666667) internal successors, (82), 14 states have internal predecessors, (82), 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:09:04,344 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:04,345 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-08 06:09:04,345 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:09:04,345 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-08 06:09:04,345 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:09:04,345 INFO L87 Difference]: Start difference. First operand 610 states and 814 transitions. Second operand has 15 states, 15 states have (on average 5.466666666666667) internal successors, (82), 14 states have internal predecessors, (82), 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:09:07,024 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:07,024 INFO L93 Difference]: Finished difference Result 827 states and 1141 transitions. [2022-04-08 06:09:07,024 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2022-04-08 06:09:07,024 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 5.466666666666667) internal successors, (82), 14 states have internal predecessors, (82), 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 115 [2022-04-08 06:09:07,024 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:09:07,024 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 5.466666666666667) internal successors, (82), 14 states have internal predecessors, (82), 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:09:07,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 256 transitions. [2022-04-08 06:09:07,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 5.466666666666667) internal successors, (82), 14 states have internal predecessors, (82), 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:09:07,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 256 transitions. [2022-04-08 06:09:07,028 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 25 states and 256 transitions. [2022-04-08 06:09:07,251 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 256 edges. 256 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:07,270 INFO L225 Difference]: With dead ends: 827 [2022-04-08 06:09:07,270 INFO L226 Difference]: Without dead ends: 626 [2022-04-08 06:09:07,271 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 239 GetRequests, 206 SyntacticMatches, 1 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 83 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=456, Invalid=666, Unknown=0, NotChecked=0, Total=1122 [2022-04-08 06:09:07,271 INFO L913 BasicCegarLoop]: 63 mSDtfsCounter, 149 mSDsluCounter, 207 mSDsCounter, 0 mSdLazyCounter, 153 mSolverCounterSat, 155 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 149 SdHoareTripleChecker+Valid, 270 SdHoareTripleChecker+Invalid, 308 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 155 IncrementalHoareTripleChecker+Valid, 153 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-08 06:09:07,271 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [149 Valid, 270 Invalid, 308 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [155 Valid, 153 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-08 06:09:07,274 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 626 states. [2022-04-08 06:09:08,935 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 626 to 626. [2022-04-08 06:09:08,935 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:09:08,936 INFO L82 GeneralOperation]: Start isEquivalent. First operand 626 states. Second operand has 626 states, 476 states have (on average 1.2142857142857142) internal successors, (578), 476 states have internal predecessors, (578), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 125 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:09:08,937 INFO L74 IsIncluded]: Start isIncluded. First operand 626 states. Second operand has 626 states, 476 states have (on average 1.2142857142857142) internal successors, (578), 476 states have internal predecessors, (578), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 125 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:09:08,937 INFO L87 Difference]: Start difference. First operand 626 states. Second operand has 626 states, 476 states have (on average 1.2142857142857142) internal successors, (578), 476 states have internal predecessors, (578), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 125 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:09:08,952 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:08,952 INFO L93 Difference]: Finished difference Result 626 states and 830 transitions. [2022-04-08 06:09:08,952 INFO L276 IsEmpty]: Start isEmpty. Operand 626 states and 830 transitions. [2022-04-08 06:09:08,952 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:09:08,953 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:09:08,953 INFO L74 IsIncluded]: Start isIncluded. First operand has 626 states, 476 states have (on average 1.2142857142857142) internal successors, (578), 476 states have internal predecessors, (578), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 125 states have call predecessors, (125), 125 states have call successors, (125) Second operand 626 states. [2022-04-08 06:09:08,954 INFO L87 Difference]: Start difference. First operand has 626 states, 476 states have (on average 1.2142857142857142) internal successors, (578), 476 states have internal predecessors, (578), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 125 states have call predecessors, (125), 125 states have call successors, (125) Second operand 626 states. [2022-04-08 06:09:08,968 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:08,969 INFO L93 Difference]: Finished difference Result 626 states and 830 transitions. [2022-04-08 06:09:08,969 INFO L276 IsEmpty]: Start isEmpty. Operand 626 states and 830 transitions. [2022-04-08 06:09:08,969 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:09:08,969 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:09:08,969 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:09:08,969 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:09:08,970 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 626 states, 476 states have (on average 1.2142857142857142) internal successors, (578), 476 states have internal predecessors, (578), 127 states have call successors, (127), 24 states have call predecessors, (127), 22 states have return successors, (125), 125 states have call predecessors, (125), 125 states have call successors, (125) [2022-04-08 06:09:08,997 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 626 states to 626 states and 830 transitions. [2022-04-08 06:09:08,997 INFO L78 Accepts]: Start accepts. Automaton has 626 states and 830 transitions. Word has length 115 [2022-04-08 06:09:08,997 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:09:08,997 INFO L478 AbstractCegarLoop]: Abstraction has 626 states and 830 transitions. [2022-04-08 06:09:08,998 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 5.466666666666667) internal successors, (82), 14 states have internal predecessors, (82), 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:09:08,998 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 626 states and 830 transitions. [2022-04-08 06:09:24,489 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 830 edges. 829 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:24,489 INFO L276 IsEmpty]: Start isEmpty. Operand 626 states and 830 transitions. [2022-04-08 06:09:24,490 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 120 [2022-04-08 06:09:24,490 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:09:24,490 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 6, 6, 6, 6, 4, 4, 4, 4, 4, 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:09:24,495 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Forceful destruction successful, exit code 0 [2022-04-08 06:09:24,691 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 39 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable37 [2022-04-08 06:09:24,691 INFO L403 AbstractCegarLoop]: === Iteration 39 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:09:24,691 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:09:24,691 INFO L85 PathProgramCache]: Analyzing trace with hash 650985841, now seen corresponding path program 7 times [2022-04-08 06:09:24,691 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:09:24,691 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [22824766] [2022-04-08 06:09:24,692 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:09:24,692 INFO L85 PathProgramCache]: Analyzing trace with hash 650985841, now seen corresponding path program 8 times [2022-04-08 06:09:24,692 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:09:24,692 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [576543397] [2022-04-08 06:09:24,692 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:09:24,692 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:09:24,704 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:09:24,705 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1759655662] [2022-04-08 06:09:24,705 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:09:24,705 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:09:24,705 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:09:24,706 INFO L229 MonitoredProcess]: Starting monitored process 40 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:09:24,707 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Waiting until timeout for monitored process [2022-04-08 06:09:24,769 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:09:24,769 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:09:24,770 INFO L263 TraceCheckSpWp]: Trace formula consists of 297 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-08 06:09:24,793 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:09:24,794 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:09:25,367 INFO L272 TraceCheckUtils]: 0: Hoare triple {83706#true} call ULTIMATE.init(); {83706#true} is VALID [2022-04-08 06:09:25,367 INFO L290 TraceCheckUtils]: 1: Hoare triple {83706#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,367 INFO L290 TraceCheckUtils]: 2: Hoare triple {83714#(<= ~counter~0 0)} assume true; {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,368 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {83714#(<= ~counter~0 0)} {83706#true} #102#return; {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,368 INFO L272 TraceCheckUtils]: 4: Hoare triple {83714#(<= ~counter~0 0)} call #t~ret9 := main(); {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,368 INFO L290 TraceCheckUtils]: 5: Hoare triple {83714#(<= ~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; {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,369 INFO L272 TraceCheckUtils]: 6: Hoare triple {83714#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,369 INFO L290 TraceCheckUtils]: 7: Hoare triple {83714#(<= ~counter~0 0)} ~cond := #in~cond; {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,369 INFO L290 TraceCheckUtils]: 8: Hoare triple {83714#(<= ~counter~0 0)} assume !(0 == ~cond); {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,369 INFO L290 TraceCheckUtils]: 9: Hoare triple {83714#(<= ~counter~0 0)} assume true; {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,370 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {83714#(<= ~counter~0 0)} {83714#(<= ~counter~0 0)} #90#return; {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,370 INFO L272 TraceCheckUtils]: 11: Hoare triple {83714#(<= ~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)); {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,370 INFO L290 TraceCheckUtils]: 12: Hoare triple {83714#(<= ~counter~0 0)} ~cond := #in~cond; {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,371 INFO L290 TraceCheckUtils]: 13: Hoare triple {83714#(<= ~counter~0 0)} assume !(0 == ~cond); {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,371 INFO L290 TraceCheckUtils]: 14: Hoare triple {83714#(<= ~counter~0 0)} assume true; {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,371 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {83714#(<= ~counter~0 0)} {83714#(<= ~counter~0 0)} #92#return; {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,372 INFO L290 TraceCheckUtils]: 16: Hoare triple {83714#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {83714#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:25,373 INFO L290 TraceCheckUtils]: 17: Hoare triple {83714#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {83763#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:25,374 INFO L290 TraceCheckUtils]: 18: Hoare triple {83763#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {83763#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:25,374 INFO L272 TraceCheckUtils]: 19: Hoare triple {83763#(<= ~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)); {83763#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:25,374 INFO L290 TraceCheckUtils]: 20: Hoare triple {83763#(<= ~counter~0 1)} ~cond := #in~cond; {83763#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:25,379 INFO L290 TraceCheckUtils]: 21: Hoare triple {83763#(<= ~counter~0 1)} assume !(0 == ~cond); {83763#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:25,380 INFO L290 TraceCheckUtils]: 22: Hoare triple {83763#(<= ~counter~0 1)} assume true; {83763#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:25,380 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {83763#(<= ~counter~0 1)} {83763#(<= ~counter~0 1)} #94#return; {83763#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:25,381 INFO L290 TraceCheckUtils]: 24: Hoare triple {83763#(<= ~counter~0 1)} assume !!(0 != ~r~0); {83763#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:25,382 INFO L290 TraceCheckUtils]: 25: Hoare triple {83763#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {83788#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:25,382 INFO L290 TraceCheckUtils]: 26: Hoare triple {83788#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {83788#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:25,383 INFO L272 TraceCheckUtils]: 27: Hoare triple {83788#(<= ~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)); {83788#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:25,383 INFO L290 TraceCheckUtils]: 28: Hoare triple {83788#(<= ~counter~0 2)} ~cond := #in~cond; {83788#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:25,383 INFO L290 TraceCheckUtils]: 29: Hoare triple {83788#(<= ~counter~0 2)} assume !(0 == ~cond); {83788#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:25,383 INFO L290 TraceCheckUtils]: 30: Hoare triple {83788#(<= ~counter~0 2)} assume true; {83788#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:25,384 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {83788#(<= ~counter~0 2)} {83788#(<= ~counter~0 2)} #96#return; {83788#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:25,384 INFO L290 TraceCheckUtils]: 32: Hoare triple {83788#(<= ~counter~0 2)} assume !(~r~0 > 0); {83788#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:25,386 INFO L290 TraceCheckUtils]: 33: Hoare triple {83788#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {83813#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:25,386 INFO L290 TraceCheckUtils]: 34: Hoare triple {83813#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {83813#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:25,387 INFO L272 TraceCheckUtils]: 35: Hoare triple {83813#(<= ~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)); {83813#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:25,387 INFO L290 TraceCheckUtils]: 36: Hoare triple {83813#(<= ~counter~0 3)} ~cond := #in~cond; {83813#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:25,387 INFO L290 TraceCheckUtils]: 37: Hoare triple {83813#(<= ~counter~0 3)} assume !(0 == ~cond); {83813#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:25,387 INFO L290 TraceCheckUtils]: 38: Hoare triple {83813#(<= ~counter~0 3)} assume true; {83813#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:25,388 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {83813#(<= ~counter~0 3)} {83813#(<= ~counter~0 3)} #98#return; {83813#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:25,388 INFO L290 TraceCheckUtils]: 40: Hoare triple {83813#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {83813#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:25,389 INFO L290 TraceCheckUtils]: 41: Hoare triple {83813#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {83838#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:25,389 INFO L290 TraceCheckUtils]: 42: Hoare triple {83838#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {83838#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:25,390 INFO L272 TraceCheckUtils]: 43: Hoare triple {83838#(<= ~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)); {83838#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:25,390 INFO L290 TraceCheckUtils]: 44: Hoare triple {83838#(<= ~counter~0 4)} ~cond := #in~cond; {83838#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:25,390 INFO L290 TraceCheckUtils]: 45: Hoare triple {83838#(<= ~counter~0 4)} assume !(0 == ~cond); {83838#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:25,391 INFO L290 TraceCheckUtils]: 46: Hoare triple {83838#(<= ~counter~0 4)} assume true; {83838#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:25,391 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {83838#(<= ~counter~0 4)} {83838#(<= ~counter~0 4)} #98#return; {83838#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:25,392 INFO L290 TraceCheckUtils]: 48: Hoare triple {83838#(<= ~counter~0 4)} assume !(~r~0 < 0); {83838#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:25,393 INFO L290 TraceCheckUtils]: 49: Hoare triple {83838#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {83863#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:25,393 INFO L290 TraceCheckUtils]: 50: Hoare triple {83863#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {83863#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:25,393 INFO L272 TraceCheckUtils]: 51: Hoare triple {83863#(<= ~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)); {83863#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:25,394 INFO L290 TraceCheckUtils]: 52: Hoare triple {83863#(<= ~counter~0 5)} ~cond := #in~cond; {83863#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:25,394 INFO L290 TraceCheckUtils]: 53: Hoare triple {83863#(<= ~counter~0 5)} assume !(0 == ~cond); {83863#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:25,394 INFO L290 TraceCheckUtils]: 54: Hoare triple {83863#(<= ~counter~0 5)} assume true; {83863#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:25,395 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {83863#(<= ~counter~0 5)} {83863#(<= ~counter~0 5)} #94#return; {83863#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:25,395 INFO L290 TraceCheckUtils]: 56: Hoare triple {83863#(<= ~counter~0 5)} assume !!(0 != ~r~0); {83863#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:25,396 INFO L290 TraceCheckUtils]: 57: Hoare triple {83863#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {83888#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:25,397 INFO L290 TraceCheckUtils]: 58: Hoare triple {83888#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {83888#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:25,397 INFO L272 TraceCheckUtils]: 59: Hoare triple {83888#(<= ~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)); {83888#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:25,398 INFO L290 TraceCheckUtils]: 60: Hoare triple {83888#(<= ~counter~0 6)} ~cond := #in~cond; {83888#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:25,398 INFO L290 TraceCheckUtils]: 61: Hoare triple {83888#(<= ~counter~0 6)} assume !(0 == ~cond); {83888#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:25,398 INFO L290 TraceCheckUtils]: 62: Hoare triple {83888#(<= ~counter~0 6)} assume true; {83888#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:25,399 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {83888#(<= ~counter~0 6)} {83888#(<= ~counter~0 6)} #96#return; {83888#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:25,399 INFO L290 TraceCheckUtils]: 64: Hoare triple {83888#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {83888#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:25,400 INFO L290 TraceCheckUtils]: 65: Hoare triple {83888#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:25,401 INFO L290 TraceCheckUtils]: 66: Hoare triple {83913#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:25,401 INFO L272 TraceCheckUtils]: 67: Hoare triple {83913#(<= ~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)); {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:25,402 INFO L290 TraceCheckUtils]: 68: Hoare triple {83913#(<= ~counter~0 7)} ~cond := #in~cond; {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:25,402 INFO L290 TraceCheckUtils]: 69: Hoare triple {83913#(<= ~counter~0 7)} assume !(0 == ~cond); {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:25,402 INFO L290 TraceCheckUtils]: 70: Hoare triple {83913#(<= ~counter~0 7)} assume true; {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:25,403 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {83913#(<= ~counter~0 7)} {83913#(<= ~counter~0 7)} #96#return; {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:25,403 INFO L290 TraceCheckUtils]: 72: Hoare triple {83913#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:25,405 INFO L290 TraceCheckUtils]: 73: Hoare triple {83913#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {83938#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:25,405 INFO L290 TraceCheckUtils]: 74: Hoare triple {83938#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {83938#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:25,405 INFO L272 TraceCheckUtils]: 75: Hoare triple {83938#(<= ~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)); {83938#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:25,406 INFO L290 TraceCheckUtils]: 76: Hoare triple {83938#(<= ~counter~0 8)} ~cond := #in~cond; {83938#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:25,406 INFO L290 TraceCheckUtils]: 77: Hoare triple {83938#(<= ~counter~0 8)} assume !(0 == ~cond); {83938#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:25,406 INFO L290 TraceCheckUtils]: 78: Hoare triple {83938#(<= ~counter~0 8)} assume true; {83938#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:25,407 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {83938#(<= ~counter~0 8)} {83938#(<= ~counter~0 8)} #96#return; {83938#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:25,407 INFO L290 TraceCheckUtils]: 80: Hoare triple {83938#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {83938#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:25,408 INFO L290 TraceCheckUtils]: 81: Hoare triple {83938#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {83963#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:25,409 INFO L290 TraceCheckUtils]: 82: Hoare triple {83963#(<= ~counter~0 9)} assume !!(#t~post7 < 20);havoc #t~post7; {83963#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:25,409 INFO L272 TraceCheckUtils]: 83: Hoare triple {83963#(<= ~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)); {83963#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:25,410 INFO L290 TraceCheckUtils]: 84: Hoare triple {83963#(<= ~counter~0 9)} ~cond := #in~cond; {83963#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:25,410 INFO L290 TraceCheckUtils]: 85: Hoare triple {83963#(<= ~counter~0 9)} assume !(0 == ~cond); {83963#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:25,410 INFO L290 TraceCheckUtils]: 86: Hoare triple {83963#(<= ~counter~0 9)} assume true; {83963#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:25,411 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {83963#(<= ~counter~0 9)} {83963#(<= ~counter~0 9)} #96#return; {83963#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:25,411 INFO L290 TraceCheckUtils]: 88: Hoare triple {83963#(<= ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {83963#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:25,412 INFO L290 TraceCheckUtils]: 89: Hoare triple {83963#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {83988#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:25,413 INFO L290 TraceCheckUtils]: 90: Hoare triple {83988#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {83988#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:25,413 INFO L272 TraceCheckUtils]: 91: Hoare triple {83988#(<= ~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)); {83988#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:25,414 INFO L290 TraceCheckUtils]: 92: Hoare triple {83988#(<= ~counter~0 10)} ~cond := #in~cond; {83988#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:25,414 INFO L290 TraceCheckUtils]: 93: Hoare triple {83988#(<= ~counter~0 10)} assume !(0 == ~cond); {83988#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:25,414 INFO L290 TraceCheckUtils]: 94: Hoare triple {83988#(<= ~counter~0 10)} assume true; {83988#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:25,415 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {83988#(<= ~counter~0 10)} {83988#(<= ~counter~0 10)} #96#return; {83988#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:25,415 INFO L290 TraceCheckUtils]: 96: Hoare triple {83988#(<= ~counter~0 10)} assume !(~r~0 > 0); {83988#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:25,416 INFO L290 TraceCheckUtils]: 97: Hoare triple {83988#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {84013#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:25,417 INFO L290 TraceCheckUtils]: 98: Hoare triple {84013#(<= ~counter~0 11)} assume !!(#t~post8 < 20);havoc #t~post8; {84013#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:25,417 INFO L272 TraceCheckUtils]: 99: Hoare triple {84013#(<= ~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)); {84013#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:25,418 INFO L290 TraceCheckUtils]: 100: Hoare triple {84013#(<= ~counter~0 11)} ~cond := #in~cond; {84013#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:25,418 INFO L290 TraceCheckUtils]: 101: Hoare triple {84013#(<= ~counter~0 11)} assume !(0 == ~cond); {84013#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:25,418 INFO L290 TraceCheckUtils]: 102: Hoare triple {84013#(<= ~counter~0 11)} assume true; {84013#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:25,419 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {84013#(<= ~counter~0 11)} {84013#(<= ~counter~0 11)} #98#return; {84013#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:25,419 INFO L290 TraceCheckUtils]: 104: Hoare triple {84013#(<= ~counter~0 11)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {84013#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:25,420 INFO L290 TraceCheckUtils]: 105: Hoare triple {84013#(<= ~counter~0 11)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {84038#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:25,421 INFO L290 TraceCheckUtils]: 106: Hoare triple {84038#(<= ~counter~0 12)} assume !!(#t~post8 < 20);havoc #t~post8; {84038#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:25,421 INFO L272 TraceCheckUtils]: 107: Hoare triple {84038#(<= ~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)); {84038#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:25,421 INFO L290 TraceCheckUtils]: 108: Hoare triple {84038#(<= ~counter~0 12)} ~cond := #in~cond; {84038#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:25,422 INFO L290 TraceCheckUtils]: 109: Hoare triple {84038#(<= ~counter~0 12)} assume !(0 == ~cond); {84038#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:25,422 INFO L290 TraceCheckUtils]: 110: Hoare triple {84038#(<= ~counter~0 12)} assume true; {84038#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:25,423 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {84038#(<= ~counter~0 12)} {84038#(<= ~counter~0 12)} #98#return; {84038#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:25,423 INFO L290 TraceCheckUtils]: 112: Hoare triple {84038#(<= ~counter~0 12)} assume !(~r~0 < 0); {84038#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:25,423 INFO L290 TraceCheckUtils]: 113: Hoare triple {84038#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {84063#(<= |main_#t~post6| 12)} is VALID [2022-04-08 06:09:25,424 INFO L290 TraceCheckUtils]: 114: Hoare triple {84063#(<= |main_#t~post6| 12)} assume !(#t~post6 < 20);havoc #t~post6; {83707#false} is VALID [2022-04-08 06:09:25,424 INFO L272 TraceCheckUtils]: 115: Hoare triple {83707#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)); {83707#false} is VALID [2022-04-08 06:09:25,424 INFO L290 TraceCheckUtils]: 116: Hoare triple {83707#false} ~cond := #in~cond; {83707#false} is VALID [2022-04-08 06:09:25,424 INFO L290 TraceCheckUtils]: 117: Hoare triple {83707#false} assume 0 == ~cond; {83707#false} is VALID [2022-04-08 06:09:25,424 INFO L290 TraceCheckUtils]: 118: Hoare triple {83707#false} assume !false; {83707#false} is VALID [2022-04-08 06:09:25,424 INFO L134 CoverageAnalysis]: Checked inductivity of 384 backedges. 24 proven. 356 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:09:25,425 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:09:26,007 INFO L290 TraceCheckUtils]: 118: Hoare triple {83707#false} assume !false; {83707#false} is VALID [2022-04-08 06:09:26,008 INFO L290 TraceCheckUtils]: 117: Hoare triple {83707#false} assume 0 == ~cond; {83707#false} is VALID [2022-04-08 06:09:26,008 INFO L290 TraceCheckUtils]: 116: Hoare triple {83707#false} ~cond := #in~cond; {83707#false} is VALID [2022-04-08 06:09:26,008 INFO L272 TraceCheckUtils]: 115: Hoare triple {83707#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)); {83707#false} is VALID [2022-04-08 06:09:26,023 INFO L290 TraceCheckUtils]: 114: Hoare triple {84091#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {83707#false} is VALID [2022-04-08 06:09:26,024 INFO L290 TraceCheckUtils]: 113: Hoare triple {84095#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {84091#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:09:26,024 INFO L290 TraceCheckUtils]: 112: Hoare triple {84095#(< ~counter~0 20)} assume !(~r~0 < 0); {84095#(< ~counter~0 20)} is VALID [2022-04-08 06:09:26,025 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {83706#true} {84095#(< ~counter~0 20)} #98#return; {84095#(< ~counter~0 20)} is VALID [2022-04-08 06:09:26,025 INFO L290 TraceCheckUtils]: 110: Hoare triple {83706#true} assume true; {83706#true} is VALID [2022-04-08 06:09:26,025 INFO L290 TraceCheckUtils]: 109: Hoare triple {83706#true} assume !(0 == ~cond); {83706#true} is VALID [2022-04-08 06:09:26,025 INFO L290 TraceCheckUtils]: 108: Hoare triple {83706#true} ~cond := #in~cond; {83706#true} is VALID [2022-04-08 06:09:26,025 INFO L272 TraceCheckUtils]: 107: Hoare triple {84095#(< ~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)); {83706#true} is VALID [2022-04-08 06:09:26,026 INFO L290 TraceCheckUtils]: 106: Hoare triple {84095#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {84095#(< ~counter~0 20)} is VALID [2022-04-08 06:09:26,028 INFO L290 TraceCheckUtils]: 105: Hoare triple {84120#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {84095#(< ~counter~0 20)} is VALID [2022-04-08 06:09:26,028 INFO L290 TraceCheckUtils]: 104: Hoare triple {84120#(< ~counter~0 19)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {84120#(< ~counter~0 19)} is VALID [2022-04-08 06:09:26,029 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {83706#true} {84120#(< ~counter~0 19)} #98#return; {84120#(< ~counter~0 19)} is VALID [2022-04-08 06:09:26,029 INFO L290 TraceCheckUtils]: 102: Hoare triple {83706#true} assume true; {83706#true} is VALID [2022-04-08 06:09:26,029 INFO L290 TraceCheckUtils]: 101: Hoare triple {83706#true} assume !(0 == ~cond); {83706#true} is VALID [2022-04-08 06:09:26,029 INFO L290 TraceCheckUtils]: 100: Hoare triple {83706#true} ~cond := #in~cond; {83706#true} is VALID [2022-04-08 06:09:26,029 INFO L272 TraceCheckUtils]: 99: Hoare triple {84120#(< ~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)); {83706#true} is VALID [2022-04-08 06:09:26,029 INFO L290 TraceCheckUtils]: 98: Hoare triple {84120#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {84120#(< ~counter~0 19)} is VALID [2022-04-08 06:09:26,030 INFO L290 TraceCheckUtils]: 97: Hoare triple {84145#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {84120#(< ~counter~0 19)} is VALID [2022-04-08 06:09:26,030 INFO L290 TraceCheckUtils]: 96: Hoare triple {84145#(< ~counter~0 18)} assume !(~r~0 > 0); {84145#(< ~counter~0 18)} is VALID [2022-04-08 06:09:26,031 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {83706#true} {84145#(< ~counter~0 18)} #96#return; {84145#(< ~counter~0 18)} is VALID [2022-04-08 06:09:26,031 INFO L290 TraceCheckUtils]: 94: Hoare triple {83706#true} assume true; {83706#true} is VALID [2022-04-08 06:09:26,031 INFO L290 TraceCheckUtils]: 93: Hoare triple {83706#true} assume !(0 == ~cond); {83706#true} is VALID [2022-04-08 06:09:26,031 INFO L290 TraceCheckUtils]: 92: Hoare triple {83706#true} ~cond := #in~cond; {83706#true} is VALID [2022-04-08 06:09:26,031 INFO L272 TraceCheckUtils]: 91: Hoare triple {84145#(< ~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)); {83706#true} is VALID [2022-04-08 06:09:26,031 INFO L290 TraceCheckUtils]: 90: Hoare triple {84145#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {84145#(< ~counter~0 18)} is VALID [2022-04-08 06:09:26,032 INFO L290 TraceCheckUtils]: 89: Hoare triple {84170#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {84145#(< ~counter~0 18)} is VALID [2022-04-08 06:09:26,033 INFO L290 TraceCheckUtils]: 88: Hoare triple {84170#(< ~counter~0 17)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {84170#(< ~counter~0 17)} is VALID [2022-04-08 06:09:26,033 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {83706#true} {84170#(< ~counter~0 17)} #96#return; {84170#(< ~counter~0 17)} is VALID [2022-04-08 06:09:26,033 INFO L290 TraceCheckUtils]: 86: Hoare triple {83706#true} assume true; {83706#true} is VALID [2022-04-08 06:09:26,033 INFO L290 TraceCheckUtils]: 85: Hoare triple {83706#true} assume !(0 == ~cond); {83706#true} is VALID [2022-04-08 06:09:26,033 INFO L290 TraceCheckUtils]: 84: Hoare triple {83706#true} ~cond := #in~cond; {83706#true} is VALID [2022-04-08 06:09:26,033 INFO L272 TraceCheckUtils]: 83: Hoare triple {84170#(< ~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)); {83706#true} is VALID [2022-04-08 06:09:26,034 INFO L290 TraceCheckUtils]: 82: Hoare triple {84170#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {84170#(< ~counter~0 17)} is VALID [2022-04-08 06:09:26,034 INFO L290 TraceCheckUtils]: 81: Hoare triple {84195#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {84170#(< ~counter~0 17)} is VALID [2022-04-08 06:09:26,035 INFO L290 TraceCheckUtils]: 80: Hoare triple {84195#(< ~counter~0 16)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {84195#(< ~counter~0 16)} is VALID [2022-04-08 06:09:26,035 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {83706#true} {84195#(< ~counter~0 16)} #96#return; {84195#(< ~counter~0 16)} is VALID [2022-04-08 06:09:26,035 INFO L290 TraceCheckUtils]: 78: Hoare triple {83706#true} assume true; {83706#true} is VALID [2022-04-08 06:09:26,035 INFO L290 TraceCheckUtils]: 77: Hoare triple {83706#true} assume !(0 == ~cond); {83706#true} is VALID [2022-04-08 06:09:26,035 INFO L290 TraceCheckUtils]: 76: Hoare triple {83706#true} ~cond := #in~cond; {83706#true} is VALID [2022-04-08 06:09:26,036 INFO L272 TraceCheckUtils]: 75: Hoare triple {84195#(< ~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)); {83706#true} is VALID [2022-04-08 06:09:26,036 INFO L290 TraceCheckUtils]: 74: Hoare triple {84195#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {84195#(< ~counter~0 16)} is VALID [2022-04-08 06:09:26,037 INFO L290 TraceCheckUtils]: 73: Hoare triple {84220#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {84195#(< ~counter~0 16)} is VALID [2022-04-08 06:09:26,037 INFO L290 TraceCheckUtils]: 72: Hoare triple {84220#(< ~counter~0 15)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {84220#(< ~counter~0 15)} is VALID [2022-04-08 06:09:26,037 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {83706#true} {84220#(< ~counter~0 15)} #96#return; {84220#(< ~counter~0 15)} is VALID [2022-04-08 06:09:26,037 INFO L290 TraceCheckUtils]: 70: Hoare triple {83706#true} assume true; {83706#true} is VALID [2022-04-08 06:09:26,037 INFO L290 TraceCheckUtils]: 69: Hoare triple {83706#true} assume !(0 == ~cond); {83706#true} is VALID [2022-04-08 06:09:26,037 INFO L290 TraceCheckUtils]: 68: Hoare triple {83706#true} ~cond := #in~cond; {83706#true} is VALID [2022-04-08 06:09:26,038 INFO L272 TraceCheckUtils]: 67: Hoare triple {84220#(< ~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)); {83706#true} is VALID [2022-04-08 06:09:26,038 INFO L290 TraceCheckUtils]: 66: Hoare triple {84220#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {84220#(< ~counter~0 15)} is VALID [2022-04-08 06:09:26,039 INFO L290 TraceCheckUtils]: 65: Hoare triple {84245#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {84220#(< ~counter~0 15)} is VALID [2022-04-08 06:09:26,039 INFO L290 TraceCheckUtils]: 64: Hoare triple {84245#(< ~counter~0 14)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {84245#(< ~counter~0 14)} is VALID [2022-04-08 06:09:26,039 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {83706#true} {84245#(< ~counter~0 14)} #96#return; {84245#(< ~counter~0 14)} is VALID [2022-04-08 06:09:26,039 INFO L290 TraceCheckUtils]: 62: Hoare triple {83706#true} assume true; {83706#true} is VALID [2022-04-08 06:09:26,039 INFO L290 TraceCheckUtils]: 61: Hoare triple {83706#true} assume !(0 == ~cond); {83706#true} is VALID [2022-04-08 06:09:26,040 INFO L290 TraceCheckUtils]: 60: Hoare triple {83706#true} ~cond := #in~cond; {83706#true} is VALID [2022-04-08 06:09:26,040 INFO L272 TraceCheckUtils]: 59: Hoare triple {84245#(< ~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)); {83706#true} is VALID [2022-04-08 06:09:26,040 INFO L290 TraceCheckUtils]: 58: Hoare triple {84245#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {84245#(< ~counter~0 14)} is VALID [2022-04-08 06:09:26,041 INFO L290 TraceCheckUtils]: 57: Hoare triple {84038#(<= ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {84245#(< ~counter~0 14)} is VALID [2022-04-08 06:09:26,041 INFO L290 TraceCheckUtils]: 56: Hoare triple {84038#(<= ~counter~0 12)} assume !!(0 != ~r~0); {84038#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:26,041 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {83706#true} {84038#(<= ~counter~0 12)} #94#return; {84038#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:26,042 INFO L290 TraceCheckUtils]: 54: Hoare triple {83706#true} assume true; {83706#true} is VALID [2022-04-08 06:09:26,042 INFO L290 TraceCheckUtils]: 53: Hoare triple {83706#true} assume !(0 == ~cond); {83706#true} is VALID [2022-04-08 06:09:26,042 INFO L290 TraceCheckUtils]: 52: Hoare triple {83706#true} ~cond := #in~cond; {83706#true} is VALID [2022-04-08 06:09:26,042 INFO L272 TraceCheckUtils]: 51: Hoare triple {84038#(<= ~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)); {83706#true} is VALID [2022-04-08 06:09:26,042 INFO L290 TraceCheckUtils]: 50: Hoare triple {84038#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {84038#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:26,043 INFO L290 TraceCheckUtils]: 49: Hoare triple {84013#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {84038#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:26,043 INFO L290 TraceCheckUtils]: 48: Hoare triple {84013#(<= ~counter~0 11)} assume !(~r~0 < 0); {84013#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:26,044 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {83706#true} {84013#(<= ~counter~0 11)} #98#return; {84013#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:26,044 INFO L290 TraceCheckUtils]: 46: Hoare triple {83706#true} assume true; {83706#true} is VALID [2022-04-08 06:09:26,044 INFO L290 TraceCheckUtils]: 45: Hoare triple {83706#true} assume !(0 == ~cond); {83706#true} is VALID [2022-04-08 06:09:26,044 INFO L290 TraceCheckUtils]: 44: Hoare triple {83706#true} ~cond := #in~cond; {83706#true} is VALID [2022-04-08 06:09:26,044 INFO L272 TraceCheckUtils]: 43: Hoare triple {84013#(<= ~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)); {83706#true} is VALID [2022-04-08 06:09:26,044 INFO L290 TraceCheckUtils]: 42: Hoare triple {84013#(<= ~counter~0 11)} assume !!(#t~post8 < 20);havoc #t~post8; {84013#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:26,045 INFO L290 TraceCheckUtils]: 41: Hoare triple {83988#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {84013#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:26,045 INFO L290 TraceCheckUtils]: 40: Hoare triple {83988#(<= ~counter~0 10)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {83988#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:26,046 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {83706#true} {83988#(<= ~counter~0 10)} #98#return; {83988#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:26,046 INFO L290 TraceCheckUtils]: 38: Hoare triple {83706#true} assume true; {83706#true} is VALID [2022-04-08 06:09:26,046 INFO L290 TraceCheckUtils]: 37: Hoare triple {83706#true} assume !(0 == ~cond); {83706#true} is VALID [2022-04-08 06:09:26,046 INFO L290 TraceCheckUtils]: 36: Hoare triple {83706#true} ~cond := #in~cond; {83706#true} is VALID [2022-04-08 06:09:26,046 INFO L272 TraceCheckUtils]: 35: Hoare triple {83988#(<= ~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)); {83706#true} is VALID [2022-04-08 06:09:26,047 INFO L290 TraceCheckUtils]: 34: Hoare triple {83988#(<= ~counter~0 10)} assume !!(#t~post8 < 20);havoc #t~post8; {83988#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:26,048 INFO L290 TraceCheckUtils]: 33: Hoare triple {83963#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {83988#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:26,048 INFO L290 TraceCheckUtils]: 32: Hoare triple {83963#(<= ~counter~0 9)} assume !(~r~0 > 0); {83963#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:26,048 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {83706#true} {83963#(<= ~counter~0 9)} #96#return; {83963#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:26,049 INFO L290 TraceCheckUtils]: 30: Hoare triple {83706#true} assume true; {83706#true} is VALID [2022-04-08 06:09:26,049 INFO L290 TraceCheckUtils]: 29: Hoare triple {83706#true} assume !(0 == ~cond); {83706#true} is VALID [2022-04-08 06:09:26,049 INFO L290 TraceCheckUtils]: 28: Hoare triple {83706#true} ~cond := #in~cond; {83706#true} is VALID [2022-04-08 06:09:26,049 INFO L272 TraceCheckUtils]: 27: Hoare triple {83963#(<= ~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)); {83706#true} is VALID [2022-04-08 06:09:26,049 INFO L290 TraceCheckUtils]: 26: Hoare triple {83963#(<= ~counter~0 9)} assume !!(#t~post7 < 20);havoc #t~post7; {83963#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:26,050 INFO L290 TraceCheckUtils]: 25: Hoare triple {83938#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {83963#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:26,050 INFO L290 TraceCheckUtils]: 24: Hoare triple {83938#(<= ~counter~0 8)} assume !!(0 != ~r~0); {83938#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:26,051 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {83706#true} {83938#(<= ~counter~0 8)} #94#return; {83938#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:26,051 INFO L290 TraceCheckUtils]: 22: Hoare triple {83706#true} assume true; {83706#true} is VALID [2022-04-08 06:09:26,051 INFO L290 TraceCheckUtils]: 21: Hoare triple {83706#true} assume !(0 == ~cond); {83706#true} is VALID [2022-04-08 06:09:26,051 INFO L290 TraceCheckUtils]: 20: Hoare triple {83706#true} ~cond := #in~cond; {83706#true} is VALID [2022-04-08 06:09:26,051 INFO L272 TraceCheckUtils]: 19: Hoare triple {83938#(<= ~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)); {83706#true} is VALID [2022-04-08 06:09:26,051 INFO L290 TraceCheckUtils]: 18: Hoare triple {83938#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {83938#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:26,052 INFO L290 TraceCheckUtils]: 17: Hoare triple {83913#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {83938#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:26,052 INFO L290 TraceCheckUtils]: 16: Hoare triple {83913#(<= ~counter~0 7)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:26,053 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {83706#true} {83913#(<= ~counter~0 7)} #92#return; {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:26,053 INFO L290 TraceCheckUtils]: 14: Hoare triple {83706#true} assume true; {83706#true} is VALID [2022-04-08 06:09:26,053 INFO L290 TraceCheckUtils]: 13: Hoare triple {83706#true} assume !(0 == ~cond); {83706#true} is VALID [2022-04-08 06:09:26,053 INFO L290 TraceCheckUtils]: 12: Hoare triple {83706#true} ~cond := #in~cond; {83706#true} is VALID [2022-04-08 06:09:26,053 INFO L272 TraceCheckUtils]: 11: Hoare triple {83913#(<= ~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)); {83706#true} is VALID [2022-04-08 06:09:26,053 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {83706#true} {83913#(<= ~counter~0 7)} #90#return; {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:26,054 INFO L290 TraceCheckUtils]: 9: Hoare triple {83706#true} assume true; {83706#true} is VALID [2022-04-08 06:09:26,054 INFO L290 TraceCheckUtils]: 8: Hoare triple {83706#true} assume !(0 == ~cond); {83706#true} is VALID [2022-04-08 06:09:26,054 INFO L290 TraceCheckUtils]: 7: Hoare triple {83706#true} ~cond := #in~cond; {83706#true} is VALID [2022-04-08 06:09:26,054 INFO L272 TraceCheckUtils]: 6: Hoare triple {83913#(<= ~counter~0 7)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {83706#true} is VALID [2022-04-08 06:09:26,054 INFO L290 TraceCheckUtils]: 5: Hoare triple {83913#(<= ~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; {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:26,054 INFO L272 TraceCheckUtils]: 4: Hoare triple {83913#(<= ~counter~0 7)} call #t~ret9 := main(); {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:26,055 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {83913#(<= ~counter~0 7)} {83706#true} #102#return; {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:26,055 INFO L290 TraceCheckUtils]: 2: Hoare triple {83913#(<= ~counter~0 7)} assume true; {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:26,055 INFO L290 TraceCheckUtils]: 1: Hoare triple {83706#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {83913#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:26,056 INFO L272 TraceCheckUtils]: 0: Hoare triple {83706#true} call ULTIMATE.init(); {83706#true} is VALID [2022-04-08 06:09:26,056 INFO L134 CoverageAnalysis]: Checked inductivity of 384 backedges. 24 proven. 92 refuted. 0 times theorem prover too weak. 268 trivial. 0 not checked. [2022-04-08 06:09:26,056 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:09:26,056 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [576543397] [2022-04-08 06:09:26,056 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:09:26,056 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1759655662] [2022-04-08 06:09:26,057 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1759655662] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:09:26,057 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:09:26,057 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 24 [2022-04-08 06:09:26,057 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:09:26,057 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [22824766] [2022-04-08 06:09:26,057 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [22824766] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:09:26,057 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:09:26,057 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-08 06:09:26,057 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [676049567] [2022-04-08 06:09:26,057 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:09:26,058 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 5.25) internal successors, (84), 15 states have internal predecessors, (84), 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 119 [2022-04-08 06:09:26,058 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:09:26,058 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 5.25) internal successors, (84), 15 states have internal predecessors, (84), 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:09:26,161 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 116 edges. 116 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:26,161 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-08 06:09:26,161 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:09:26,161 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-08 06:09:26,162 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:09:26,162 INFO L87 Difference]: Start difference. First operand 626 states and 830 transitions. Second operand has 16 states, 16 states have (on average 5.25) internal successors, (84), 15 states have internal predecessors, (84), 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:09:28,959 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:28,959 INFO L93 Difference]: Finished difference Result 685 states and 910 transitions. [2022-04-08 06:09:28,959 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2022-04-08 06:09:28,959 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 5.25) internal successors, (84), 15 states have internal predecessors, (84), 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 119 [2022-04-08 06:09:28,959 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:09:28,959 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 5.25) internal successors, (84), 15 states have internal predecessors, (84), 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:09:28,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 254 transitions. [2022-04-08 06:09:28,961 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 5.25) internal successors, (84), 15 states have internal predecessors, (84), 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:09:28,963 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 254 transitions. [2022-04-08 06:09:28,963 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 25 states and 254 transitions. [2022-04-08 06:09:29,190 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 254 edges. 254 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:29,213 INFO L225 Difference]: With dead ends: 685 [2022-04-08 06:09:29,213 INFO L226 Difference]: Without dead ends: 674 [2022-04-08 06:09:29,213 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 246 GetRequests, 214 SyntacticMatches, 1 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 74 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=419, Invalid=637, Unknown=0, NotChecked=0, Total=1056 [2022-04-08 06:09:29,214 INFO L913 BasicCegarLoop]: 66 mSDtfsCounter, 157 mSDsluCounter, 241 mSDsCounter, 0 mSdLazyCounter, 180 mSolverCounterSat, 117 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 157 SdHoareTripleChecker+Valid, 307 SdHoareTripleChecker+Invalid, 297 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 117 IncrementalHoareTripleChecker+Valid, 180 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-08 06:09:29,214 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [157 Valid, 307 Invalid, 297 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [117 Valid, 180 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-08 06:09:29,214 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 674 states. [2022-04-08 06:09:30,894 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 674 to 652. [2022-04-08 06:09:30,895 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:09:30,895 INFO L82 GeneralOperation]: Start isEquivalent. First operand 674 states. Second operand has 652 states, 487 states have (on average 1.211498973305955) internal successors, (590), 497 states have internal predecessors, (590), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 128 states have call predecessors, (138), 138 states have call successors, (138) [2022-04-08 06:09:30,896 INFO L74 IsIncluded]: Start isIncluded. First operand 674 states. Second operand has 652 states, 487 states have (on average 1.211498973305955) internal successors, (590), 497 states have internal predecessors, (590), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 128 states have call predecessors, (138), 138 states have call successors, (138) [2022-04-08 06:09:30,896 INFO L87 Difference]: Start difference. First operand 674 states. Second operand has 652 states, 487 states have (on average 1.211498973305955) internal successors, (590), 497 states have internal predecessors, (590), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 128 states have call predecessors, (138), 138 states have call successors, (138) [2022-04-08 06:09:30,915 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:30,915 INFO L93 Difference]: Finished difference Result 674 states and 894 transitions. [2022-04-08 06:09:30,915 INFO L276 IsEmpty]: Start isEmpty. Operand 674 states and 894 transitions. [2022-04-08 06:09:30,915 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:09:30,915 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:09:30,916 INFO L74 IsIncluded]: Start isIncluded. First operand has 652 states, 487 states have (on average 1.211498973305955) internal successors, (590), 497 states have internal predecessors, (590), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 128 states have call predecessors, (138), 138 states have call successors, (138) Second operand 674 states. [2022-04-08 06:09:30,917 INFO L87 Difference]: Start difference. First operand has 652 states, 487 states have (on average 1.211498973305955) internal successors, (590), 497 states have internal predecessors, (590), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 128 states have call predecessors, (138), 138 states have call successors, (138) Second operand 674 states. [2022-04-08 06:09:30,933 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:30,933 INFO L93 Difference]: Finished difference Result 674 states and 894 transitions. [2022-04-08 06:09:30,933 INFO L276 IsEmpty]: Start isEmpty. Operand 674 states and 894 transitions. [2022-04-08 06:09:30,934 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:09:30,934 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:09:30,934 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:09:30,934 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:09:30,935 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 652 states, 487 states have (on average 1.211498973305955) internal successors, (590), 497 states have internal predecessors, (590), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 128 states have call predecessors, (138), 138 states have call successors, (138) [2022-04-08 06:09:30,955 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 652 states to 652 states and 868 transitions. [2022-04-08 06:09:30,956 INFO L78 Accepts]: Start accepts. Automaton has 652 states and 868 transitions. Word has length 119 [2022-04-08 06:09:30,956 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:09:30,956 INFO L478 AbstractCegarLoop]: Abstraction has 652 states and 868 transitions. [2022-04-08 06:09:30,956 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 5.25) internal successors, (84), 15 states have internal predecessors, (84), 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:09:30,956 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 652 states and 868 transitions. [2022-04-08 06:09:48,569 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 868 edges. 864 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:48,569 INFO L276 IsEmpty]: Start isEmpty. Operand 652 states and 868 transitions. [2022-04-08 06:09:48,570 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 122 [2022-04-08 06:09:48,570 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:09:48,570 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 7, 7, 7, 7, 5, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:09:48,586 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Ended with exit code 0 [2022-04-08 06:09:48,783 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 40 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable38 [2022-04-08 06:09:48,783 INFO L403 AbstractCegarLoop]: === Iteration 40 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:09:48,784 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:09:48,784 INFO L85 PathProgramCache]: Analyzing trace with hash 1267134888, now seen corresponding path program 17 times [2022-04-08 06:09:48,784 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:09:48,784 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1160931952] [2022-04-08 06:09:48,785 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:09:48,785 INFO L85 PathProgramCache]: Analyzing trace with hash 1267134888, now seen corresponding path program 18 times [2022-04-08 06:09:48,785 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:09:48,785 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1965397793] [2022-04-08 06:09:48,785 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:09:48,785 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:09:48,796 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:09:48,796 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1827697216] [2022-04-08 06:09:48,796 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:09:48,796 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:09:48,796 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:09:48,797 INFO L229 MonitoredProcess]: Starting monitored process 41 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:09:48,799 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Waiting until timeout for monitored process [2022-04-08 06:09:49,348 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 9 check-sat command(s) [2022-04-08 06:09:49,348 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:09:49,351 INFO L263 TraceCheckSpWp]: Trace formula consists of 306 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-08 06:09:49,371 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:09:49,373 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:09:49,925 INFO L272 TraceCheckUtils]: 0: Hoare triple {88483#true} call ULTIMATE.init(); {88483#true} is VALID [2022-04-08 06:09:49,926 INFO L290 TraceCheckUtils]: 1: Hoare triple {88483#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,926 INFO L290 TraceCheckUtils]: 2: Hoare triple {88491#(<= ~counter~0 0)} assume true; {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,927 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {88491#(<= ~counter~0 0)} {88483#true} #102#return; {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,927 INFO L272 TraceCheckUtils]: 4: Hoare triple {88491#(<= ~counter~0 0)} call #t~ret9 := main(); {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,927 INFO L290 TraceCheckUtils]: 5: Hoare triple {88491#(<= ~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; {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,928 INFO L272 TraceCheckUtils]: 6: Hoare triple {88491#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,928 INFO L290 TraceCheckUtils]: 7: Hoare triple {88491#(<= ~counter~0 0)} ~cond := #in~cond; {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,928 INFO L290 TraceCheckUtils]: 8: Hoare triple {88491#(<= ~counter~0 0)} assume !(0 == ~cond); {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,928 INFO L290 TraceCheckUtils]: 9: Hoare triple {88491#(<= ~counter~0 0)} assume true; {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,929 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {88491#(<= ~counter~0 0)} {88491#(<= ~counter~0 0)} #90#return; {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,929 INFO L272 TraceCheckUtils]: 11: Hoare triple {88491#(<= ~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)); {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,929 INFO L290 TraceCheckUtils]: 12: Hoare triple {88491#(<= ~counter~0 0)} ~cond := #in~cond; {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,930 INFO L290 TraceCheckUtils]: 13: Hoare triple {88491#(<= ~counter~0 0)} assume !(0 == ~cond); {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,930 INFO L290 TraceCheckUtils]: 14: Hoare triple {88491#(<= ~counter~0 0)} assume true; {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,930 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {88491#(<= ~counter~0 0)} {88491#(<= ~counter~0 0)} #92#return; {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,931 INFO L290 TraceCheckUtils]: 16: Hoare triple {88491#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {88491#(<= ~counter~0 0)} is VALID [2022-04-08 06:09:49,932 INFO L290 TraceCheckUtils]: 17: Hoare triple {88491#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {88540#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:49,933 INFO L290 TraceCheckUtils]: 18: Hoare triple {88540#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {88540#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:49,933 INFO L272 TraceCheckUtils]: 19: Hoare triple {88540#(<= ~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)); {88540#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:49,933 INFO L290 TraceCheckUtils]: 20: Hoare triple {88540#(<= ~counter~0 1)} ~cond := #in~cond; {88540#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:49,934 INFO L290 TraceCheckUtils]: 21: Hoare triple {88540#(<= ~counter~0 1)} assume !(0 == ~cond); {88540#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:49,934 INFO L290 TraceCheckUtils]: 22: Hoare triple {88540#(<= ~counter~0 1)} assume true; {88540#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:49,934 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {88540#(<= ~counter~0 1)} {88540#(<= ~counter~0 1)} #94#return; {88540#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:49,935 INFO L290 TraceCheckUtils]: 24: Hoare triple {88540#(<= ~counter~0 1)} assume !!(0 != ~r~0); {88540#(<= ~counter~0 1)} is VALID [2022-04-08 06:09:49,936 INFO L290 TraceCheckUtils]: 25: Hoare triple {88540#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88565#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:49,936 INFO L290 TraceCheckUtils]: 26: Hoare triple {88565#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {88565#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:49,936 INFO L272 TraceCheckUtils]: 27: Hoare triple {88565#(<= ~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)); {88565#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:49,937 INFO L290 TraceCheckUtils]: 28: Hoare triple {88565#(<= ~counter~0 2)} ~cond := #in~cond; {88565#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:49,937 INFO L290 TraceCheckUtils]: 29: Hoare triple {88565#(<= ~counter~0 2)} assume !(0 == ~cond); {88565#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:49,937 INFO L290 TraceCheckUtils]: 30: Hoare triple {88565#(<= ~counter~0 2)} assume true; {88565#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:49,938 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {88565#(<= ~counter~0 2)} {88565#(<= ~counter~0 2)} #96#return; {88565#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:49,938 INFO L290 TraceCheckUtils]: 32: Hoare triple {88565#(<= ~counter~0 2)} assume !(~r~0 > 0); {88565#(<= ~counter~0 2)} is VALID [2022-04-08 06:09:49,939 INFO L290 TraceCheckUtils]: 33: Hoare triple {88565#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {88590#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:49,939 INFO L290 TraceCheckUtils]: 34: Hoare triple {88590#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {88590#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:49,939 INFO L272 TraceCheckUtils]: 35: Hoare triple {88590#(<= ~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)); {88590#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:49,940 INFO L290 TraceCheckUtils]: 36: Hoare triple {88590#(<= ~counter~0 3)} ~cond := #in~cond; {88590#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:49,940 INFO L290 TraceCheckUtils]: 37: Hoare triple {88590#(<= ~counter~0 3)} assume !(0 == ~cond); {88590#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:49,940 INFO L290 TraceCheckUtils]: 38: Hoare triple {88590#(<= ~counter~0 3)} assume true; {88590#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:49,941 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {88590#(<= ~counter~0 3)} {88590#(<= ~counter~0 3)} #98#return; {88590#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:49,941 INFO L290 TraceCheckUtils]: 40: Hoare triple {88590#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {88590#(<= ~counter~0 3)} is VALID [2022-04-08 06:09:49,942 INFO L290 TraceCheckUtils]: 41: Hoare triple {88590#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {88615#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:49,942 INFO L290 TraceCheckUtils]: 42: Hoare triple {88615#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {88615#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:49,943 INFO L272 TraceCheckUtils]: 43: Hoare triple {88615#(<= ~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)); {88615#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:49,943 INFO L290 TraceCheckUtils]: 44: Hoare triple {88615#(<= ~counter~0 4)} ~cond := #in~cond; {88615#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:49,943 INFO L290 TraceCheckUtils]: 45: Hoare triple {88615#(<= ~counter~0 4)} assume !(0 == ~cond); {88615#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:49,943 INFO L290 TraceCheckUtils]: 46: Hoare triple {88615#(<= ~counter~0 4)} assume true; {88615#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:49,944 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {88615#(<= ~counter~0 4)} {88615#(<= ~counter~0 4)} #98#return; {88615#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:49,944 INFO L290 TraceCheckUtils]: 48: Hoare triple {88615#(<= ~counter~0 4)} assume !(~r~0 < 0); {88615#(<= ~counter~0 4)} is VALID [2022-04-08 06:09:49,945 INFO L290 TraceCheckUtils]: 49: Hoare triple {88615#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {88640#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:49,945 INFO L290 TraceCheckUtils]: 50: Hoare triple {88640#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {88640#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:49,946 INFO L272 TraceCheckUtils]: 51: Hoare triple {88640#(<= ~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)); {88640#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:49,946 INFO L290 TraceCheckUtils]: 52: Hoare triple {88640#(<= ~counter~0 5)} ~cond := #in~cond; {88640#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:49,946 INFO L290 TraceCheckUtils]: 53: Hoare triple {88640#(<= ~counter~0 5)} assume !(0 == ~cond); {88640#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:49,946 INFO L290 TraceCheckUtils]: 54: Hoare triple {88640#(<= ~counter~0 5)} assume true; {88640#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:49,947 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {88640#(<= ~counter~0 5)} {88640#(<= ~counter~0 5)} #94#return; {88640#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:49,947 INFO L290 TraceCheckUtils]: 56: Hoare triple {88640#(<= ~counter~0 5)} assume !!(0 != ~r~0); {88640#(<= ~counter~0 5)} is VALID [2022-04-08 06:09:49,948 INFO L290 TraceCheckUtils]: 57: Hoare triple {88640#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88665#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:49,948 INFO L290 TraceCheckUtils]: 58: Hoare triple {88665#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {88665#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:49,949 INFO L272 TraceCheckUtils]: 59: Hoare triple {88665#(<= ~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)); {88665#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:49,949 INFO L290 TraceCheckUtils]: 60: Hoare triple {88665#(<= ~counter~0 6)} ~cond := #in~cond; {88665#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:49,949 INFO L290 TraceCheckUtils]: 61: Hoare triple {88665#(<= ~counter~0 6)} assume !(0 == ~cond); {88665#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:49,949 INFO L290 TraceCheckUtils]: 62: Hoare triple {88665#(<= ~counter~0 6)} assume true; {88665#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:49,950 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {88665#(<= ~counter~0 6)} {88665#(<= ~counter~0 6)} #96#return; {88665#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:49,950 INFO L290 TraceCheckUtils]: 64: Hoare triple {88665#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {88665#(<= ~counter~0 6)} is VALID [2022-04-08 06:09:49,951 INFO L290 TraceCheckUtils]: 65: Hoare triple {88665#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:49,951 INFO L290 TraceCheckUtils]: 66: Hoare triple {88690#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:49,952 INFO L272 TraceCheckUtils]: 67: Hoare triple {88690#(<= ~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)); {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:49,952 INFO L290 TraceCheckUtils]: 68: Hoare triple {88690#(<= ~counter~0 7)} ~cond := #in~cond; {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:49,952 INFO L290 TraceCheckUtils]: 69: Hoare triple {88690#(<= ~counter~0 7)} assume !(0 == ~cond); {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:49,952 INFO L290 TraceCheckUtils]: 70: Hoare triple {88690#(<= ~counter~0 7)} assume true; {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:49,953 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {88690#(<= ~counter~0 7)} {88690#(<= ~counter~0 7)} #96#return; {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:49,953 INFO L290 TraceCheckUtils]: 72: Hoare triple {88690#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:49,954 INFO L290 TraceCheckUtils]: 73: Hoare triple {88690#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88715#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:49,954 INFO L290 TraceCheckUtils]: 74: Hoare triple {88715#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {88715#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:49,955 INFO L272 TraceCheckUtils]: 75: Hoare triple {88715#(<= ~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)); {88715#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:49,955 INFO L290 TraceCheckUtils]: 76: Hoare triple {88715#(<= ~counter~0 8)} ~cond := #in~cond; {88715#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:49,955 INFO L290 TraceCheckUtils]: 77: Hoare triple {88715#(<= ~counter~0 8)} assume !(0 == ~cond); {88715#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:49,955 INFO L290 TraceCheckUtils]: 78: Hoare triple {88715#(<= ~counter~0 8)} assume true; {88715#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:49,956 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {88715#(<= ~counter~0 8)} {88715#(<= ~counter~0 8)} #96#return; {88715#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:49,956 INFO L290 TraceCheckUtils]: 80: Hoare triple {88715#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {88715#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:49,957 INFO L290 TraceCheckUtils]: 81: Hoare triple {88715#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88740#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:49,957 INFO L290 TraceCheckUtils]: 82: Hoare triple {88740#(<= ~counter~0 9)} assume !!(#t~post7 < 20);havoc #t~post7; {88740#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:49,958 INFO L272 TraceCheckUtils]: 83: Hoare triple {88740#(<= ~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)); {88740#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:49,958 INFO L290 TraceCheckUtils]: 84: Hoare triple {88740#(<= ~counter~0 9)} ~cond := #in~cond; {88740#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:49,958 INFO L290 TraceCheckUtils]: 85: Hoare triple {88740#(<= ~counter~0 9)} assume !(0 == ~cond); {88740#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:49,958 INFO L290 TraceCheckUtils]: 86: Hoare triple {88740#(<= ~counter~0 9)} assume true; {88740#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:49,959 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {88740#(<= ~counter~0 9)} {88740#(<= ~counter~0 9)} #96#return; {88740#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:49,959 INFO L290 TraceCheckUtils]: 88: Hoare triple {88740#(<= ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {88740#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:49,960 INFO L290 TraceCheckUtils]: 89: Hoare triple {88740#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88765#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:49,960 INFO L290 TraceCheckUtils]: 90: Hoare triple {88765#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {88765#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:49,961 INFO L272 TraceCheckUtils]: 91: Hoare triple {88765#(<= ~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)); {88765#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:49,961 INFO L290 TraceCheckUtils]: 92: Hoare triple {88765#(<= ~counter~0 10)} ~cond := #in~cond; {88765#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:49,961 INFO L290 TraceCheckUtils]: 93: Hoare triple {88765#(<= ~counter~0 10)} assume !(0 == ~cond); {88765#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:49,961 INFO L290 TraceCheckUtils]: 94: Hoare triple {88765#(<= ~counter~0 10)} assume true; {88765#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:49,962 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {88765#(<= ~counter~0 10)} {88765#(<= ~counter~0 10)} #96#return; {88765#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:49,962 INFO L290 TraceCheckUtils]: 96: Hoare triple {88765#(<= ~counter~0 10)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {88765#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:49,963 INFO L290 TraceCheckUtils]: 97: Hoare triple {88765#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88790#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:49,963 INFO L290 TraceCheckUtils]: 98: Hoare triple {88790#(<= ~counter~0 11)} assume !!(#t~post7 < 20);havoc #t~post7; {88790#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:49,964 INFO L272 TraceCheckUtils]: 99: Hoare triple {88790#(<= ~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)); {88790#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:49,964 INFO L290 TraceCheckUtils]: 100: Hoare triple {88790#(<= ~counter~0 11)} ~cond := #in~cond; {88790#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:49,964 INFO L290 TraceCheckUtils]: 101: Hoare triple {88790#(<= ~counter~0 11)} assume !(0 == ~cond); {88790#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:49,964 INFO L290 TraceCheckUtils]: 102: Hoare triple {88790#(<= ~counter~0 11)} assume true; {88790#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:49,965 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {88790#(<= ~counter~0 11)} {88790#(<= ~counter~0 11)} #96#return; {88790#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:49,965 INFO L290 TraceCheckUtils]: 104: Hoare triple {88790#(<= ~counter~0 11)} assume !(~r~0 > 0); {88790#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:49,966 INFO L290 TraceCheckUtils]: 105: Hoare triple {88790#(<= ~counter~0 11)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {88815#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:49,966 INFO L290 TraceCheckUtils]: 106: Hoare triple {88815#(<= ~counter~0 12)} assume !!(#t~post8 < 20);havoc #t~post8; {88815#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:49,967 INFO L272 TraceCheckUtils]: 107: Hoare triple {88815#(<= ~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)); {88815#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:49,967 INFO L290 TraceCheckUtils]: 108: Hoare triple {88815#(<= ~counter~0 12)} ~cond := #in~cond; {88815#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:49,967 INFO L290 TraceCheckUtils]: 109: Hoare triple {88815#(<= ~counter~0 12)} assume !(0 == ~cond); {88815#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:49,967 INFO L290 TraceCheckUtils]: 110: Hoare triple {88815#(<= ~counter~0 12)} assume true; {88815#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:49,968 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {88815#(<= ~counter~0 12)} {88815#(<= ~counter~0 12)} #98#return; {88815#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:49,968 INFO L290 TraceCheckUtils]: 112: Hoare triple {88815#(<= ~counter~0 12)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {88815#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:49,968 INFO L290 TraceCheckUtils]: 113: Hoare triple {88815#(<= ~counter~0 12)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {88840#(<= |main_#t~post8| 12)} is VALID [2022-04-08 06:09:49,969 INFO L290 TraceCheckUtils]: 114: Hoare triple {88840#(<= |main_#t~post8| 12)} assume !(#t~post8 < 20);havoc #t~post8; {88484#false} is VALID [2022-04-08 06:09:49,969 INFO L290 TraceCheckUtils]: 115: Hoare triple {88484#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {88484#false} is VALID [2022-04-08 06:09:49,969 INFO L290 TraceCheckUtils]: 116: Hoare triple {88484#false} assume !(#t~post6 < 20);havoc #t~post6; {88484#false} is VALID [2022-04-08 06:09:49,969 INFO L272 TraceCheckUtils]: 117: Hoare triple {88484#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)); {88484#false} is VALID [2022-04-08 06:09:49,969 INFO L290 TraceCheckUtils]: 118: Hoare triple {88484#false} ~cond := #in~cond; {88484#false} is VALID [2022-04-08 06:09:49,969 INFO L290 TraceCheckUtils]: 119: Hoare triple {88484#false} assume 0 == ~cond; {88484#false} is VALID [2022-04-08 06:09:49,969 INFO L290 TraceCheckUtils]: 120: Hoare triple {88484#false} assume !false; {88484#false} is VALID [2022-04-08 06:09:49,970 INFO L134 CoverageAnalysis]: Checked inductivity of 402 backedges. 28 proven. 370 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:09:49,970 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:09:50,548 INFO L290 TraceCheckUtils]: 120: Hoare triple {88484#false} assume !false; {88484#false} is VALID [2022-04-08 06:09:50,548 INFO L290 TraceCheckUtils]: 119: Hoare triple {88484#false} assume 0 == ~cond; {88484#false} is VALID [2022-04-08 06:09:50,548 INFO L290 TraceCheckUtils]: 118: Hoare triple {88484#false} ~cond := #in~cond; {88484#false} is VALID [2022-04-08 06:09:50,548 INFO L272 TraceCheckUtils]: 117: Hoare triple {88484#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)); {88484#false} is VALID [2022-04-08 06:09:50,548 INFO L290 TraceCheckUtils]: 116: Hoare triple {88484#false} assume !(#t~post6 < 20);havoc #t~post6; {88484#false} is VALID [2022-04-08 06:09:50,548 INFO L290 TraceCheckUtils]: 115: Hoare triple {88484#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {88484#false} is VALID [2022-04-08 06:09:50,548 INFO L290 TraceCheckUtils]: 114: Hoare triple {88880#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {88484#false} is VALID [2022-04-08 06:09:50,549 INFO L290 TraceCheckUtils]: 113: Hoare triple {88884#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {88880#(< |main_#t~post8| 20)} is VALID [2022-04-08 06:09:50,549 INFO L290 TraceCheckUtils]: 112: Hoare triple {88884#(< ~counter~0 20)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {88884#(< ~counter~0 20)} is VALID [2022-04-08 06:09:50,550 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {88483#true} {88884#(< ~counter~0 20)} #98#return; {88884#(< ~counter~0 20)} is VALID [2022-04-08 06:09:50,550 INFO L290 TraceCheckUtils]: 110: Hoare triple {88483#true} assume true; {88483#true} is VALID [2022-04-08 06:09:50,550 INFO L290 TraceCheckUtils]: 109: Hoare triple {88483#true} assume !(0 == ~cond); {88483#true} is VALID [2022-04-08 06:09:50,550 INFO L290 TraceCheckUtils]: 108: Hoare triple {88483#true} ~cond := #in~cond; {88483#true} is VALID [2022-04-08 06:09:50,550 INFO L272 TraceCheckUtils]: 107: Hoare triple {88884#(< ~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)); {88483#true} is VALID [2022-04-08 06:09:50,550 INFO L290 TraceCheckUtils]: 106: Hoare triple {88884#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {88884#(< ~counter~0 20)} is VALID [2022-04-08 06:09:50,552 INFO L290 TraceCheckUtils]: 105: Hoare triple {88909#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {88884#(< ~counter~0 20)} is VALID [2022-04-08 06:09:50,552 INFO L290 TraceCheckUtils]: 104: Hoare triple {88909#(< ~counter~0 19)} assume !(~r~0 > 0); {88909#(< ~counter~0 19)} is VALID [2022-04-08 06:09:50,553 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {88483#true} {88909#(< ~counter~0 19)} #96#return; {88909#(< ~counter~0 19)} is VALID [2022-04-08 06:09:50,553 INFO L290 TraceCheckUtils]: 102: Hoare triple {88483#true} assume true; {88483#true} is VALID [2022-04-08 06:09:50,553 INFO L290 TraceCheckUtils]: 101: Hoare triple {88483#true} assume !(0 == ~cond); {88483#true} is VALID [2022-04-08 06:09:50,553 INFO L290 TraceCheckUtils]: 100: Hoare triple {88483#true} ~cond := #in~cond; {88483#true} is VALID [2022-04-08 06:09:50,553 INFO L272 TraceCheckUtils]: 99: Hoare triple {88909#(< ~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)); {88483#true} is VALID [2022-04-08 06:09:50,553 INFO L290 TraceCheckUtils]: 98: Hoare triple {88909#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {88909#(< ~counter~0 19)} is VALID [2022-04-08 06:09:50,554 INFO L290 TraceCheckUtils]: 97: Hoare triple {88934#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88909#(< ~counter~0 19)} is VALID [2022-04-08 06:09:50,554 INFO L290 TraceCheckUtils]: 96: Hoare triple {88934#(< ~counter~0 18)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {88934#(< ~counter~0 18)} is VALID [2022-04-08 06:09:50,555 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {88483#true} {88934#(< ~counter~0 18)} #96#return; {88934#(< ~counter~0 18)} is VALID [2022-04-08 06:09:50,555 INFO L290 TraceCheckUtils]: 94: Hoare triple {88483#true} assume true; {88483#true} is VALID [2022-04-08 06:09:50,555 INFO L290 TraceCheckUtils]: 93: Hoare triple {88483#true} assume !(0 == ~cond); {88483#true} is VALID [2022-04-08 06:09:50,555 INFO L290 TraceCheckUtils]: 92: Hoare triple {88483#true} ~cond := #in~cond; {88483#true} is VALID [2022-04-08 06:09:50,555 INFO L272 TraceCheckUtils]: 91: Hoare triple {88934#(< ~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)); {88483#true} is VALID [2022-04-08 06:09:50,555 INFO L290 TraceCheckUtils]: 90: Hoare triple {88934#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {88934#(< ~counter~0 18)} is VALID [2022-04-08 06:09:50,556 INFO L290 TraceCheckUtils]: 89: Hoare triple {88959#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88934#(< ~counter~0 18)} is VALID [2022-04-08 06:09:50,556 INFO L290 TraceCheckUtils]: 88: Hoare triple {88959#(< ~counter~0 17)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {88959#(< ~counter~0 17)} is VALID [2022-04-08 06:09:50,557 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {88483#true} {88959#(< ~counter~0 17)} #96#return; {88959#(< ~counter~0 17)} is VALID [2022-04-08 06:09:50,557 INFO L290 TraceCheckUtils]: 86: Hoare triple {88483#true} assume true; {88483#true} is VALID [2022-04-08 06:09:50,557 INFO L290 TraceCheckUtils]: 85: Hoare triple {88483#true} assume !(0 == ~cond); {88483#true} is VALID [2022-04-08 06:09:50,557 INFO L290 TraceCheckUtils]: 84: Hoare triple {88483#true} ~cond := #in~cond; {88483#true} is VALID [2022-04-08 06:09:50,557 INFO L272 TraceCheckUtils]: 83: Hoare triple {88959#(< ~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)); {88483#true} is VALID [2022-04-08 06:09:50,557 INFO L290 TraceCheckUtils]: 82: Hoare triple {88959#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {88959#(< ~counter~0 17)} is VALID [2022-04-08 06:09:50,558 INFO L290 TraceCheckUtils]: 81: Hoare triple {88984#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88959#(< ~counter~0 17)} is VALID [2022-04-08 06:09:50,558 INFO L290 TraceCheckUtils]: 80: Hoare triple {88984#(< ~counter~0 16)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {88984#(< ~counter~0 16)} is VALID [2022-04-08 06:09:50,559 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {88483#true} {88984#(< ~counter~0 16)} #96#return; {88984#(< ~counter~0 16)} is VALID [2022-04-08 06:09:50,559 INFO L290 TraceCheckUtils]: 78: Hoare triple {88483#true} assume true; {88483#true} is VALID [2022-04-08 06:09:50,559 INFO L290 TraceCheckUtils]: 77: Hoare triple {88483#true} assume !(0 == ~cond); {88483#true} is VALID [2022-04-08 06:09:50,559 INFO L290 TraceCheckUtils]: 76: Hoare triple {88483#true} ~cond := #in~cond; {88483#true} is VALID [2022-04-08 06:09:50,559 INFO L272 TraceCheckUtils]: 75: Hoare triple {88984#(< ~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)); {88483#true} is VALID [2022-04-08 06:09:50,559 INFO L290 TraceCheckUtils]: 74: Hoare triple {88984#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {88984#(< ~counter~0 16)} is VALID [2022-04-08 06:09:50,560 INFO L290 TraceCheckUtils]: 73: Hoare triple {89009#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88984#(< ~counter~0 16)} is VALID [2022-04-08 06:09:50,560 INFO L290 TraceCheckUtils]: 72: Hoare triple {89009#(< ~counter~0 15)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {89009#(< ~counter~0 15)} is VALID [2022-04-08 06:09:50,561 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {88483#true} {89009#(< ~counter~0 15)} #96#return; {89009#(< ~counter~0 15)} is VALID [2022-04-08 06:09:50,561 INFO L290 TraceCheckUtils]: 70: Hoare triple {88483#true} assume true; {88483#true} is VALID [2022-04-08 06:09:50,561 INFO L290 TraceCheckUtils]: 69: Hoare triple {88483#true} assume !(0 == ~cond); {88483#true} is VALID [2022-04-08 06:09:50,561 INFO L290 TraceCheckUtils]: 68: Hoare triple {88483#true} ~cond := #in~cond; {88483#true} is VALID [2022-04-08 06:09:50,561 INFO L272 TraceCheckUtils]: 67: Hoare triple {89009#(< ~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)); {88483#true} is VALID [2022-04-08 06:09:50,561 INFO L290 TraceCheckUtils]: 66: Hoare triple {89009#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {89009#(< ~counter~0 15)} is VALID [2022-04-08 06:09:50,562 INFO L290 TraceCheckUtils]: 65: Hoare triple {89034#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {89009#(< ~counter~0 15)} is VALID [2022-04-08 06:09:50,563 INFO L290 TraceCheckUtils]: 64: Hoare triple {89034#(< ~counter~0 14)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {89034#(< ~counter~0 14)} is VALID [2022-04-08 06:09:50,563 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {88483#true} {89034#(< ~counter~0 14)} #96#return; {89034#(< ~counter~0 14)} is VALID [2022-04-08 06:09:50,563 INFO L290 TraceCheckUtils]: 62: Hoare triple {88483#true} assume true; {88483#true} is VALID [2022-04-08 06:09:50,563 INFO L290 TraceCheckUtils]: 61: Hoare triple {88483#true} assume !(0 == ~cond); {88483#true} is VALID [2022-04-08 06:09:50,563 INFO L290 TraceCheckUtils]: 60: Hoare triple {88483#true} ~cond := #in~cond; {88483#true} is VALID [2022-04-08 06:09:50,563 INFO L272 TraceCheckUtils]: 59: Hoare triple {89034#(< ~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)); {88483#true} is VALID [2022-04-08 06:09:50,564 INFO L290 TraceCheckUtils]: 58: Hoare triple {89034#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {89034#(< ~counter~0 14)} is VALID [2022-04-08 06:09:50,564 INFO L290 TraceCheckUtils]: 57: Hoare triple {88815#(<= ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {89034#(< ~counter~0 14)} is VALID [2022-04-08 06:09:50,565 INFO L290 TraceCheckUtils]: 56: Hoare triple {88815#(<= ~counter~0 12)} assume !!(0 != ~r~0); {88815#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:50,565 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {88483#true} {88815#(<= ~counter~0 12)} #94#return; {88815#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:50,565 INFO L290 TraceCheckUtils]: 54: Hoare triple {88483#true} assume true; {88483#true} is VALID [2022-04-08 06:09:50,565 INFO L290 TraceCheckUtils]: 53: Hoare triple {88483#true} assume !(0 == ~cond); {88483#true} is VALID [2022-04-08 06:09:50,565 INFO L290 TraceCheckUtils]: 52: Hoare triple {88483#true} ~cond := #in~cond; {88483#true} is VALID [2022-04-08 06:09:50,565 INFO L272 TraceCheckUtils]: 51: Hoare triple {88815#(<= ~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)); {88483#true} is VALID [2022-04-08 06:09:50,566 INFO L290 TraceCheckUtils]: 50: Hoare triple {88815#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {88815#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:50,566 INFO L290 TraceCheckUtils]: 49: Hoare triple {88790#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {88815#(<= ~counter~0 12)} is VALID [2022-04-08 06:09:50,567 INFO L290 TraceCheckUtils]: 48: Hoare triple {88790#(<= ~counter~0 11)} assume !(~r~0 < 0); {88790#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:50,567 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {88483#true} {88790#(<= ~counter~0 11)} #98#return; {88790#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:50,567 INFO L290 TraceCheckUtils]: 46: Hoare triple {88483#true} assume true; {88483#true} is VALID [2022-04-08 06:09:50,567 INFO L290 TraceCheckUtils]: 45: Hoare triple {88483#true} assume !(0 == ~cond); {88483#true} is VALID [2022-04-08 06:09:50,567 INFO L290 TraceCheckUtils]: 44: Hoare triple {88483#true} ~cond := #in~cond; {88483#true} is VALID [2022-04-08 06:09:50,567 INFO L272 TraceCheckUtils]: 43: Hoare triple {88790#(<= ~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)); {88483#true} is VALID [2022-04-08 06:09:50,568 INFO L290 TraceCheckUtils]: 42: Hoare triple {88790#(<= ~counter~0 11)} assume !!(#t~post8 < 20);havoc #t~post8; {88790#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:50,568 INFO L290 TraceCheckUtils]: 41: Hoare triple {88765#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {88790#(<= ~counter~0 11)} is VALID [2022-04-08 06:09:50,569 INFO L290 TraceCheckUtils]: 40: Hoare triple {88765#(<= ~counter~0 10)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {88765#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:50,569 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {88483#true} {88765#(<= ~counter~0 10)} #98#return; {88765#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:50,569 INFO L290 TraceCheckUtils]: 38: Hoare triple {88483#true} assume true; {88483#true} is VALID [2022-04-08 06:09:50,569 INFO L290 TraceCheckUtils]: 37: Hoare triple {88483#true} assume !(0 == ~cond); {88483#true} is VALID [2022-04-08 06:09:50,569 INFO L290 TraceCheckUtils]: 36: Hoare triple {88483#true} ~cond := #in~cond; {88483#true} is VALID [2022-04-08 06:09:50,569 INFO L272 TraceCheckUtils]: 35: Hoare triple {88765#(<= ~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)); {88483#true} is VALID [2022-04-08 06:09:50,570 INFO L290 TraceCheckUtils]: 34: Hoare triple {88765#(<= ~counter~0 10)} assume !!(#t~post8 < 20);havoc #t~post8; {88765#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:50,571 INFO L290 TraceCheckUtils]: 33: Hoare triple {88740#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {88765#(<= ~counter~0 10)} is VALID [2022-04-08 06:09:50,571 INFO L290 TraceCheckUtils]: 32: Hoare triple {88740#(<= ~counter~0 9)} assume !(~r~0 > 0); {88740#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:50,571 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {88483#true} {88740#(<= ~counter~0 9)} #96#return; {88740#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:50,571 INFO L290 TraceCheckUtils]: 30: Hoare triple {88483#true} assume true; {88483#true} is VALID [2022-04-08 06:09:50,571 INFO L290 TraceCheckUtils]: 29: Hoare triple {88483#true} assume !(0 == ~cond); {88483#true} is VALID [2022-04-08 06:09:50,571 INFO L290 TraceCheckUtils]: 28: Hoare triple {88483#true} ~cond := #in~cond; {88483#true} is VALID [2022-04-08 06:09:50,572 INFO L272 TraceCheckUtils]: 27: Hoare triple {88740#(<= ~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)); {88483#true} is VALID [2022-04-08 06:09:50,572 INFO L290 TraceCheckUtils]: 26: Hoare triple {88740#(<= ~counter~0 9)} assume !!(#t~post7 < 20);havoc #t~post7; {88740#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:50,573 INFO L290 TraceCheckUtils]: 25: Hoare triple {88715#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88740#(<= ~counter~0 9)} is VALID [2022-04-08 06:09:50,573 INFO L290 TraceCheckUtils]: 24: Hoare triple {88715#(<= ~counter~0 8)} assume !!(0 != ~r~0); {88715#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:50,573 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {88483#true} {88715#(<= ~counter~0 8)} #94#return; {88715#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:50,573 INFO L290 TraceCheckUtils]: 22: Hoare triple {88483#true} assume true; {88483#true} is VALID [2022-04-08 06:09:50,573 INFO L290 TraceCheckUtils]: 21: Hoare triple {88483#true} assume !(0 == ~cond); {88483#true} is VALID [2022-04-08 06:09:50,574 INFO L290 TraceCheckUtils]: 20: Hoare triple {88483#true} ~cond := #in~cond; {88483#true} is VALID [2022-04-08 06:09:50,574 INFO L272 TraceCheckUtils]: 19: Hoare triple {88715#(<= ~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)); {88483#true} is VALID [2022-04-08 06:09:50,574 INFO L290 TraceCheckUtils]: 18: Hoare triple {88715#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {88715#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:50,575 INFO L290 TraceCheckUtils]: 17: Hoare triple {88690#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {88715#(<= ~counter~0 8)} is VALID [2022-04-08 06:09:50,575 INFO L290 TraceCheckUtils]: 16: Hoare triple {88690#(<= ~counter~0 7)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:50,575 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {88483#true} {88690#(<= ~counter~0 7)} #92#return; {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:50,575 INFO L290 TraceCheckUtils]: 14: Hoare triple {88483#true} assume true; {88483#true} is VALID [2022-04-08 06:09:50,575 INFO L290 TraceCheckUtils]: 13: Hoare triple {88483#true} assume !(0 == ~cond); {88483#true} is VALID [2022-04-08 06:09:50,575 INFO L290 TraceCheckUtils]: 12: Hoare triple {88483#true} ~cond := #in~cond; {88483#true} is VALID [2022-04-08 06:09:50,576 INFO L272 TraceCheckUtils]: 11: Hoare triple {88690#(<= ~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)); {88483#true} is VALID [2022-04-08 06:09:50,576 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {88483#true} {88690#(<= ~counter~0 7)} #90#return; {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:50,576 INFO L290 TraceCheckUtils]: 9: Hoare triple {88483#true} assume true; {88483#true} is VALID [2022-04-08 06:09:50,576 INFO L290 TraceCheckUtils]: 8: Hoare triple {88483#true} assume !(0 == ~cond); {88483#true} is VALID [2022-04-08 06:09:50,576 INFO L290 TraceCheckUtils]: 7: Hoare triple {88483#true} ~cond := #in~cond; {88483#true} is VALID [2022-04-08 06:09:50,576 INFO L272 TraceCheckUtils]: 6: Hoare triple {88690#(<= ~counter~0 7)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {88483#true} is VALID [2022-04-08 06:09:50,576 INFO L290 TraceCheckUtils]: 5: Hoare triple {88690#(<= ~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; {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:50,577 INFO L272 TraceCheckUtils]: 4: Hoare triple {88690#(<= ~counter~0 7)} call #t~ret9 := main(); {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:50,577 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {88690#(<= ~counter~0 7)} {88483#true} #102#return; {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:50,577 INFO L290 TraceCheckUtils]: 2: Hoare triple {88690#(<= ~counter~0 7)} assume true; {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:50,578 INFO L290 TraceCheckUtils]: 1: Hoare triple {88483#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {88690#(<= ~counter~0 7)} is VALID [2022-04-08 06:09:50,578 INFO L272 TraceCheckUtils]: 0: Hoare triple {88483#true} call ULTIMATE.init(); {88483#true} is VALID [2022-04-08 06:09:50,578 INFO L134 CoverageAnalysis]: Checked inductivity of 402 backedges. 28 proven. 106 refuted. 0 times theorem prover too weak. 268 trivial. 0 not checked. [2022-04-08 06:09:50,578 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:09:50,578 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1965397793] [2022-04-08 06:09:50,578 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:09:50,578 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1827697216] [2022-04-08 06:09:50,578 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1827697216] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:09:50,578 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:09:50,579 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 24 [2022-04-08 06:09:50,579 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:09:50,579 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1160931952] [2022-04-08 06:09:50,579 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1160931952] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:09:50,579 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:09:50,579 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-08 06:09:50,579 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [189455231] [2022-04-08 06:09:50,579 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:09:50,579 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 5.375) internal successors, (86), 15 states have internal predecessors, (86), 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 121 [2022-04-08 06:09:50,579 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:09:50,580 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 5.375) internal successors, (86), 15 states have internal predecessors, (86), 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:09:50,668 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:50,669 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-08 06:09:50,669 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:09:50,669 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-08 06:09:50,669 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:09:50,669 INFO L87 Difference]: Start difference. First operand 652 states and 868 transitions. Second operand has 16 states, 16 states have (on average 5.375) internal successors, (86), 15 states have internal predecessors, (86), 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:09:53,597 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:53,598 INFO L93 Difference]: Finished difference Result 877 states and 1204 transitions. [2022-04-08 06:09:53,598 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-08 06:09:53,598 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 5.375) internal successors, (86), 15 states have internal predecessors, (86), 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 121 [2022-04-08 06:09:53,598 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:09:53,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 5.375) internal successors, (86), 15 states have internal predecessors, (86), 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:09:53,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 276 transitions. [2022-04-08 06:09:53,600 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 5.375) internal successors, (86), 15 states have internal predecessors, (86), 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:09:53,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 276 transitions. [2022-04-08 06:09:53,602 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 276 transitions. [2022-04-08 06:09:53,870 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 276 edges. 276 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:53,891 INFO L225 Difference]: With dead ends: 877 [2022-04-08 06:09:53,891 INFO L226 Difference]: Without dead ends: 680 [2022-04-08 06:09:53,892 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 251 GetRequests, 218 SyntacticMatches, 1 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 83 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=446, Invalid=676, Unknown=0, NotChecked=0, Total=1122 [2022-04-08 06:09:53,892 INFO L913 BasicCegarLoop]: 66 mSDtfsCounter, 169 mSDsluCounter, 224 mSDsCounter, 0 mSdLazyCounter, 170 mSolverCounterSat, 152 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 169 SdHoareTripleChecker+Valid, 290 SdHoareTripleChecker+Invalid, 322 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 152 IncrementalHoareTripleChecker+Valid, 170 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 06:09:53,892 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [169 Valid, 290 Invalid, 322 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [152 Valid, 170 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 06:09:53,893 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 680 states. [2022-04-08 06:09:55,765 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 680 to 670. [2022-04-08 06:09:55,765 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:09:55,766 INFO L82 GeneralOperation]: Start isEquivalent. First operand 680 states. Second operand has 670 states, 505 states have (on average 1.2118811881188118) internal successors, (612), 509 states have internal predecessors, (612), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 134 states have call predecessors, (138), 138 states have call successors, (138) [2022-04-08 06:09:55,766 INFO L74 IsIncluded]: Start isIncluded. First operand 680 states. Second operand has 670 states, 505 states have (on average 1.2118811881188118) internal successors, (612), 509 states have internal predecessors, (612), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 134 states have call predecessors, (138), 138 states have call successors, (138) [2022-04-08 06:09:55,767 INFO L87 Difference]: Start difference. First operand 680 states. Second operand has 670 states, 505 states have (on average 1.2118811881188118) internal successors, (612), 509 states have internal predecessors, (612), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 134 states have call predecessors, (138), 138 states have call successors, (138) [2022-04-08 06:09:55,782 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:55,782 INFO L93 Difference]: Finished difference Result 680 states and 900 transitions. [2022-04-08 06:09:55,783 INFO L276 IsEmpty]: Start isEmpty. Operand 680 states and 900 transitions. [2022-04-08 06:09:55,783 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:09:55,783 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:09:55,784 INFO L74 IsIncluded]: Start isIncluded. First operand has 670 states, 505 states have (on average 1.2118811881188118) internal successors, (612), 509 states have internal predecessors, (612), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 134 states have call predecessors, (138), 138 states have call successors, (138) Second operand 680 states. [2022-04-08 06:09:55,784 INFO L87 Difference]: Start difference. First operand has 670 states, 505 states have (on average 1.2118811881188118) internal successors, (612), 509 states have internal predecessors, (612), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 134 states have call predecessors, (138), 138 states have call successors, (138) Second operand 680 states. [2022-04-08 06:09:55,800 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:55,800 INFO L93 Difference]: Finished difference Result 680 states and 900 transitions. [2022-04-08 06:09:55,800 INFO L276 IsEmpty]: Start isEmpty. Operand 680 states and 900 transitions. [2022-04-08 06:09:55,800 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:09:55,800 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:09:55,801 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:09:55,801 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:09:55,801 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 670 states, 505 states have (on average 1.2118811881188118) internal successors, (612), 509 states have internal predecessors, (612), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 134 states have call predecessors, (138), 138 states have call successors, (138) [2022-04-08 06:09:55,821 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 670 states to 670 states and 890 transitions. [2022-04-08 06:09:55,821 INFO L78 Accepts]: Start accepts. Automaton has 670 states and 890 transitions. Word has length 121 [2022-04-08 06:09:55,821 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:09:55,821 INFO L478 AbstractCegarLoop]: Abstraction has 670 states and 890 transitions. [2022-04-08 06:09:55,821 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 5.375) internal successors, (86), 15 states have internal predecessors, (86), 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:09:55,821 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 670 states and 890 transitions. [2022-04-08 06:10:14,260 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 890 edges. 887 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-08 06:10:14,260 INFO L276 IsEmpty]: Start isEmpty. Operand 670 states and 890 transitions. [2022-04-08 06:10:14,261 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 124 [2022-04-08 06:10:14,261 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:10:14,262 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 6, 5, 5, 5, 5, 4, 4, 4, 4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:10:14,267 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Forceful destruction successful, exit code 0 [2022-04-08 06:10:14,462 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 41 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable39 [2022-04-08 06:10:14,462 INFO L403 AbstractCegarLoop]: === Iteration 41 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:10:14,462 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:10:14,462 INFO L85 PathProgramCache]: Analyzing trace with hash 487500267, now seen corresponding path program 15 times [2022-04-08 06:10:14,462 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:10:14,463 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1593797350] [2022-04-08 06:10:14,463 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:10:14,463 INFO L85 PathProgramCache]: Analyzing trace with hash 487500267, now seen corresponding path program 16 times [2022-04-08 06:10:14,463 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:10:14,463 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1485480874] [2022-04-08 06:10:14,463 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:10:14,463 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:10:14,474 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:10:14,474 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1504210009] [2022-04-08 06:10:14,474 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:10:14,475 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:10:14,475 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:10:14,475 INFO L229 MonitoredProcess]: Starting monitored process 42 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:10:14,476 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Waiting until timeout for monitored process [2022-04-08 06:10:14,590 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:10:14,590 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:10:14,591 INFO L263 TraceCheckSpWp]: Trace formula consists of 303 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-08 06:10:14,621 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:10:14,625 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:10:15,181 INFO L272 TraceCheckUtils]: 0: Hoare triple {93706#true} call ULTIMATE.init(); {93706#true} is VALID [2022-04-08 06:10:15,182 INFO L290 TraceCheckUtils]: 1: Hoare triple {93706#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,182 INFO L290 TraceCheckUtils]: 2: Hoare triple {93714#(<= ~counter~0 0)} assume true; {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,182 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {93714#(<= ~counter~0 0)} {93706#true} #102#return; {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,183 INFO L272 TraceCheckUtils]: 4: Hoare triple {93714#(<= ~counter~0 0)} call #t~ret9 := main(); {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,183 INFO L290 TraceCheckUtils]: 5: Hoare triple {93714#(<= ~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; {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,183 INFO L272 TraceCheckUtils]: 6: Hoare triple {93714#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,184 INFO L290 TraceCheckUtils]: 7: Hoare triple {93714#(<= ~counter~0 0)} ~cond := #in~cond; {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,184 INFO L290 TraceCheckUtils]: 8: Hoare triple {93714#(<= ~counter~0 0)} assume !(0 == ~cond); {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,184 INFO L290 TraceCheckUtils]: 9: Hoare triple {93714#(<= ~counter~0 0)} assume true; {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,185 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {93714#(<= ~counter~0 0)} {93714#(<= ~counter~0 0)} #90#return; {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,185 INFO L272 TraceCheckUtils]: 11: Hoare triple {93714#(<= ~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)); {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,185 INFO L290 TraceCheckUtils]: 12: Hoare triple {93714#(<= ~counter~0 0)} ~cond := #in~cond; {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,185 INFO L290 TraceCheckUtils]: 13: Hoare triple {93714#(<= ~counter~0 0)} assume !(0 == ~cond); {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,186 INFO L290 TraceCheckUtils]: 14: Hoare triple {93714#(<= ~counter~0 0)} assume true; {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,186 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {93714#(<= ~counter~0 0)} {93714#(<= ~counter~0 0)} #92#return; {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,186 INFO L290 TraceCheckUtils]: 16: Hoare triple {93714#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {93714#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:15,188 INFO L290 TraceCheckUtils]: 17: Hoare triple {93714#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {93763#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:15,189 INFO L290 TraceCheckUtils]: 18: Hoare triple {93763#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {93763#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:15,189 INFO L272 TraceCheckUtils]: 19: Hoare triple {93763#(<= ~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)); {93763#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:15,189 INFO L290 TraceCheckUtils]: 20: Hoare triple {93763#(<= ~counter~0 1)} ~cond := #in~cond; {93763#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:15,190 INFO L290 TraceCheckUtils]: 21: Hoare triple {93763#(<= ~counter~0 1)} assume !(0 == ~cond); {93763#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:15,190 INFO L290 TraceCheckUtils]: 22: Hoare triple {93763#(<= ~counter~0 1)} assume true; {93763#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:15,190 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {93763#(<= ~counter~0 1)} {93763#(<= ~counter~0 1)} #94#return; {93763#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:15,191 INFO L290 TraceCheckUtils]: 24: Hoare triple {93763#(<= ~counter~0 1)} assume !!(0 != ~r~0); {93763#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:15,192 INFO L290 TraceCheckUtils]: 25: Hoare triple {93763#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {93788#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:15,192 INFO L290 TraceCheckUtils]: 26: Hoare triple {93788#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {93788#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:15,193 INFO L272 TraceCheckUtils]: 27: Hoare triple {93788#(<= ~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)); {93788#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:15,193 INFO L290 TraceCheckUtils]: 28: Hoare triple {93788#(<= ~counter~0 2)} ~cond := #in~cond; {93788#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:15,193 INFO L290 TraceCheckUtils]: 29: Hoare triple {93788#(<= ~counter~0 2)} assume !(0 == ~cond); {93788#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:15,193 INFO L290 TraceCheckUtils]: 30: Hoare triple {93788#(<= ~counter~0 2)} assume true; {93788#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:15,194 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {93788#(<= ~counter~0 2)} {93788#(<= ~counter~0 2)} #96#return; {93788#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:15,194 INFO L290 TraceCheckUtils]: 32: Hoare triple {93788#(<= ~counter~0 2)} assume !(~r~0 > 0); {93788#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:15,195 INFO L290 TraceCheckUtils]: 33: Hoare triple {93788#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {93813#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:15,195 INFO L290 TraceCheckUtils]: 34: Hoare triple {93813#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {93813#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:15,196 INFO L272 TraceCheckUtils]: 35: Hoare triple {93813#(<= ~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)); {93813#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:15,196 INFO L290 TraceCheckUtils]: 36: Hoare triple {93813#(<= ~counter~0 3)} ~cond := #in~cond; {93813#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:15,196 INFO L290 TraceCheckUtils]: 37: Hoare triple {93813#(<= ~counter~0 3)} assume !(0 == ~cond); {93813#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:15,197 INFO L290 TraceCheckUtils]: 38: Hoare triple {93813#(<= ~counter~0 3)} assume true; {93813#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:15,197 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {93813#(<= ~counter~0 3)} {93813#(<= ~counter~0 3)} #98#return; {93813#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:15,197 INFO L290 TraceCheckUtils]: 40: Hoare triple {93813#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {93813#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:15,198 INFO L290 TraceCheckUtils]: 41: Hoare triple {93813#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {93838#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:15,199 INFO L290 TraceCheckUtils]: 42: Hoare triple {93838#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {93838#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:15,199 INFO L272 TraceCheckUtils]: 43: Hoare triple {93838#(<= ~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)); {93838#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:15,199 INFO L290 TraceCheckUtils]: 44: Hoare triple {93838#(<= ~counter~0 4)} ~cond := #in~cond; {93838#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:15,200 INFO L290 TraceCheckUtils]: 45: Hoare triple {93838#(<= ~counter~0 4)} assume !(0 == ~cond); {93838#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:15,200 INFO L290 TraceCheckUtils]: 46: Hoare triple {93838#(<= ~counter~0 4)} assume true; {93838#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:15,200 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {93838#(<= ~counter~0 4)} {93838#(<= ~counter~0 4)} #98#return; {93838#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:15,201 INFO L290 TraceCheckUtils]: 48: Hoare triple {93838#(<= ~counter~0 4)} assume !(~r~0 < 0); {93838#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:15,201 INFO L290 TraceCheckUtils]: 49: Hoare triple {93838#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {93863#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:15,202 INFO L290 TraceCheckUtils]: 50: Hoare triple {93863#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {93863#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:15,202 INFO L272 TraceCheckUtils]: 51: Hoare triple {93863#(<= ~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)); {93863#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:15,202 INFO L290 TraceCheckUtils]: 52: Hoare triple {93863#(<= ~counter~0 5)} ~cond := #in~cond; {93863#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:15,203 INFO L290 TraceCheckUtils]: 53: Hoare triple {93863#(<= ~counter~0 5)} assume !(0 == ~cond); {93863#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:15,203 INFO L290 TraceCheckUtils]: 54: Hoare triple {93863#(<= ~counter~0 5)} assume true; {93863#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:15,203 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {93863#(<= ~counter~0 5)} {93863#(<= ~counter~0 5)} #94#return; {93863#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:15,204 INFO L290 TraceCheckUtils]: 56: Hoare triple {93863#(<= ~counter~0 5)} assume !!(0 != ~r~0); {93863#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:15,205 INFO L290 TraceCheckUtils]: 57: Hoare triple {93863#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {93888#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:15,205 INFO L290 TraceCheckUtils]: 58: Hoare triple {93888#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {93888#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:15,205 INFO L272 TraceCheckUtils]: 59: Hoare triple {93888#(<= ~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)); {93888#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:15,206 INFO L290 TraceCheckUtils]: 60: Hoare triple {93888#(<= ~counter~0 6)} ~cond := #in~cond; {93888#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:15,206 INFO L290 TraceCheckUtils]: 61: Hoare triple {93888#(<= ~counter~0 6)} assume !(0 == ~cond); {93888#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:15,206 INFO L290 TraceCheckUtils]: 62: Hoare triple {93888#(<= ~counter~0 6)} assume true; {93888#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:15,207 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {93888#(<= ~counter~0 6)} {93888#(<= ~counter~0 6)} #96#return; {93888#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:15,207 INFO L290 TraceCheckUtils]: 64: Hoare triple {93888#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {93888#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:15,208 INFO L290 TraceCheckUtils]: 65: Hoare triple {93888#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,208 INFO L290 TraceCheckUtils]: 66: Hoare triple {93913#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,209 INFO L272 TraceCheckUtils]: 67: Hoare triple {93913#(<= ~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)); {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,209 INFO L290 TraceCheckUtils]: 68: Hoare triple {93913#(<= ~counter~0 7)} ~cond := #in~cond; {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,209 INFO L290 TraceCheckUtils]: 69: Hoare triple {93913#(<= ~counter~0 7)} assume !(0 == ~cond); {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,209 INFO L290 TraceCheckUtils]: 70: Hoare triple {93913#(<= ~counter~0 7)} assume true; {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,210 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {93913#(<= ~counter~0 7)} {93913#(<= ~counter~0 7)} #96#return; {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,210 INFO L290 TraceCheckUtils]: 72: Hoare triple {93913#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,211 INFO L290 TraceCheckUtils]: 73: Hoare triple {93913#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {93938#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:15,211 INFO L290 TraceCheckUtils]: 74: Hoare triple {93938#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {93938#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:15,212 INFO L272 TraceCheckUtils]: 75: Hoare triple {93938#(<= ~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)); {93938#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:15,212 INFO L290 TraceCheckUtils]: 76: Hoare triple {93938#(<= ~counter~0 8)} ~cond := #in~cond; {93938#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:15,212 INFO L290 TraceCheckUtils]: 77: Hoare triple {93938#(<= ~counter~0 8)} assume !(0 == ~cond); {93938#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:15,212 INFO L290 TraceCheckUtils]: 78: Hoare triple {93938#(<= ~counter~0 8)} assume true; {93938#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:15,213 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {93938#(<= ~counter~0 8)} {93938#(<= ~counter~0 8)} #96#return; {93938#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:15,213 INFO L290 TraceCheckUtils]: 80: Hoare triple {93938#(<= ~counter~0 8)} assume !(~r~0 > 0); {93938#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:15,214 INFO L290 TraceCheckUtils]: 81: Hoare triple {93938#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {93963#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:15,214 INFO L290 TraceCheckUtils]: 82: Hoare triple {93963#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {93963#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:15,215 INFO L272 TraceCheckUtils]: 83: Hoare triple {93963#(<= ~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)); {93963#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:15,215 INFO L290 TraceCheckUtils]: 84: Hoare triple {93963#(<= ~counter~0 9)} ~cond := #in~cond; {93963#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:15,215 INFO L290 TraceCheckUtils]: 85: Hoare triple {93963#(<= ~counter~0 9)} assume !(0 == ~cond); {93963#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:15,215 INFO L290 TraceCheckUtils]: 86: Hoare triple {93963#(<= ~counter~0 9)} assume true; {93963#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:15,216 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {93963#(<= ~counter~0 9)} {93963#(<= ~counter~0 9)} #98#return; {93963#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:15,216 INFO L290 TraceCheckUtils]: 88: Hoare triple {93963#(<= ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {93963#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:15,217 INFO L290 TraceCheckUtils]: 89: Hoare triple {93963#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {93988#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:15,217 INFO L290 TraceCheckUtils]: 90: Hoare triple {93988#(<= ~counter~0 10)} assume !!(#t~post8 < 20);havoc #t~post8; {93988#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:15,218 INFO L272 TraceCheckUtils]: 91: Hoare triple {93988#(<= ~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)); {93988#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:15,218 INFO L290 TraceCheckUtils]: 92: Hoare triple {93988#(<= ~counter~0 10)} ~cond := #in~cond; {93988#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:15,218 INFO L290 TraceCheckUtils]: 93: Hoare triple {93988#(<= ~counter~0 10)} assume !(0 == ~cond); {93988#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:15,219 INFO L290 TraceCheckUtils]: 94: Hoare triple {93988#(<= ~counter~0 10)} assume true; {93988#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:15,219 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {93988#(<= ~counter~0 10)} {93988#(<= ~counter~0 10)} #98#return; {93988#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:15,219 INFO L290 TraceCheckUtils]: 96: Hoare triple {93988#(<= ~counter~0 10)} assume !(~r~0 < 0); {93988#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:15,220 INFO L290 TraceCheckUtils]: 97: Hoare triple {93988#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {94013#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:15,220 INFO L290 TraceCheckUtils]: 98: Hoare triple {94013#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {94013#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:15,221 INFO L272 TraceCheckUtils]: 99: Hoare triple {94013#(<= ~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)); {94013#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:15,221 INFO L290 TraceCheckUtils]: 100: Hoare triple {94013#(<= ~counter~0 11)} ~cond := #in~cond; {94013#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:15,221 INFO L290 TraceCheckUtils]: 101: Hoare triple {94013#(<= ~counter~0 11)} assume !(0 == ~cond); {94013#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:15,222 INFO L290 TraceCheckUtils]: 102: Hoare triple {94013#(<= ~counter~0 11)} assume true; {94013#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:15,222 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {94013#(<= ~counter~0 11)} {94013#(<= ~counter~0 11)} #94#return; {94013#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:15,222 INFO L290 TraceCheckUtils]: 104: Hoare triple {94013#(<= ~counter~0 11)} assume !!(0 != ~r~0); {94013#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:15,223 INFO L290 TraceCheckUtils]: 105: Hoare triple {94013#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {94038#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:15,223 INFO L290 TraceCheckUtils]: 106: Hoare triple {94038#(<= ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {94038#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:15,224 INFO L272 TraceCheckUtils]: 107: Hoare triple {94038#(<= ~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)); {94038#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:15,224 INFO L290 TraceCheckUtils]: 108: Hoare triple {94038#(<= ~counter~0 12)} ~cond := #in~cond; {94038#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:15,224 INFO L290 TraceCheckUtils]: 109: Hoare triple {94038#(<= ~counter~0 12)} assume !(0 == ~cond); {94038#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:15,225 INFO L290 TraceCheckUtils]: 110: Hoare triple {94038#(<= ~counter~0 12)} assume true; {94038#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:15,225 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {94038#(<= ~counter~0 12)} {94038#(<= ~counter~0 12)} #96#return; {94038#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:15,225 INFO L290 TraceCheckUtils]: 112: Hoare triple {94038#(<= ~counter~0 12)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {94038#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:15,226 INFO L290 TraceCheckUtils]: 113: Hoare triple {94038#(<= ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {94063#(<= |main_#t~post7| 12)} is VALID [2022-04-08 06:10:15,226 INFO L290 TraceCheckUtils]: 114: Hoare triple {94063#(<= |main_#t~post7| 12)} assume !(#t~post7 < 20);havoc #t~post7; {93707#false} is VALID [2022-04-08 06:10:15,226 INFO L290 TraceCheckUtils]: 115: Hoare triple {93707#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {93707#false} is VALID [2022-04-08 06:10:15,226 INFO L290 TraceCheckUtils]: 116: Hoare triple {93707#false} assume !(#t~post8 < 20);havoc #t~post8; {93707#false} is VALID [2022-04-08 06:10:15,226 INFO L290 TraceCheckUtils]: 117: Hoare triple {93707#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {93707#false} is VALID [2022-04-08 06:10:15,226 INFO L290 TraceCheckUtils]: 118: Hoare triple {93707#false} assume !(#t~post6 < 20);havoc #t~post6; {93707#false} is VALID [2022-04-08 06:10:15,226 INFO L272 TraceCheckUtils]: 119: Hoare triple {93707#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)); {93707#false} is VALID [2022-04-08 06:10:15,227 INFO L290 TraceCheckUtils]: 120: Hoare triple {93707#false} ~cond := #in~cond; {93707#false} is VALID [2022-04-08 06:10:15,227 INFO L290 TraceCheckUtils]: 121: Hoare triple {93707#false} assume 0 == ~cond; {93707#false} is VALID [2022-04-08 06:10:15,227 INFO L290 TraceCheckUtils]: 122: Hoare triple {93707#false} assume !false; {93707#false} is VALID [2022-04-08 06:10:15,227 INFO L134 CoverageAnalysis]: Checked inductivity of 392 backedges. 38 proven. 350 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:10:15,227 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:10:15,785 INFO L290 TraceCheckUtils]: 122: Hoare triple {93707#false} assume !false; {93707#false} is VALID [2022-04-08 06:10:15,785 INFO L290 TraceCheckUtils]: 121: Hoare triple {93707#false} assume 0 == ~cond; {93707#false} is VALID [2022-04-08 06:10:15,785 INFO L290 TraceCheckUtils]: 120: Hoare triple {93707#false} ~cond := #in~cond; {93707#false} is VALID [2022-04-08 06:10:15,785 INFO L272 TraceCheckUtils]: 119: Hoare triple {93707#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)); {93707#false} is VALID [2022-04-08 06:10:15,786 INFO L290 TraceCheckUtils]: 118: Hoare triple {93707#false} assume !(#t~post6 < 20);havoc #t~post6; {93707#false} is VALID [2022-04-08 06:10:15,786 INFO L290 TraceCheckUtils]: 117: Hoare triple {93707#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {93707#false} is VALID [2022-04-08 06:10:15,786 INFO L290 TraceCheckUtils]: 116: Hoare triple {93707#false} assume !(#t~post8 < 20);havoc #t~post8; {93707#false} is VALID [2022-04-08 06:10:15,786 INFO L290 TraceCheckUtils]: 115: Hoare triple {93707#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {93707#false} is VALID [2022-04-08 06:10:15,786 INFO L290 TraceCheckUtils]: 114: Hoare triple {94115#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {93707#false} is VALID [2022-04-08 06:10:15,786 INFO L290 TraceCheckUtils]: 113: Hoare triple {94119#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {94115#(< |main_#t~post7| 20)} is VALID [2022-04-08 06:10:15,787 INFO L290 TraceCheckUtils]: 112: Hoare triple {94119#(< ~counter~0 20)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {94119#(< ~counter~0 20)} is VALID [2022-04-08 06:10:15,787 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {93706#true} {94119#(< ~counter~0 20)} #96#return; {94119#(< ~counter~0 20)} is VALID [2022-04-08 06:10:15,787 INFO L290 TraceCheckUtils]: 110: Hoare triple {93706#true} assume true; {93706#true} is VALID [2022-04-08 06:10:15,787 INFO L290 TraceCheckUtils]: 109: Hoare triple {93706#true} assume !(0 == ~cond); {93706#true} is VALID [2022-04-08 06:10:15,787 INFO L290 TraceCheckUtils]: 108: Hoare triple {93706#true} ~cond := #in~cond; {93706#true} is VALID [2022-04-08 06:10:15,787 INFO L272 TraceCheckUtils]: 107: Hoare triple {94119#(< ~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)); {93706#true} is VALID [2022-04-08 06:10:15,788 INFO L290 TraceCheckUtils]: 106: Hoare triple {94119#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {94119#(< ~counter~0 20)} is VALID [2022-04-08 06:10:15,790 INFO L290 TraceCheckUtils]: 105: Hoare triple {94144#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {94119#(< ~counter~0 20)} is VALID [2022-04-08 06:10:15,790 INFO L290 TraceCheckUtils]: 104: Hoare triple {94144#(< ~counter~0 19)} assume !!(0 != ~r~0); {94144#(< ~counter~0 19)} is VALID [2022-04-08 06:10:15,790 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {93706#true} {94144#(< ~counter~0 19)} #94#return; {94144#(< ~counter~0 19)} is VALID [2022-04-08 06:10:15,790 INFO L290 TraceCheckUtils]: 102: Hoare triple {93706#true} assume true; {93706#true} is VALID [2022-04-08 06:10:15,790 INFO L290 TraceCheckUtils]: 101: Hoare triple {93706#true} assume !(0 == ~cond); {93706#true} is VALID [2022-04-08 06:10:15,791 INFO L290 TraceCheckUtils]: 100: Hoare triple {93706#true} ~cond := #in~cond; {93706#true} is VALID [2022-04-08 06:10:15,791 INFO L272 TraceCheckUtils]: 99: Hoare triple {94144#(< ~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)); {93706#true} is VALID [2022-04-08 06:10:15,791 INFO L290 TraceCheckUtils]: 98: Hoare triple {94144#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {94144#(< ~counter~0 19)} is VALID [2022-04-08 06:10:15,792 INFO L290 TraceCheckUtils]: 97: Hoare triple {94169#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {94144#(< ~counter~0 19)} is VALID [2022-04-08 06:10:15,792 INFO L290 TraceCheckUtils]: 96: Hoare triple {94169#(< ~counter~0 18)} assume !(~r~0 < 0); {94169#(< ~counter~0 18)} is VALID [2022-04-08 06:10:15,792 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {93706#true} {94169#(< ~counter~0 18)} #98#return; {94169#(< ~counter~0 18)} is VALID [2022-04-08 06:10:15,793 INFO L290 TraceCheckUtils]: 94: Hoare triple {93706#true} assume true; {93706#true} is VALID [2022-04-08 06:10:15,793 INFO L290 TraceCheckUtils]: 93: Hoare triple {93706#true} assume !(0 == ~cond); {93706#true} is VALID [2022-04-08 06:10:15,793 INFO L290 TraceCheckUtils]: 92: Hoare triple {93706#true} ~cond := #in~cond; {93706#true} is VALID [2022-04-08 06:10:15,793 INFO L272 TraceCheckUtils]: 91: Hoare triple {94169#(< ~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)); {93706#true} is VALID [2022-04-08 06:10:15,793 INFO L290 TraceCheckUtils]: 90: Hoare triple {94169#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {94169#(< ~counter~0 18)} is VALID [2022-04-08 06:10:15,794 INFO L290 TraceCheckUtils]: 89: Hoare triple {94194#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {94169#(< ~counter~0 18)} is VALID [2022-04-08 06:10:15,794 INFO L290 TraceCheckUtils]: 88: Hoare triple {94194#(< ~counter~0 17)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {94194#(< ~counter~0 17)} is VALID [2022-04-08 06:10:15,795 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {93706#true} {94194#(< ~counter~0 17)} #98#return; {94194#(< ~counter~0 17)} is VALID [2022-04-08 06:10:15,795 INFO L290 TraceCheckUtils]: 86: Hoare triple {93706#true} assume true; {93706#true} is VALID [2022-04-08 06:10:15,795 INFO L290 TraceCheckUtils]: 85: Hoare triple {93706#true} assume !(0 == ~cond); {93706#true} is VALID [2022-04-08 06:10:15,795 INFO L290 TraceCheckUtils]: 84: Hoare triple {93706#true} ~cond := #in~cond; {93706#true} is VALID [2022-04-08 06:10:15,795 INFO L272 TraceCheckUtils]: 83: Hoare triple {94194#(< ~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)); {93706#true} is VALID [2022-04-08 06:10:15,795 INFO L290 TraceCheckUtils]: 82: Hoare triple {94194#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {94194#(< ~counter~0 17)} is VALID [2022-04-08 06:10:15,796 INFO L290 TraceCheckUtils]: 81: Hoare triple {94219#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {94194#(< ~counter~0 17)} is VALID [2022-04-08 06:10:15,796 INFO L290 TraceCheckUtils]: 80: Hoare triple {94219#(< ~counter~0 16)} assume !(~r~0 > 0); {94219#(< ~counter~0 16)} is VALID [2022-04-08 06:10:15,797 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {93706#true} {94219#(< ~counter~0 16)} #96#return; {94219#(< ~counter~0 16)} is VALID [2022-04-08 06:10:15,797 INFO L290 TraceCheckUtils]: 78: Hoare triple {93706#true} assume true; {93706#true} is VALID [2022-04-08 06:10:15,797 INFO L290 TraceCheckUtils]: 77: Hoare triple {93706#true} assume !(0 == ~cond); {93706#true} is VALID [2022-04-08 06:10:15,797 INFO L290 TraceCheckUtils]: 76: Hoare triple {93706#true} ~cond := #in~cond; {93706#true} is VALID [2022-04-08 06:10:15,797 INFO L272 TraceCheckUtils]: 75: Hoare triple {94219#(< ~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)); {93706#true} is VALID [2022-04-08 06:10:15,797 INFO L290 TraceCheckUtils]: 74: Hoare triple {94219#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {94219#(< ~counter~0 16)} is VALID [2022-04-08 06:10:15,798 INFO L290 TraceCheckUtils]: 73: Hoare triple {94244#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {94219#(< ~counter~0 16)} is VALID [2022-04-08 06:10:15,798 INFO L290 TraceCheckUtils]: 72: Hoare triple {94244#(< ~counter~0 15)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {94244#(< ~counter~0 15)} is VALID [2022-04-08 06:10:15,799 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {93706#true} {94244#(< ~counter~0 15)} #96#return; {94244#(< ~counter~0 15)} is VALID [2022-04-08 06:10:15,799 INFO L290 TraceCheckUtils]: 70: Hoare triple {93706#true} assume true; {93706#true} is VALID [2022-04-08 06:10:15,799 INFO L290 TraceCheckUtils]: 69: Hoare triple {93706#true} assume !(0 == ~cond); {93706#true} is VALID [2022-04-08 06:10:15,799 INFO L290 TraceCheckUtils]: 68: Hoare triple {93706#true} ~cond := #in~cond; {93706#true} is VALID [2022-04-08 06:10:15,799 INFO L272 TraceCheckUtils]: 67: Hoare triple {94244#(< ~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)); {93706#true} is VALID [2022-04-08 06:10:15,799 INFO L290 TraceCheckUtils]: 66: Hoare triple {94244#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {94244#(< ~counter~0 15)} is VALID [2022-04-08 06:10:15,800 INFO L290 TraceCheckUtils]: 65: Hoare triple {94269#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {94244#(< ~counter~0 15)} is VALID [2022-04-08 06:10:15,801 INFO L290 TraceCheckUtils]: 64: Hoare triple {94269#(< ~counter~0 14)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {94269#(< ~counter~0 14)} is VALID [2022-04-08 06:10:15,801 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {93706#true} {94269#(< ~counter~0 14)} #96#return; {94269#(< ~counter~0 14)} is VALID [2022-04-08 06:10:15,801 INFO L290 TraceCheckUtils]: 62: Hoare triple {93706#true} assume true; {93706#true} is VALID [2022-04-08 06:10:15,801 INFO L290 TraceCheckUtils]: 61: Hoare triple {93706#true} assume !(0 == ~cond); {93706#true} is VALID [2022-04-08 06:10:15,801 INFO L290 TraceCheckUtils]: 60: Hoare triple {93706#true} ~cond := #in~cond; {93706#true} is VALID [2022-04-08 06:10:15,801 INFO L272 TraceCheckUtils]: 59: Hoare triple {94269#(< ~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)); {93706#true} is VALID [2022-04-08 06:10:15,802 INFO L290 TraceCheckUtils]: 58: Hoare triple {94269#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {94269#(< ~counter~0 14)} is VALID [2022-04-08 06:10:15,802 INFO L290 TraceCheckUtils]: 57: Hoare triple {94038#(<= ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {94269#(< ~counter~0 14)} is VALID [2022-04-08 06:10:15,803 INFO L290 TraceCheckUtils]: 56: Hoare triple {94038#(<= ~counter~0 12)} assume !!(0 != ~r~0); {94038#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:15,803 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {93706#true} {94038#(<= ~counter~0 12)} #94#return; {94038#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:15,803 INFO L290 TraceCheckUtils]: 54: Hoare triple {93706#true} assume true; {93706#true} is VALID [2022-04-08 06:10:15,803 INFO L290 TraceCheckUtils]: 53: Hoare triple {93706#true} assume !(0 == ~cond); {93706#true} is VALID [2022-04-08 06:10:15,803 INFO L290 TraceCheckUtils]: 52: Hoare triple {93706#true} ~cond := #in~cond; {93706#true} is VALID [2022-04-08 06:10:15,804 INFO L272 TraceCheckUtils]: 51: Hoare triple {94038#(<= ~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)); {93706#true} is VALID [2022-04-08 06:10:15,804 INFO L290 TraceCheckUtils]: 50: Hoare triple {94038#(<= ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {94038#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:15,805 INFO L290 TraceCheckUtils]: 49: Hoare triple {94013#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {94038#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:15,805 INFO L290 TraceCheckUtils]: 48: Hoare triple {94013#(<= ~counter~0 11)} assume !(~r~0 < 0); {94013#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:15,805 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {93706#true} {94013#(<= ~counter~0 11)} #98#return; {94013#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:15,805 INFO L290 TraceCheckUtils]: 46: Hoare triple {93706#true} assume true; {93706#true} is VALID [2022-04-08 06:10:15,806 INFO L290 TraceCheckUtils]: 45: Hoare triple {93706#true} assume !(0 == ~cond); {93706#true} is VALID [2022-04-08 06:10:15,806 INFO L290 TraceCheckUtils]: 44: Hoare triple {93706#true} ~cond := #in~cond; {93706#true} is VALID [2022-04-08 06:10:15,806 INFO L272 TraceCheckUtils]: 43: Hoare triple {94013#(<= ~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)); {93706#true} is VALID [2022-04-08 06:10:15,806 INFO L290 TraceCheckUtils]: 42: Hoare triple {94013#(<= ~counter~0 11)} assume !!(#t~post8 < 20);havoc #t~post8; {94013#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:15,807 INFO L290 TraceCheckUtils]: 41: Hoare triple {93988#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {94013#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:15,807 INFO L290 TraceCheckUtils]: 40: Hoare triple {93988#(<= ~counter~0 10)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {93988#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:15,807 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {93706#true} {93988#(<= ~counter~0 10)} #98#return; {93988#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:15,808 INFO L290 TraceCheckUtils]: 38: Hoare triple {93706#true} assume true; {93706#true} is VALID [2022-04-08 06:10:15,808 INFO L290 TraceCheckUtils]: 37: Hoare triple {93706#true} assume !(0 == ~cond); {93706#true} is VALID [2022-04-08 06:10:15,808 INFO L290 TraceCheckUtils]: 36: Hoare triple {93706#true} ~cond := #in~cond; {93706#true} is VALID [2022-04-08 06:10:15,808 INFO L272 TraceCheckUtils]: 35: Hoare triple {93988#(<= ~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)); {93706#true} is VALID [2022-04-08 06:10:15,808 INFO L290 TraceCheckUtils]: 34: Hoare triple {93988#(<= ~counter~0 10)} assume !!(#t~post8 < 20);havoc #t~post8; {93988#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:15,809 INFO L290 TraceCheckUtils]: 33: Hoare triple {93963#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {93988#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:15,809 INFO L290 TraceCheckUtils]: 32: Hoare triple {93963#(<= ~counter~0 9)} assume !(~r~0 > 0); {93963#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:15,810 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {93706#true} {93963#(<= ~counter~0 9)} #96#return; {93963#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:15,810 INFO L290 TraceCheckUtils]: 30: Hoare triple {93706#true} assume true; {93706#true} is VALID [2022-04-08 06:10:15,810 INFO L290 TraceCheckUtils]: 29: Hoare triple {93706#true} assume !(0 == ~cond); {93706#true} is VALID [2022-04-08 06:10:15,810 INFO L290 TraceCheckUtils]: 28: Hoare triple {93706#true} ~cond := #in~cond; {93706#true} is VALID [2022-04-08 06:10:15,814 INFO L272 TraceCheckUtils]: 27: Hoare triple {93963#(<= ~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)); {93706#true} is VALID [2022-04-08 06:10:15,815 INFO L290 TraceCheckUtils]: 26: Hoare triple {93963#(<= ~counter~0 9)} assume !!(#t~post7 < 20);havoc #t~post7; {93963#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:15,817 INFO L290 TraceCheckUtils]: 25: Hoare triple {93938#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {93963#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:15,818 INFO L290 TraceCheckUtils]: 24: Hoare triple {93938#(<= ~counter~0 8)} assume !!(0 != ~r~0); {93938#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:15,818 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {93706#true} {93938#(<= ~counter~0 8)} #94#return; {93938#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:15,818 INFO L290 TraceCheckUtils]: 22: Hoare triple {93706#true} assume true; {93706#true} is VALID [2022-04-08 06:10:15,818 INFO L290 TraceCheckUtils]: 21: Hoare triple {93706#true} assume !(0 == ~cond); {93706#true} is VALID [2022-04-08 06:10:15,818 INFO L290 TraceCheckUtils]: 20: Hoare triple {93706#true} ~cond := #in~cond; {93706#true} is VALID [2022-04-08 06:10:15,818 INFO L272 TraceCheckUtils]: 19: Hoare triple {93938#(<= ~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)); {93706#true} is VALID [2022-04-08 06:10:15,819 INFO L290 TraceCheckUtils]: 18: Hoare triple {93938#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {93938#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:15,820 INFO L290 TraceCheckUtils]: 17: Hoare triple {93913#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {93938#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:15,820 INFO L290 TraceCheckUtils]: 16: Hoare triple {93913#(<= ~counter~0 7)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,820 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {93706#true} {93913#(<= ~counter~0 7)} #92#return; {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,820 INFO L290 TraceCheckUtils]: 14: Hoare triple {93706#true} assume true; {93706#true} is VALID [2022-04-08 06:10:15,820 INFO L290 TraceCheckUtils]: 13: Hoare triple {93706#true} assume !(0 == ~cond); {93706#true} is VALID [2022-04-08 06:10:15,820 INFO L290 TraceCheckUtils]: 12: Hoare triple {93706#true} ~cond := #in~cond; {93706#true} is VALID [2022-04-08 06:10:15,820 INFO L272 TraceCheckUtils]: 11: Hoare triple {93913#(<= ~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)); {93706#true} is VALID [2022-04-08 06:10:15,821 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {93706#true} {93913#(<= ~counter~0 7)} #90#return; {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,821 INFO L290 TraceCheckUtils]: 9: Hoare triple {93706#true} assume true; {93706#true} is VALID [2022-04-08 06:10:15,821 INFO L290 TraceCheckUtils]: 8: Hoare triple {93706#true} assume !(0 == ~cond); {93706#true} is VALID [2022-04-08 06:10:15,821 INFO L290 TraceCheckUtils]: 7: Hoare triple {93706#true} ~cond := #in~cond; {93706#true} is VALID [2022-04-08 06:10:15,821 INFO L272 TraceCheckUtils]: 6: Hoare triple {93913#(<= ~counter~0 7)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {93706#true} is VALID [2022-04-08 06:10:15,821 INFO L290 TraceCheckUtils]: 5: Hoare triple {93913#(<= ~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; {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,822 INFO L272 TraceCheckUtils]: 4: Hoare triple {93913#(<= ~counter~0 7)} call #t~ret9 := main(); {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,822 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {93913#(<= ~counter~0 7)} {93706#true} #102#return; {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,822 INFO L290 TraceCheckUtils]: 2: Hoare triple {93913#(<= ~counter~0 7)} assume true; {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,823 INFO L290 TraceCheckUtils]: 1: Hoare triple {93706#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {93913#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:15,823 INFO L272 TraceCheckUtils]: 0: Hoare triple {93706#true} call ULTIMATE.init(); {93706#true} is VALID [2022-04-08 06:10:15,823 INFO L134 CoverageAnalysis]: Checked inductivity of 392 backedges. 38 proven. 86 refuted. 0 times theorem prover too weak. 268 trivial. 0 not checked. [2022-04-08 06:10:15,823 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:10:15,823 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1485480874] [2022-04-08 06:10:15,823 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:10:15,823 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1504210009] [2022-04-08 06:10:15,824 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1504210009] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:10:15,824 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:10:15,824 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 24 [2022-04-08 06:10:15,824 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:10:15,824 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1593797350] [2022-04-08 06:10:15,824 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1593797350] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:10:15,824 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:10:15,824 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-08 06:10:15,824 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1347958569] [2022-04-08 06:10:15,824 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:10:15,824 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 5.5) internal successors, (88), 15 states have internal predecessors, (88), 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 123 [2022-04-08 06:10:15,825 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:10:15,825 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 5.5) internal successors, (88), 15 states have internal predecessors, (88), 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:10:15,921 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 120 edges. 120 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:10:15,921 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-08 06:10:15,921 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:10:15,921 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-08 06:10:15,921 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:10:15,921 INFO L87 Difference]: Start difference. First operand 670 states and 890 transitions. Second operand has 16 states, 16 states have (on average 5.5) internal successors, (88), 15 states have internal predecessors, (88), 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:10:18,799 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:10:18,799 INFO L93 Difference]: Finished difference Result 887 states and 1217 transitions. [2022-04-08 06:10:18,799 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-04-08 06:10:18,799 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 5.5) internal successors, (88), 15 states have internal predecessors, (88), 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 123 [2022-04-08 06:10:18,799 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:10:18,799 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 5.5) internal successors, (88), 15 states have internal predecessors, (88), 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:10:18,801 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 276 transitions. [2022-04-08 06:10:18,801 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 5.5) internal successors, (88), 15 states have internal predecessors, (88), 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:10:18,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 276 transitions. [2022-04-08 06:10:18,803 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 276 transitions. [2022-04-08 06:10:19,061 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 276 edges. 276 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:10:19,080 INFO L225 Difference]: With dead ends: 887 [2022-04-08 06:10:19,080 INFO L226 Difference]: Without dead ends: 686 [2022-04-08 06:10:19,081 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 256 GetRequests, 222 SyntacticMatches, 1 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 93 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=478, Invalid=712, Unknown=0, NotChecked=0, Total=1190 [2022-04-08 06:10:19,081 INFO L913 BasicCegarLoop]: 66 mSDtfsCounter, 180 mSDsluCounter, 209 mSDsCounter, 0 mSdLazyCounter, 157 mSolverCounterSat, 158 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 180 SdHoareTripleChecker+Valid, 275 SdHoareTripleChecker+Invalid, 315 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 158 IncrementalHoareTripleChecker+Valid, 157 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-08 06:10:19,082 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [180 Valid, 275 Invalid, 315 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [158 Valid, 157 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-08 06:10:19,082 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 686 states. [2022-04-08 06:10:20,942 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 686 to 686. [2022-04-08 06:10:20,942 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:10:20,943 INFO L82 GeneralOperation]: Start isEquivalent. First operand 686 states. Second operand has 686 states, 521 states have (on average 1.2053742802303262) internal successors, (628), 521 states have internal predecessors, (628), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 138 states have call predecessors, (138), 138 states have call successors, (138) [2022-04-08 06:10:20,943 INFO L74 IsIncluded]: Start isIncluded. First operand 686 states. Second operand has 686 states, 521 states have (on average 1.2053742802303262) internal successors, (628), 521 states have internal predecessors, (628), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 138 states have call predecessors, (138), 138 states have call successors, (138) [2022-04-08 06:10:20,943 INFO L87 Difference]: Start difference. First operand 686 states. Second operand has 686 states, 521 states have (on average 1.2053742802303262) internal successors, (628), 521 states have internal predecessors, (628), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 138 states have call predecessors, (138), 138 states have call successors, (138) [2022-04-08 06:10:20,960 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:10:20,960 INFO L93 Difference]: Finished difference Result 686 states and 906 transitions. [2022-04-08 06:10:20,960 INFO L276 IsEmpty]: Start isEmpty. Operand 686 states and 906 transitions. [2022-04-08 06:10:20,961 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:10:20,961 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:10:20,961 INFO L74 IsIncluded]: Start isIncluded. First operand has 686 states, 521 states have (on average 1.2053742802303262) internal successors, (628), 521 states have internal predecessors, (628), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 138 states have call predecessors, (138), 138 states have call successors, (138) Second operand 686 states. [2022-04-08 06:10:20,962 INFO L87 Difference]: Start difference. First operand has 686 states, 521 states have (on average 1.2053742802303262) internal successors, (628), 521 states have internal predecessors, (628), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 138 states have call predecessors, (138), 138 states have call successors, (138) Second operand 686 states. [2022-04-08 06:10:20,978 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:10:20,978 INFO L93 Difference]: Finished difference Result 686 states and 906 transitions. [2022-04-08 06:10:20,978 INFO L276 IsEmpty]: Start isEmpty. Operand 686 states and 906 transitions. [2022-04-08 06:10:20,978 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:10:20,978 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:10:20,979 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:10:20,979 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:10:20,979 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 686 states, 521 states have (on average 1.2053742802303262) internal successors, (628), 521 states have internal predecessors, (628), 140 states have call successors, (140), 26 states have call predecessors, (140), 24 states have return successors, (138), 138 states have call predecessors, (138), 138 states have call successors, (138) [2022-04-08 06:10:21,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 686 states to 686 states and 906 transitions. [2022-04-08 06:10:21,006 INFO L78 Accepts]: Start accepts. Automaton has 686 states and 906 transitions. Word has length 123 [2022-04-08 06:10:21,006 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:10:21,006 INFO L478 AbstractCegarLoop]: Abstraction has 686 states and 906 transitions. [2022-04-08 06:10:21,006 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 5.5) internal successors, (88), 15 states have internal predecessors, (88), 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:10:21,006 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 686 states and 906 transitions. [2022-04-08 06:10:40,918 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 906 edges. 902 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-08 06:10:40,919 INFO L276 IsEmpty]: Start isEmpty. Operand 686 states and 906 transitions. [2022-04-08 06:10:40,920 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 128 [2022-04-08 06:10:40,920 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:10:40,920 INFO L499 BasicCegarLoop]: trace histogram [14, 13, 13, 7, 7, 7, 7, 5, 4, 4, 4, 4, 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:10:40,936 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Forceful destruction successful, exit code 0 [2022-04-08 06:10:41,127 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable40,42 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:10:41,127 INFO L403 AbstractCegarLoop]: === Iteration 42 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:10:41,127 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:10:41,128 INFO L85 PathProgramCache]: Analyzing trace with hash -992818924, now seen corresponding path program 9 times [2022-04-08 06:10:41,128 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:10:41,128 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [198951907] [2022-04-08 06:10:41,128 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:10:41,128 INFO L85 PathProgramCache]: Analyzing trace with hash -992818924, now seen corresponding path program 10 times [2022-04-08 06:10:41,128 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:10:41,128 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1779476430] [2022-04-08 06:10:41,128 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:10:41,128 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:10:41,150 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:10:41,150 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1264056965] [2022-04-08 06:10:41,150 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:10:41,150 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:10:41,150 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:10:41,151 INFO L229 MonitoredProcess]: Starting monitored process 43 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:10:41,152 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Waiting until timeout for monitored process [2022-04-08 06:10:41,222 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:10:41,222 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:10:41,223 INFO L263 TraceCheckSpWp]: Trace formula consists of 316 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-08 06:10:41,246 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:10:41,247 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:10:41,821 INFO L272 TraceCheckUtils]: 0: Hoare triple {99007#true} call ULTIMATE.init(); {99007#true} is VALID [2022-04-08 06:10:41,822 INFO L290 TraceCheckUtils]: 1: Hoare triple {99007#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,822 INFO L290 TraceCheckUtils]: 2: Hoare triple {99015#(<= ~counter~0 0)} assume true; {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,822 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99015#(<= ~counter~0 0)} {99007#true} #102#return; {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,823 INFO L272 TraceCheckUtils]: 4: Hoare triple {99015#(<= ~counter~0 0)} call #t~ret9 := main(); {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,823 INFO L290 TraceCheckUtils]: 5: Hoare triple {99015#(<= ~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; {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,823 INFO L272 TraceCheckUtils]: 6: Hoare triple {99015#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,823 INFO L290 TraceCheckUtils]: 7: Hoare triple {99015#(<= ~counter~0 0)} ~cond := #in~cond; {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,824 INFO L290 TraceCheckUtils]: 8: Hoare triple {99015#(<= ~counter~0 0)} assume !(0 == ~cond); {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,824 INFO L290 TraceCheckUtils]: 9: Hoare triple {99015#(<= ~counter~0 0)} assume true; {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,824 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {99015#(<= ~counter~0 0)} {99015#(<= ~counter~0 0)} #90#return; {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,825 INFO L272 TraceCheckUtils]: 11: Hoare triple {99015#(<= ~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)); {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,825 INFO L290 TraceCheckUtils]: 12: Hoare triple {99015#(<= ~counter~0 0)} ~cond := #in~cond; {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,825 INFO L290 TraceCheckUtils]: 13: Hoare triple {99015#(<= ~counter~0 0)} assume !(0 == ~cond); {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,826 INFO L290 TraceCheckUtils]: 14: Hoare triple {99015#(<= ~counter~0 0)} assume true; {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,826 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99015#(<= ~counter~0 0)} {99015#(<= ~counter~0 0)} #92#return; {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,826 INFO L290 TraceCheckUtils]: 16: Hoare triple {99015#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {99015#(<= ~counter~0 0)} is VALID [2022-04-08 06:10:41,828 INFO L290 TraceCheckUtils]: 17: Hoare triple {99015#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99064#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:41,828 INFO L290 TraceCheckUtils]: 18: Hoare triple {99064#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {99064#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:41,829 INFO L272 TraceCheckUtils]: 19: Hoare triple {99064#(<= ~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)); {99064#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:41,829 INFO L290 TraceCheckUtils]: 20: Hoare triple {99064#(<= ~counter~0 1)} ~cond := #in~cond; {99064#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:41,829 INFO L290 TraceCheckUtils]: 21: Hoare triple {99064#(<= ~counter~0 1)} assume !(0 == ~cond); {99064#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:41,830 INFO L290 TraceCheckUtils]: 22: Hoare triple {99064#(<= ~counter~0 1)} assume true; {99064#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:41,830 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {99064#(<= ~counter~0 1)} {99064#(<= ~counter~0 1)} #94#return; {99064#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:41,830 INFO L290 TraceCheckUtils]: 24: Hoare triple {99064#(<= ~counter~0 1)} assume !!(0 != ~r~0); {99064#(<= ~counter~0 1)} is VALID [2022-04-08 06:10:41,831 INFO L290 TraceCheckUtils]: 25: Hoare triple {99064#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99089#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:41,831 INFO L290 TraceCheckUtils]: 26: Hoare triple {99089#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {99089#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:41,832 INFO L272 TraceCheckUtils]: 27: Hoare triple {99089#(<= ~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)); {99089#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:41,832 INFO L290 TraceCheckUtils]: 28: Hoare triple {99089#(<= ~counter~0 2)} ~cond := #in~cond; {99089#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:41,832 INFO L290 TraceCheckUtils]: 29: Hoare triple {99089#(<= ~counter~0 2)} assume !(0 == ~cond); {99089#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:41,833 INFO L290 TraceCheckUtils]: 30: Hoare triple {99089#(<= ~counter~0 2)} assume true; {99089#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:41,833 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {99089#(<= ~counter~0 2)} {99089#(<= ~counter~0 2)} #96#return; {99089#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:41,833 INFO L290 TraceCheckUtils]: 32: Hoare triple {99089#(<= ~counter~0 2)} assume !(~r~0 > 0); {99089#(<= ~counter~0 2)} is VALID [2022-04-08 06:10:41,834 INFO L290 TraceCheckUtils]: 33: Hoare triple {99089#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99114#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:41,835 INFO L290 TraceCheckUtils]: 34: Hoare triple {99114#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {99114#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:41,835 INFO L272 TraceCheckUtils]: 35: Hoare triple {99114#(<= ~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)); {99114#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:41,835 INFO L290 TraceCheckUtils]: 36: Hoare triple {99114#(<= ~counter~0 3)} ~cond := #in~cond; {99114#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:41,836 INFO L290 TraceCheckUtils]: 37: Hoare triple {99114#(<= ~counter~0 3)} assume !(0 == ~cond); {99114#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:41,836 INFO L290 TraceCheckUtils]: 38: Hoare triple {99114#(<= ~counter~0 3)} assume true; {99114#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:41,836 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {99114#(<= ~counter~0 3)} {99114#(<= ~counter~0 3)} #98#return; {99114#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:41,837 INFO L290 TraceCheckUtils]: 40: Hoare triple {99114#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {99114#(<= ~counter~0 3)} is VALID [2022-04-08 06:10:41,837 INFO L290 TraceCheckUtils]: 41: Hoare triple {99114#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99139#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:41,838 INFO L290 TraceCheckUtils]: 42: Hoare triple {99139#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {99139#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:41,838 INFO L272 TraceCheckUtils]: 43: Hoare triple {99139#(<= ~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)); {99139#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:41,838 INFO L290 TraceCheckUtils]: 44: Hoare triple {99139#(<= ~counter~0 4)} ~cond := #in~cond; {99139#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:41,839 INFO L290 TraceCheckUtils]: 45: Hoare triple {99139#(<= ~counter~0 4)} assume !(0 == ~cond); {99139#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:41,839 INFO L290 TraceCheckUtils]: 46: Hoare triple {99139#(<= ~counter~0 4)} assume true; {99139#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:41,839 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {99139#(<= ~counter~0 4)} {99139#(<= ~counter~0 4)} #98#return; {99139#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:41,840 INFO L290 TraceCheckUtils]: 48: Hoare triple {99139#(<= ~counter~0 4)} assume !(~r~0 < 0); {99139#(<= ~counter~0 4)} is VALID [2022-04-08 06:10:41,840 INFO L290 TraceCheckUtils]: 49: Hoare triple {99139#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99164#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:41,841 INFO L290 TraceCheckUtils]: 50: Hoare triple {99164#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {99164#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:41,841 INFO L272 TraceCheckUtils]: 51: Hoare triple {99164#(<= ~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)); {99164#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:41,841 INFO L290 TraceCheckUtils]: 52: Hoare triple {99164#(<= ~counter~0 5)} ~cond := #in~cond; {99164#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:41,842 INFO L290 TraceCheckUtils]: 53: Hoare triple {99164#(<= ~counter~0 5)} assume !(0 == ~cond); {99164#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:41,842 INFO L290 TraceCheckUtils]: 54: Hoare triple {99164#(<= ~counter~0 5)} assume true; {99164#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:41,842 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {99164#(<= ~counter~0 5)} {99164#(<= ~counter~0 5)} #94#return; {99164#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:41,843 INFO L290 TraceCheckUtils]: 56: Hoare triple {99164#(<= ~counter~0 5)} assume !!(0 != ~r~0); {99164#(<= ~counter~0 5)} is VALID [2022-04-08 06:10:41,844 INFO L290 TraceCheckUtils]: 57: Hoare triple {99164#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:41,844 INFO L290 TraceCheckUtils]: 58: Hoare triple {99189#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:41,844 INFO L272 TraceCheckUtils]: 59: Hoare triple {99189#(<= ~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)); {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:41,845 INFO L290 TraceCheckUtils]: 60: Hoare triple {99189#(<= ~counter~0 6)} ~cond := #in~cond; {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:41,845 INFO L290 TraceCheckUtils]: 61: Hoare triple {99189#(<= ~counter~0 6)} assume !(0 == ~cond); {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:41,845 INFO L290 TraceCheckUtils]: 62: Hoare triple {99189#(<= ~counter~0 6)} assume true; {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:41,846 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {99189#(<= ~counter~0 6)} {99189#(<= ~counter~0 6)} #96#return; {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:41,846 INFO L290 TraceCheckUtils]: 64: Hoare triple {99189#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:41,847 INFO L290 TraceCheckUtils]: 65: Hoare triple {99189#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99214#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:41,847 INFO L290 TraceCheckUtils]: 66: Hoare triple {99214#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {99214#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:41,847 INFO L272 TraceCheckUtils]: 67: Hoare triple {99214#(<= ~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)); {99214#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:41,848 INFO L290 TraceCheckUtils]: 68: Hoare triple {99214#(<= ~counter~0 7)} ~cond := #in~cond; {99214#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:41,848 INFO L290 TraceCheckUtils]: 69: Hoare triple {99214#(<= ~counter~0 7)} assume !(0 == ~cond); {99214#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:41,848 INFO L290 TraceCheckUtils]: 70: Hoare triple {99214#(<= ~counter~0 7)} assume true; {99214#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:41,849 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {99214#(<= ~counter~0 7)} {99214#(<= ~counter~0 7)} #96#return; {99214#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:41,849 INFO L290 TraceCheckUtils]: 72: Hoare triple {99214#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99214#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:41,850 INFO L290 TraceCheckUtils]: 73: Hoare triple {99214#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99239#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:41,850 INFO L290 TraceCheckUtils]: 74: Hoare triple {99239#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {99239#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:41,850 INFO L272 TraceCheckUtils]: 75: Hoare triple {99239#(<= ~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)); {99239#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:41,851 INFO L290 TraceCheckUtils]: 76: Hoare triple {99239#(<= ~counter~0 8)} ~cond := #in~cond; {99239#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:41,851 INFO L290 TraceCheckUtils]: 77: Hoare triple {99239#(<= ~counter~0 8)} assume !(0 == ~cond); {99239#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:41,851 INFO L290 TraceCheckUtils]: 78: Hoare triple {99239#(<= ~counter~0 8)} assume true; {99239#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:41,852 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {99239#(<= ~counter~0 8)} {99239#(<= ~counter~0 8)} #96#return; {99239#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:41,852 INFO L290 TraceCheckUtils]: 80: Hoare triple {99239#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99239#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:41,853 INFO L290 TraceCheckUtils]: 81: Hoare triple {99239#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99264#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:41,853 INFO L290 TraceCheckUtils]: 82: Hoare triple {99264#(<= ~counter~0 9)} assume !!(#t~post7 < 20);havoc #t~post7; {99264#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:41,853 INFO L272 TraceCheckUtils]: 83: Hoare triple {99264#(<= ~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)); {99264#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:41,854 INFO L290 TraceCheckUtils]: 84: Hoare triple {99264#(<= ~counter~0 9)} ~cond := #in~cond; {99264#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:41,854 INFO L290 TraceCheckUtils]: 85: Hoare triple {99264#(<= ~counter~0 9)} assume !(0 == ~cond); {99264#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:41,854 INFO L290 TraceCheckUtils]: 86: Hoare triple {99264#(<= ~counter~0 9)} assume true; {99264#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:41,855 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {99264#(<= ~counter~0 9)} {99264#(<= ~counter~0 9)} #96#return; {99264#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:41,855 INFO L290 TraceCheckUtils]: 88: Hoare triple {99264#(<= ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99264#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:41,856 INFO L290 TraceCheckUtils]: 89: Hoare triple {99264#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99289#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:41,856 INFO L290 TraceCheckUtils]: 90: Hoare triple {99289#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {99289#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:41,857 INFO L272 TraceCheckUtils]: 91: Hoare triple {99289#(<= ~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)); {99289#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:41,857 INFO L290 TraceCheckUtils]: 92: Hoare triple {99289#(<= ~counter~0 10)} ~cond := #in~cond; {99289#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:41,857 INFO L290 TraceCheckUtils]: 93: Hoare triple {99289#(<= ~counter~0 10)} assume !(0 == ~cond); {99289#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:41,857 INFO L290 TraceCheckUtils]: 94: Hoare triple {99289#(<= ~counter~0 10)} assume true; {99289#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:41,858 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {99289#(<= ~counter~0 10)} {99289#(<= ~counter~0 10)} #96#return; {99289#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:41,858 INFO L290 TraceCheckUtils]: 96: Hoare triple {99289#(<= ~counter~0 10)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99289#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:41,859 INFO L290 TraceCheckUtils]: 97: Hoare triple {99289#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99314#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:41,859 INFO L290 TraceCheckUtils]: 98: Hoare triple {99314#(<= ~counter~0 11)} assume !!(#t~post7 < 20);havoc #t~post7; {99314#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:41,860 INFO L272 TraceCheckUtils]: 99: Hoare triple {99314#(<= ~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)); {99314#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:41,860 INFO L290 TraceCheckUtils]: 100: Hoare triple {99314#(<= ~counter~0 11)} ~cond := #in~cond; {99314#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:41,860 INFO L290 TraceCheckUtils]: 101: Hoare triple {99314#(<= ~counter~0 11)} assume !(0 == ~cond); {99314#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:41,860 INFO L290 TraceCheckUtils]: 102: Hoare triple {99314#(<= ~counter~0 11)} assume true; {99314#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:41,861 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {99314#(<= ~counter~0 11)} {99314#(<= ~counter~0 11)} #96#return; {99314#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:41,861 INFO L290 TraceCheckUtils]: 104: Hoare triple {99314#(<= ~counter~0 11)} assume !(~r~0 > 0); {99314#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:41,862 INFO L290 TraceCheckUtils]: 105: Hoare triple {99314#(<= ~counter~0 11)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99339#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:41,862 INFO L290 TraceCheckUtils]: 106: Hoare triple {99339#(<= ~counter~0 12)} assume !!(#t~post8 < 20);havoc #t~post8; {99339#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:41,863 INFO L272 TraceCheckUtils]: 107: Hoare triple {99339#(<= ~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)); {99339#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:41,863 INFO L290 TraceCheckUtils]: 108: Hoare triple {99339#(<= ~counter~0 12)} ~cond := #in~cond; {99339#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:41,863 INFO L290 TraceCheckUtils]: 109: Hoare triple {99339#(<= ~counter~0 12)} assume !(0 == ~cond); {99339#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:41,863 INFO L290 TraceCheckUtils]: 110: Hoare triple {99339#(<= ~counter~0 12)} assume true; {99339#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:41,864 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {99339#(<= ~counter~0 12)} {99339#(<= ~counter~0 12)} #98#return; {99339#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:41,864 INFO L290 TraceCheckUtils]: 112: Hoare triple {99339#(<= ~counter~0 12)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {99339#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:41,865 INFO L290 TraceCheckUtils]: 113: Hoare triple {99339#(<= ~counter~0 12)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99364#(<= ~counter~0 13)} is VALID [2022-04-08 06:10:41,865 INFO L290 TraceCheckUtils]: 114: Hoare triple {99364#(<= ~counter~0 13)} assume !!(#t~post8 < 20);havoc #t~post8; {99364#(<= ~counter~0 13)} is VALID [2022-04-08 06:10:41,866 INFO L272 TraceCheckUtils]: 115: Hoare triple {99364#(<= ~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)); {99364#(<= ~counter~0 13)} is VALID [2022-04-08 06:10:41,866 INFO L290 TraceCheckUtils]: 116: Hoare triple {99364#(<= ~counter~0 13)} ~cond := #in~cond; {99364#(<= ~counter~0 13)} is VALID [2022-04-08 06:10:41,866 INFO L290 TraceCheckUtils]: 117: Hoare triple {99364#(<= ~counter~0 13)} assume !(0 == ~cond); {99364#(<= ~counter~0 13)} is VALID [2022-04-08 06:10:41,866 INFO L290 TraceCheckUtils]: 118: Hoare triple {99364#(<= ~counter~0 13)} assume true; {99364#(<= ~counter~0 13)} is VALID [2022-04-08 06:10:41,867 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {99364#(<= ~counter~0 13)} {99364#(<= ~counter~0 13)} #98#return; {99364#(<= ~counter~0 13)} is VALID [2022-04-08 06:10:41,867 INFO L290 TraceCheckUtils]: 120: Hoare triple {99364#(<= ~counter~0 13)} assume !(~r~0 < 0); {99364#(<= ~counter~0 13)} is VALID [2022-04-08 06:10:41,868 INFO L290 TraceCheckUtils]: 121: Hoare triple {99364#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99389#(<= |main_#t~post6| 13)} is VALID [2022-04-08 06:10:41,868 INFO L290 TraceCheckUtils]: 122: Hoare triple {99389#(<= |main_#t~post6| 13)} assume !(#t~post6 < 20);havoc #t~post6; {99008#false} is VALID [2022-04-08 06:10:41,868 INFO L272 TraceCheckUtils]: 123: Hoare triple {99008#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)); {99008#false} is VALID [2022-04-08 06:10:41,868 INFO L290 TraceCheckUtils]: 124: Hoare triple {99008#false} ~cond := #in~cond; {99008#false} is VALID [2022-04-08 06:10:41,868 INFO L290 TraceCheckUtils]: 125: Hoare triple {99008#false} assume 0 == ~cond; {99008#false} is VALID [2022-04-08 06:10:41,868 INFO L290 TraceCheckUtils]: 126: Hoare triple {99008#false} assume !false; {99008#false} is VALID [2022-04-08 06:10:41,869 INFO L134 CoverageAnalysis]: Checked inductivity of 458 backedges. 26 proven. 428 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:10:41,869 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:10:42,483 INFO L290 TraceCheckUtils]: 126: Hoare triple {99008#false} assume !false; {99008#false} is VALID [2022-04-08 06:10:42,484 INFO L290 TraceCheckUtils]: 125: Hoare triple {99008#false} assume 0 == ~cond; {99008#false} is VALID [2022-04-08 06:10:42,484 INFO L290 TraceCheckUtils]: 124: Hoare triple {99008#false} ~cond := #in~cond; {99008#false} is VALID [2022-04-08 06:10:42,484 INFO L272 TraceCheckUtils]: 123: Hoare triple {99008#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)); {99008#false} is VALID [2022-04-08 06:10:42,484 INFO L290 TraceCheckUtils]: 122: Hoare triple {99417#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {99008#false} is VALID [2022-04-08 06:10:42,484 INFO L290 TraceCheckUtils]: 121: Hoare triple {99421#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99417#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:10:42,485 INFO L290 TraceCheckUtils]: 120: Hoare triple {99421#(< ~counter~0 20)} assume !(~r~0 < 0); {99421#(< ~counter~0 20)} is VALID [2022-04-08 06:10:42,485 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {99007#true} {99421#(< ~counter~0 20)} #98#return; {99421#(< ~counter~0 20)} is VALID [2022-04-08 06:10:42,485 INFO L290 TraceCheckUtils]: 118: Hoare triple {99007#true} assume true; {99007#true} is VALID [2022-04-08 06:10:42,485 INFO L290 TraceCheckUtils]: 117: Hoare triple {99007#true} assume !(0 == ~cond); {99007#true} is VALID [2022-04-08 06:10:42,485 INFO L290 TraceCheckUtils]: 116: Hoare triple {99007#true} ~cond := #in~cond; {99007#true} is VALID [2022-04-08 06:10:42,485 INFO L272 TraceCheckUtils]: 115: Hoare triple {99421#(< ~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)); {99007#true} is VALID [2022-04-08 06:10:42,486 INFO L290 TraceCheckUtils]: 114: Hoare triple {99421#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {99421#(< ~counter~0 20)} is VALID [2022-04-08 06:10:42,488 INFO L290 TraceCheckUtils]: 113: Hoare triple {99446#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99421#(< ~counter~0 20)} is VALID [2022-04-08 06:10:42,488 INFO L290 TraceCheckUtils]: 112: Hoare triple {99446#(< ~counter~0 19)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {99446#(< ~counter~0 19)} is VALID [2022-04-08 06:10:42,489 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {99007#true} {99446#(< ~counter~0 19)} #98#return; {99446#(< ~counter~0 19)} is VALID [2022-04-08 06:10:42,489 INFO L290 TraceCheckUtils]: 110: Hoare triple {99007#true} assume true; {99007#true} is VALID [2022-04-08 06:10:42,489 INFO L290 TraceCheckUtils]: 109: Hoare triple {99007#true} assume !(0 == ~cond); {99007#true} is VALID [2022-04-08 06:10:42,489 INFO L290 TraceCheckUtils]: 108: Hoare triple {99007#true} ~cond := #in~cond; {99007#true} is VALID [2022-04-08 06:10:42,489 INFO L272 TraceCheckUtils]: 107: Hoare triple {99446#(< ~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)); {99007#true} is VALID [2022-04-08 06:10:42,489 INFO L290 TraceCheckUtils]: 106: Hoare triple {99446#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {99446#(< ~counter~0 19)} is VALID [2022-04-08 06:10:42,490 INFO L290 TraceCheckUtils]: 105: Hoare triple {99471#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99446#(< ~counter~0 19)} is VALID [2022-04-08 06:10:42,490 INFO L290 TraceCheckUtils]: 104: Hoare triple {99471#(< ~counter~0 18)} assume !(~r~0 > 0); {99471#(< ~counter~0 18)} is VALID [2022-04-08 06:10:42,491 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {99007#true} {99471#(< ~counter~0 18)} #96#return; {99471#(< ~counter~0 18)} is VALID [2022-04-08 06:10:42,491 INFO L290 TraceCheckUtils]: 102: Hoare triple {99007#true} assume true; {99007#true} is VALID [2022-04-08 06:10:42,491 INFO L290 TraceCheckUtils]: 101: Hoare triple {99007#true} assume !(0 == ~cond); {99007#true} is VALID [2022-04-08 06:10:42,491 INFO L290 TraceCheckUtils]: 100: Hoare triple {99007#true} ~cond := #in~cond; {99007#true} is VALID [2022-04-08 06:10:42,491 INFO L272 TraceCheckUtils]: 99: Hoare triple {99471#(< ~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)); {99007#true} is VALID [2022-04-08 06:10:42,491 INFO L290 TraceCheckUtils]: 98: Hoare triple {99471#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {99471#(< ~counter~0 18)} is VALID [2022-04-08 06:10:42,492 INFO L290 TraceCheckUtils]: 97: Hoare triple {99496#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99471#(< ~counter~0 18)} is VALID [2022-04-08 06:10:42,493 INFO L290 TraceCheckUtils]: 96: Hoare triple {99496#(< ~counter~0 17)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99496#(< ~counter~0 17)} is VALID [2022-04-08 06:10:42,493 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {99007#true} {99496#(< ~counter~0 17)} #96#return; {99496#(< ~counter~0 17)} is VALID [2022-04-08 06:10:42,493 INFO L290 TraceCheckUtils]: 94: Hoare triple {99007#true} assume true; {99007#true} is VALID [2022-04-08 06:10:42,493 INFO L290 TraceCheckUtils]: 93: Hoare triple {99007#true} assume !(0 == ~cond); {99007#true} is VALID [2022-04-08 06:10:42,493 INFO L290 TraceCheckUtils]: 92: Hoare triple {99007#true} ~cond := #in~cond; {99007#true} is VALID [2022-04-08 06:10:42,493 INFO L272 TraceCheckUtils]: 91: Hoare triple {99496#(< ~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)); {99007#true} is VALID [2022-04-08 06:10:42,494 INFO L290 TraceCheckUtils]: 90: Hoare triple {99496#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {99496#(< ~counter~0 17)} is VALID [2022-04-08 06:10:42,495 INFO L290 TraceCheckUtils]: 89: Hoare triple {99521#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99496#(< ~counter~0 17)} is VALID [2022-04-08 06:10:42,495 INFO L290 TraceCheckUtils]: 88: Hoare triple {99521#(< ~counter~0 16)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99521#(< ~counter~0 16)} is VALID [2022-04-08 06:10:42,495 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {99007#true} {99521#(< ~counter~0 16)} #96#return; {99521#(< ~counter~0 16)} is VALID [2022-04-08 06:10:42,495 INFO L290 TraceCheckUtils]: 86: Hoare triple {99007#true} assume true; {99007#true} is VALID [2022-04-08 06:10:42,496 INFO L290 TraceCheckUtils]: 85: Hoare triple {99007#true} assume !(0 == ~cond); {99007#true} is VALID [2022-04-08 06:10:42,496 INFO L290 TraceCheckUtils]: 84: Hoare triple {99007#true} ~cond := #in~cond; {99007#true} is VALID [2022-04-08 06:10:42,496 INFO L272 TraceCheckUtils]: 83: Hoare triple {99521#(< ~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)); {99007#true} is VALID [2022-04-08 06:10:42,496 INFO L290 TraceCheckUtils]: 82: Hoare triple {99521#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {99521#(< ~counter~0 16)} is VALID [2022-04-08 06:10:42,497 INFO L290 TraceCheckUtils]: 81: Hoare triple {99546#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99521#(< ~counter~0 16)} is VALID [2022-04-08 06:10:42,497 INFO L290 TraceCheckUtils]: 80: Hoare triple {99546#(< ~counter~0 15)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99546#(< ~counter~0 15)} is VALID [2022-04-08 06:10:42,498 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {99007#true} {99546#(< ~counter~0 15)} #96#return; {99546#(< ~counter~0 15)} is VALID [2022-04-08 06:10:42,498 INFO L290 TraceCheckUtils]: 78: Hoare triple {99007#true} assume true; {99007#true} is VALID [2022-04-08 06:10:42,498 INFO L290 TraceCheckUtils]: 77: Hoare triple {99007#true} assume !(0 == ~cond); {99007#true} is VALID [2022-04-08 06:10:42,498 INFO L290 TraceCheckUtils]: 76: Hoare triple {99007#true} ~cond := #in~cond; {99007#true} is VALID [2022-04-08 06:10:42,498 INFO L272 TraceCheckUtils]: 75: Hoare triple {99546#(< ~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)); {99007#true} is VALID [2022-04-08 06:10:42,498 INFO L290 TraceCheckUtils]: 74: Hoare triple {99546#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {99546#(< ~counter~0 15)} is VALID [2022-04-08 06:10:42,499 INFO L290 TraceCheckUtils]: 73: Hoare triple {99364#(<= ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99546#(< ~counter~0 15)} is VALID [2022-04-08 06:10:42,499 INFO L290 TraceCheckUtils]: 72: Hoare triple {99364#(<= ~counter~0 13)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99364#(<= ~counter~0 13)} is VALID [2022-04-08 06:10:42,500 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {99007#true} {99364#(<= ~counter~0 13)} #96#return; {99364#(<= ~counter~0 13)} is VALID [2022-04-08 06:10:42,500 INFO L290 TraceCheckUtils]: 70: Hoare triple {99007#true} assume true; {99007#true} is VALID [2022-04-08 06:10:42,500 INFO L290 TraceCheckUtils]: 69: Hoare triple {99007#true} assume !(0 == ~cond); {99007#true} is VALID [2022-04-08 06:10:42,500 INFO L290 TraceCheckUtils]: 68: Hoare triple {99007#true} ~cond := #in~cond; {99007#true} is VALID [2022-04-08 06:10:42,500 INFO L272 TraceCheckUtils]: 67: Hoare triple {99364#(<= ~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)); {99007#true} is VALID [2022-04-08 06:10:42,501 INFO L290 TraceCheckUtils]: 66: Hoare triple {99364#(<= ~counter~0 13)} assume !!(#t~post7 < 20);havoc #t~post7; {99364#(<= ~counter~0 13)} is VALID [2022-04-08 06:10:42,501 INFO L290 TraceCheckUtils]: 65: Hoare triple {99339#(<= ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99364#(<= ~counter~0 13)} is VALID [2022-04-08 06:10:42,502 INFO L290 TraceCheckUtils]: 64: Hoare triple {99339#(<= ~counter~0 12)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99339#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:42,502 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {99007#true} {99339#(<= ~counter~0 12)} #96#return; {99339#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:42,502 INFO L290 TraceCheckUtils]: 62: Hoare triple {99007#true} assume true; {99007#true} is VALID [2022-04-08 06:10:42,503 INFO L290 TraceCheckUtils]: 61: Hoare triple {99007#true} assume !(0 == ~cond); {99007#true} is VALID [2022-04-08 06:10:42,503 INFO L290 TraceCheckUtils]: 60: Hoare triple {99007#true} ~cond := #in~cond; {99007#true} is VALID [2022-04-08 06:10:42,503 INFO L272 TraceCheckUtils]: 59: Hoare triple {99339#(<= ~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)); {99007#true} is VALID [2022-04-08 06:10:42,503 INFO L290 TraceCheckUtils]: 58: Hoare triple {99339#(<= ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {99339#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:42,504 INFO L290 TraceCheckUtils]: 57: Hoare triple {99314#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99339#(<= ~counter~0 12)} is VALID [2022-04-08 06:10:42,504 INFO L290 TraceCheckUtils]: 56: Hoare triple {99314#(<= ~counter~0 11)} assume !!(0 != ~r~0); {99314#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:42,505 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {99007#true} {99314#(<= ~counter~0 11)} #94#return; {99314#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:42,505 INFO L290 TraceCheckUtils]: 54: Hoare triple {99007#true} assume true; {99007#true} is VALID [2022-04-08 06:10:42,505 INFO L290 TraceCheckUtils]: 53: Hoare triple {99007#true} assume !(0 == ~cond); {99007#true} is VALID [2022-04-08 06:10:42,505 INFO L290 TraceCheckUtils]: 52: Hoare triple {99007#true} ~cond := #in~cond; {99007#true} is VALID [2022-04-08 06:10:42,505 INFO L272 TraceCheckUtils]: 51: Hoare triple {99314#(<= ~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)); {99007#true} is VALID [2022-04-08 06:10:42,505 INFO L290 TraceCheckUtils]: 50: Hoare triple {99314#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {99314#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:42,506 INFO L290 TraceCheckUtils]: 49: Hoare triple {99289#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99314#(<= ~counter~0 11)} is VALID [2022-04-08 06:10:42,507 INFO L290 TraceCheckUtils]: 48: Hoare triple {99289#(<= ~counter~0 10)} assume !(~r~0 < 0); {99289#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:42,507 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {99007#true} {99289#(<= ~counter~0 10)} #98#return; {99289#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:42,507 INFO L290 TraceCheckUtils]: 46: Hoare triple {99007#true} assume true; {99007#true} is VALID [2022-04-08 06:10:42,507 INFO L290 TraceCheckUtils]: 45: Hoare triple {99007#true} assume !(0 == ~cond); {99007#true} is VALID [2022-04-08 06:10:42,507 INFO L290 TraceCheckUtils]: 44: Hoare triple {99007#true} ~cond := #in~cond; {99007#true} is VALID [2022-04-08 06:10:42,507 INFO L272 TraceCheckUtils]: 43: Hoare triple {99289#(<= ~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)); {99007#true} is VALID [2022-04-08 06:10:42,508 INFO L290 TraceCheckUtils]: 42: Hoare triple {99289#(<= ~counter~0 10)} assume !!(#t~post8 < 20);havoc #t~post8; {99289#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:42,509 INFO L290 TraceCheckUtils]: 41: Hoare triple {99264#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99289#(<= ~counter~0 10)} is VALID [2022-04-08 06:10:42,509 INFO L290 TraceCheckUtils]: 40: Hoare triple {99264#(<= ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {99264#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:42,509 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {99007#true} {99264#(<= ~counter~0 9)} #98#return; {99264#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:42,510 INFO L290 TraceCheckUtils]: 38: Hoare triple {99007#true} assume true; {99007#true} is VALID [2022-04-08 06:10:42,510 INFO L290 TraceCheckUtils]: 37: Hoare triple {99007#true} assume !(0 == ~cond); {99007#true} is VALID [2022-04-08 06:10:42,510 INFO L290 TraceCheckUtils]: 36: Hoare triple {99007#true} ~cond := #in~cond; {99007#true} is VALID [2022-04-08 06:10:42,510 INFO L272 TraceCheckUtils]: 35: Hoare triple {99264#(<= ~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)); {99007#true} is VALID [2022-04-08 06:10:42,510 INFO L290 TraceCheckUtils]: 34: Hoare triple {99264#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {99264#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:42,511 INFO L290 TraceCheckUtils]: 33: Hoare triple {99239#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99264#(<= ~counter~0 9)} is VALID [2022-04-08 06:10:42,511 INFO L290 TraceCheckUtils]: 32: Hoare triple {99239#(<= ~counter~0 8)} assume !(~r~0 > 0); {99239#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:42,512 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {99007#true} {99239#(<= ~counter~0 8)} #96#return; {99239#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:42,512 INFO L290 TraceCheckUtils]: 30: Hoare triple {99007#true} assume true; {99007#true} is VALID [2022-04-08 06:10:42,512 INFO L290 TraceCheckUtils]: 29: Hoare triple {99007#true} assume !(0 == ~cond); {99007#true} is VALID [2022-04-08 06:10:42,512 INFO L290 TraceCheckUtils]: 28: Hoare triple {99007#true} ~cond := #in~cond; {99007#true} is VALID [2022-04-08 06:10:42,512 INFO L272 TraceCheckUtils]: 27: Hoare triple {99239#(<= ~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)); {99007#true} is VALID [2022-04-08 06:10:42,512 INFO L290 TraceCheckUtils]: 26: Hoare triple {99239#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {99239#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:42,513 INFO L290 TraceCheckUtils]: 25: Hoare triple {99214#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99239#(<= ~counter~0 8)} is VALID [2022-04-08 06:10:42,514 INFO L290 TraceCheckUtils]: 24: Hoare triple {99214#(<= ~counter~0 7)} assume !!(0 != ~r~0); {99214#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:42,514 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {99007#true} {99214#(<= ~counter~0 7)} #94#return; {99214#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:42,514 INFO L290 TraceCheckUtils]: 22: Hoare triple {99007#true} assume true; {99007#true} is VALID [2022-04-08 06:10:42,514 INFO L290 TraceCheckUtils]: 21: Hoare triple {99007#true} assume !(0 == ~cond); {99007#true} is VALID [2022-04-08 06:10:42,515 INFO L290 TraceCheckUtils]: 20: Hoare triple {99007#true} ~cond := #in~cond; {99007#true} is VALID [2022-04-08 06:10:42,515 INFO L272 TraceCheckUtils]: 19: Hoare triple {99214#(<= ~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)); {99007#true} is VALID [2022-04-08 06:10:42,515 INFO L290 TraceCheckUtils]: 18: Hoare triple {99214#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {99214#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:42,516 INFO L290 TraceCheckUtils]: 17: Hoare triple {99189#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99214#(<= ~counter~0 7)} is VALID [2022-04-08 06:10:42,516 INFO L290 TraceCheckUtils]: 16: Hoare triple {99189#(<= ~counter~0 6)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:42,516 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99007#true} {99189#(<= ~counter~0 6)} #92#return; {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:42,517 INFO L290 TraceCheckUtils]: 14: Hoare triple {99007#true} assume true; {99007#true} is VALID [2022-04-08 06:10:42,517 INFO L290 TraceCheckUtils]: 13: Hoare triple {99007#true} assume !(0 == ~cond); {99007#true} is VALID [2022-04-08 06:10:42,517 INFO L290 TraceCheckUtils]: 12: Hoare triple {99007#true} ~cond := #in~cond; {99007#true} is VALID [2022-04-08 06:10:42,517 INFO L272 TraceCheckUtils]: 11: Hoare triple {99189#(<= ~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)); {99007#true} is VALID [2022-04-08 06:10:42,517 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {99007#true} {99189#(<= ~counter~0 6)} #90#return; {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:42,517 INFO L290 TraceCheckUtils]: 9: Hoare triple {99007#true} assume true; {99007#true} is VALID [2022-04-08 06:10:42,517 INFO L290 TraceCheckUtils]: 8: Hoare triple {99007#true} assume !(0 == ~cond); {99007#true} is VALID [2022-04-08 06:10:42,517 INFO L290 TraceCheckUtils]: 7: Hoare triple {99007#true} ~cond := #in~cond; {99007#true} is VALID [2022-04-08 06:10:42,517 INFO L272 TraceCheckUtils]: 6: Hoare triple {99189#(<= ~counter~0 6)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {99007#true} is VALID [2022-04-08 06:10:42,518 INFO L290 TraceCheckUtils]: 5: Hoare triple {99189#(<= ~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; {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:42,518 INFO L272 TraceCheckUtils]: 4: Hoare triple {99189#(<= ~counter~0 6)} call #t~ret9 := main(); {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:42,518 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99189#(<= ~counter~0 6)} {99007#true} #102#return; {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:42,519 INFO L290 TraceCheckUtils]: 2: Hoare triple {99189#(<= ~counter~0 6)} assume true; {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:42,519 INFO L290 TraceCheckUtils]: 1: Hoare triple {99007#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {99189#(<= ~counter~0 6)} is VALID [2022-04-08 06:10:42,519 INFO L272 TraceCheckUtils]: 0: Hoare triple {99007#true} call ULTIMATE.init(); {99007#true} is VALID [2022-04-08 06:10:42,519 INFO L134 CoverageAnalysis]: Checked inductivity of 458 backedges. 26 proven. 116 refuted. 0 times theorem prover too weak. 316 trivial. 0 not checked. [2022-04-08 06:10:42,520 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:10:42,520 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1779476430] [2022-04-08 06:10:42,520 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:10:42,520 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1264056965] [2022-04-08 06:10:42,520 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1264056965] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:10:42,520 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:10:42,520 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 24 [2022-04-08 06:10:42,520 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:10:42,520 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [198951907] [2022-04-08 06:10:42,520 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [198951907] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:10:42,520 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:10:42,520 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-08 06:10:42,520 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [450304229] [2022-04-08 06:10:42,520 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:10:42,521 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 5.294117647058823) internal successors, (90), 16 states have internal predecessors, (90), 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 127 [2022-04-08 06:10:42,521 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:10:42,521 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 5.294117647058823) internal successors, (90), 16 states have internal predecessors, (90), 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:10:42,618 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:10:42,618 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-08 06:10:42,619 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:10:42,619 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-08 06:10:42,619 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:10:42,619 INFO L87 Difference]: Start difference. First operand 686 states and 906 transitions. Second operand has 17 states, 17 states have (on average 5.294117647058823) internal successors, (90), 16 states have internal predecessors, (90), 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:10:45,767 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:10:45,768 INFO L93 Difference]: Finished difference Result 745 states and 986 transitions. [2022-04-08 06:10:45,768 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-04-08 06:10:45,768 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 5.294117647058823) internal successors, (90), 16 states have internal predecessors, (90), 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 127 [2022-04-08 06:10:45,768 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:10:45,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 5.294117647058823) internal successors, (90), 16 states have internal predecessors, (90), 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:10:45,770 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 274 transitions. [2022-04-08 06:10:45,770 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 5.294117647058823) internal successors, (90), 16 states have internal predecessors, (90), 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:10:45,772 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 274 transitions. [2022-04-08 06:10:45,772 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 274 transitions. [2022-04-08 06:10:46,030 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 274 edges. 274 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:10:46,054 INFO L225 Difference]: With dead ends: 745 [2022-04-08 06:10:46,054 INFO L226 Difference]: Without dead ends: 734 [2022-04-08 06:10:46,054 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 263 GetRequests, 230 SyntacticMatches, 1 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 83 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=439, Invalid=683, Unknown=0, NotChecked=0, Total=1122 [2022-04-08 06:10:46,055 INFO L913 BasicCegarLoop]: 69 mSDtfsCounter, 187 mSDsluCounter, 239 mSDsCounter, 0 mSdLazyCounter, 174 mSolverCounterSat, 158 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 187 SdHoareTripleChecker+Valid, 308 SdHoareTripleChecker+Invalid, 332 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 158 IncrementalHoareTripleChecker+Valid, 174 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 06:10:46,055 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [187 Valid, 308 Invalid, 332 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [158 Valid, 174 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 06:10:46,055 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 734 states. [2022-04-08 06:10:47,979 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 734 to 712. [2022-04-08 06:10:47,979 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:10:47,980 INFO L82 GeneralOperation]: Start isEquivalent. First operand 734 states. Second operand has 712 states, 532 states have (on average 1.2030075187969924) internal successors, (640), 542 states have internal predecessors, (640), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 141 states have call predecessors, (151), 151 states have call successors, (151) [2022-04-08 06:10:47,980 INFO L74 IsIncluded]: Start isIncluded. First operand 734 states. Second operand has 712 states, 532 states have (on average 1.2030075187969924) internal successors, (640), 542 states have internal predecessors, (640), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 141 states have call predecessors, (151), 151 states have call successors, (151) [2022-04-08 06:10:47,981 INFO L87 Difference]: Start difference. First operand 734 states. Second operand has 712 states, 532 states have (on average 1.2030075187969924) internal successors, (640), 542 states have internal predecessors, (640), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 141 states have call predecessors, (151), 151 states have call successors, (151) [2022-04-08 06:10:48,002 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:10:48,002 INFO L93 Difference]: Finished difference Result 734 states and 970 transitions. [2022-04-08 06:10:48,002 INFO L276 IsEmpty]: Start isEmpty. Operand 734 states and 970 transitions. [2022-04-08 06:10:48,003 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:10:48,003 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:10:48,004 INFO L74 IsIncluded]: Start isIncluded. First operand has 712 states, 532 states have (on average 1.2030075187969924) internal successors, (640), 542 states have internal predecessors, (640), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 141 states have call predecessors, (151), 151 states have call successors, (151) Second operand 734 states. [2022-04-08 06:10:48,004 INFO L87 Difference]: Start difference. First operand has 712 states, 532 states have (on average 1.2030075187969924) internal successors, (640), 542 states have internal predecessors, (640), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 141 states have call predecessors, (151), 151 states have call successors, (151) Second operand 734 states. [2022-04-08 06:10:48,023 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:10:48,023 INFO L93 Difference]: Finished difference Result 734 states and 970 transitions. [2022-04-08 06:10:48,023 INFO L276 IsEmpty]: Start isEmpty. Operand 734 states and 970 transitions. [2022-04-08 06:10:48,024 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:10:48,024 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:10:48,024 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:10:48,024 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:10:48,024 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 712 states, 532 states have (on average 1.2030075187969924) internal successors, (640), 542 states have internal predecessors, (640), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 141 states have call predecessors, (151), 151 states have call successors, (151) [2022-04-08 06:10:48,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 712 states to 712 states and 944 transitions. [2022-04-08 06:10:48,052 INFO L78 Accepts]: Start accepts. Automaton has 712 states and 944 transitions. Word has length 127 [2022-04-08 06:10:48,052 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:10:48,053 INFO L478 AbstractCegarLoop]: Abstraction has 712 states and 944 transitions. [2022-04-08 06:10:48,053 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 5.294117647058823) internal successors, (90), 16 states have internal predecessors, (90), 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:10:48,053 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 712 states and 944 transitions. [2022-04-08 06:11:03,908 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 944 edges. 943 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:11:03,908 INFO L276 IsEmpty]: Start isEmpty. Operand 712 states and 944 transitions. [2022-04-08 06:11:03,909 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 130 [2022-04-08 06:11:03,909 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:11:03,909 INFO L499 BasicCegarLoop]: trace histogram [14, 13, 13, 6, 6, 6, 6, 5, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:11:03,926 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Forceful destruction successful, exit code 0 [2022-04-08 06:11:04,111 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable41,43 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:11:04,111 INFO L403 AbstractCegarLoop]: === Iteration 43 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:11:04,111 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:11:04,111 INFO L85 PathProgramCache]: Analyzing trace with hash -1410231607, now seen corresponding path program 19 times [2022-04-08 06:11:04,111 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:11:04,111 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [655908312] [2022-04-08 06:11:04,112 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:11:04,112 INFO L85 PathProgramCache]: Analyzing trace with hash -1410231607, now seen corresponding path program 20 times [2022-04-08 06:11:04,112 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:11:04,112 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [676392158] [2022-04-08 06:11:04,112 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:11:04,112 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:11:04,131 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:11:04,131 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1229199705] [2022-04-08 06:11:04,132 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:11:04,132 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:11:04,134 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:11:04,135 INFO L229 MonitoredProcess]: Starting monitored process 44 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:11:04,137 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (44)] Waiting until timeout for monitored process [2022-04-08 06:11:04,195 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:11:04,196 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:11:04,197 INFO L263 TraceCheckSpWp]: Trace formula consists of 313 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-08 06:11:04,224 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:11:04,225 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:11:04,839 INFO L272 TraceCheckUtils]: 0: Hoare triple {104194#true} call ULTIMATE.init(); {104194#true} is VALID [2022-04-08 06:11:04,839 INFO L290 TraceCheckUtils]: 1: Hoare triple {104194#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,839 INFO L290 TraceCheckUtils]: 2: Hoare triple {104202#(<= ~counter~0 0)} assume true; {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,840 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {104202#(<= ~counter~0 0)} {104194#true} #102#return; {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,840 INFO L272 TraceCheckUtils]: 4: Hoare triple {104202#(<= ~counter~0 0)} call #t~ret9 := main(); {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,840 INFO L290 TraceCheckUtils]: 5: Hoare triple {104202#(<= ~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; {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,841 INFO L272 TraceCheckUtils]: 6: Hoare triple {104202#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,841 INFO L290 TraceCheckUtils]: 7: Hoare triple {104202#(<= ~counter~0 0)} ~cond := #in~cond; {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,841 INFO L290 TraceCheckUtils]: 8: Hoare triple {104202#(<= ~counter~0 0)} assume !(0 == ~cond); {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,842 INFO L290 TraceCheckUtils]: 9: Hoare triple {104202#(<= ~counter~0 0)} assume true; {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,842 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {104202#(<= ~counter~0 0)} {104202#(<= ~counter~0 0)} #90#return; {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,843 INFO L272 TraceCheckUtils]: 11: Hoare triple {104202#(<= ~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)); {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,843 INFO L290 TraceCheckUtils]: 12: Hoare triple {104202#(<= ~counter~0 0)} ~cond := #in~cond; {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,843 INFO L290 TraceCheckUtils]: 13: Hoare triple {104202#(<= ~counter~0 0)} assume !(0 == ~cond); {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,843 INFO L290 TraceCheckUtils]: 14: Hoare triple {104202#(<= ~counter~0 0)} assume true; {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,844 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {104202#(<= ~counter~0 0)} {104202#(<= ~counter~0 0)} #92#return; {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,844 INFO L290 TraceCheckUtils]: 16: Hoare triple {104202#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {104202#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:04,846 INFO L290 TraceCheckUtils]: 17: Hoare triple {104202#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104251#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:04,847 INFO L290 TraceCheckUtils]: 18: Hoare triple {104251#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {104251#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:04,847 INFO L272 TraceCheckUtils]: 19: Hoare triple {104251#(<= ~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)); {104251#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:04,847 INFO L290 TraceCheckUtils]: 20: Hoare triple {104251#(<= ~counter~0 1)} ~cond := #in~cond; {104251#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:04,848 INFO L290 TraceCheckUtils]: 21: Hoare triple {104251#(<= ~counter~0 1)} assume !(0 == ~cond); {104251#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:04,848 INFO L290 TraceCheckUtils]: 22: Hoare triple {104251#(<= ~counter~0 1)} assume true; {104251#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:04,848 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {104251#(<= ~counter~0 1)} {104251#(<= ~counter~0 1)} #94#return; {104251#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:04,849 INFO L290 TraceCheckUtils]: 24: Hoare triple {104251#(<= ~counter~0 1)} assume !!(0 != ~r~0); {104251#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:04,850 INFO L290 TraceCheckUtils]: 25: Hoare triple {104251#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104276#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:04,850 INFO L290 TraceCheckUtils]: 26: Hoare triple {104276#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {104276#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:04,850 INFO L272 TraceCheckUtils]: 27: Hoare triple {104276#(<= ~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)); {104276#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:04,851 INFO L290 TraceCheckUtils]: 28: Hoare triple {104276#(<= ~counter~0 2)} ~cond := #in~cond; {104276#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:04,851 INFO L290 TraceCheckUtils]: 29: Hoare triple {104276#(<= ~counter~0 2)} assume !(0 == ~cond); {104276#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:04,851 INFO L290 TraceCheckUtils]: 30: Hoare triple {104276#(<= ~counter~0 2)} assume true; {104276#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:04,852 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {104276#(<= ~counter~0 2)} {104276#(<= ~counter~0 2)} #96#return; {104276#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:04,852 INFO L290 TraceCheckUtils]: 32: Hoare triple {104276#(<= ~counter~0 2)} assume !(~r~0 > 0); {104276#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:04,853 INFO L290 TraceCheckUtils]: 33: Hoare triple {104276#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104301#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:04,853 INFO L290 TraceCheckUtils]: 34: Hoare triple {104301#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {104301#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:04,853 INFO L272 TraceCheckUtils]: 35: Hoare triple {104301#(<= ~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)); {104301#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:04,854 INFO L290 TraceCheckUtils]: 36: Hoare triple {104301#(<= ~counter~0 3)} ~cond := #in~cond; {104301#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:04,854 INFO L290 TraceCheckUtils]: 37: Hoare triple {104301#(<= ~counter~0 3)} assume !(0 == ~cond); {104301#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:04,854 INFO L290 TraceCheckUtils]: 38: Hoare triple {104301#(<= ~counter~0 3)} assume true; {104301#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:04,855 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {104301#(<= ~counter~0 3)} {104301#(<= ~counter~0 3)} #98#return; {104301#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:04,855 INFO L290 TraceCheckUtils]: 40: Hoare triple {104301#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {104301#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:04,856 INFO L290 TraceCheckUtils]: 41: Hoare triple {104301#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104326#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:04,856 INFO L290 TraceCheckUtils]: 42: Hoare triple {104326#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {104326#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:04,857 INFO L272 TraceCheckUtils]: 43: Hoare triple {104326#(<= ~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)); {104326#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:04,857 INFO L290 TraceCheckUtils]: 44: Hoare triple {104326#(<= ~counter~0 4)} ~cond := #in~cond; {104326#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:04,857 INFO L290 TraceCheckUtils]: 45: Hoare triple {104326#(<= ~counter~0 4)} assume !(0 == ~cond); {104326#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:04,858 INFO L290 TraceCheckUtils]: 46: Hoare triple {104326#(<= ~counter~0 4)} assume true; {104326#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:04,858 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {104326#(<= ~counter~0 4)} {104326#(<= ~counter~0 4)} #98#return; {104326#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:04,858 INFO L290 TraceCheckUtils]: 48: Hoare triple {104326#(<= ~counter~0 4)} assume !(~r~0 < 0); {104326#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:04,860 INFO L290 TraceCheckUtils]: 49: Hoare triple {104326#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104351#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:04,860 INFO L290 TraceCheckUtils]: 50: Hoare triple {104351#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {104351#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:04,860 INFO L272 TraceCheckUtils]: 51: Hoare triple {104351#(<= ~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)); {104351#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:04,861 INFO L290 TraceCheckUtils]: 52: Hoare triple {104351#(<= ~counter~0 5)} ~cond := #in~cond; {104351#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:04,861 INFO L290 TraceCheckUtils]: 53: Hoare triple {104351#(<= ~counter~0 5)} assume !(0 == ~cond); {104351#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:04,861 INFO L290 TraceCheckUtils]: 54: Hoare triple {104351#(<= ~counter~0 5)} assume true; {104351#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:04,862 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {104351#(<= ~counter~0 5)} {104351#(<= ~counter~0 5)} #94#return; {104351#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:04,862 INFO L290 TraceCheckUtils]: 56: Hoare triple {104351#(<= ~counter~0 5)} assume !!(0 != ~r~0); {104351#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:04,863 INFO L290 TraceCheckUtils]: 57: Hoare triple {104351#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:04,863 INFO L290 TraceCheckUtils]: 58: Hoare triple {104376#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:04,864 INFO L272 TraceCheckUtils]: 59: Hoare triple {104376#(<= ~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)); {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:04,864 INFO L290 TraceCheckUtils]: 60: Hoare triple {104376#(<= ~counter~0 6)} ~cond := #in~cond; {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:04,864 INFO L290 TraceCheckUtils]: 61: Hoare triple {104376#(<= ~counter~0 6)} assume !(0 == ~cond); {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:04,864 INFO L290 TraceCheckUtils]: 62: Hoare triple {104376#(<= ~counter~0 6)} assume true; {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:04,865 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {104376#(<= ~counter~0 6)} {104376#(<= ~counter~0 6)} #96#return; {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:04,865 INFO L290 TraceCheckUtils]: 64: Hoare triple {104376#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:04,866 INFO L290 TraceCheckUtils]: 65: Hoare triple {104376#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104401#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:04,867 INFO L290 TraceCheckUtils]: 66: Hoare triple {104401#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {104401#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:04,867 INFO L272 TraceCheckUtils]: 67: Hoare triple {104401#(<= ~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)); {104401#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:04,868 INFO L290 TraceCheckUtils]: 68: Hoare triple {104401#(<= ~counter~0 7)} ~cond := #in~cond; {104401#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:04,868 INFO L290 TraceCheckUtils]: 69: Hoare triple {104401#(<= ~counter~0 7)} assume !(0 == ~cond); {104401#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:04,868 INFO L290 TraceCheckUtils]: 70: Hoare triple {104401#(<= ~counter~0 7)} assume true; {104401#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:04,869 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {104401#(<= ~counter~0 7)} {104401#(<= ~counter~0 7)} #96#return; {104401#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:04,869 INFO L290 TraceCheckUtils]: 72: Hoare triple {104401#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {104401#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:04,870 INFO L290 TraceCheckUtils]: 73: Hoare triple {104401#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104426#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:04,871 INFO L290 TraceCheckUtils]: 74: Hoare triple {104426#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {104426#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:04,871 INFO L272 TraceCheckUtils]: 75: Hoare triple {104426#(<= ~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)); {104426#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:04,872 INFO L290 TraceCheckUtils]: 76: Hoare triple {104426#(<= ~counter~0 8)} ~cond := #in~cond; {104426#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:04,872 INFO L290 TraceCheckUtils]: 77: Hoare triple {104426#(<= ~counter~0 8)} assume !(0 == ~cond); {104426#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:04,872 INFO L290 TraceCheckUtils]: 78: Hoare triple {104426#(<= ~counter~0 8)} assume true; {104426#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:04,873 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {104426#(<= ~counter~0 8)} {104426#(<= ~counter~0 8)} #96#return; {104426#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:04,873 INFO L290 TraceCheckUtils]: 80: Hoare triple {104426#(<= ~counter~0 8)} assume !(~r~0 > 0); {104426#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:04,874 INFO L290 TraceCheckUtils]: 81: Hoare triple {104426#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104451#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:04,874 INFO L290 TraceCheckUtils]: 82: Hoare triple {104451#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {104451#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:04,875 INFO L272 TraceCheckUtils]: 83: Hoare triple {104451#(<= ~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)); {104451#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:04,875 INFO L290 TraceCheckUtils]: 84: Hoare triple {104451#(<= ~counter~0 9)} ~cond := #in~cond; {104451#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:04,875 INFO L290 TraceCheckUtils]: 85: Hoare triple {104451#(<= ~counter~0 9)} assume !(0 == ~cond); {104451#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:04,875 INFO L290 TraceCheckUtils]: 86: Hoare triple {104451#(<= ~counter~0 9)} assume true; {104451#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:04,876 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {104451#(<= ~counter~0 9)} {104451#(<= ~counter~0 9)} #98#return; {104451#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:04,876 INFO L290 TraceCheckUtils]: 88: Hoare triple {104451#(<= ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {104451#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:04,877 INFO L290 TraceCheckUtils]: 89: Hoare triple {104451#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104476#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:04,877 INFO L290 TraceCheckUtils]: 90: Hoare triple {104476#(<= ~counter~0 10)} assume !!(#t~post8 < 20);havoc #t~post8; {104476#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:04,878 INFO L272 TraceCheckUtils]: 91: Hoare triple {104476#(<= ~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)); {104476#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:04,878 INFO L290 TraceCheckUtils]: 92: Hoare triple {104476#(<= ~counter~0 10)} ~cond := #in~cond; {104476#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:04,878 INFO L290 TraceCheckUtils]: 93: Hoare triple {104476#(<= ~counter~0 10)} assume !(0 == ~cond); {104476#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:04,879 INFO L290 TraceCheckUtils]: 94: Hoare triple {104476#(<= ~counter~0 10)} assume true; {104476#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:04,879 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {104476#(<= ~counter~0 10)} {104476#(<= ~counter~0 10)} #98#return; {104476#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:04,879 INFO L290 TraceCheckUtils]: 96: Hoare triple {104476#(<= ~counter~0 10)} assume !(~r~0 < 0); {104476#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:04,880 INFO L290 TraceCheckUtils]: 97: Hoare triple {104476#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104501#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:04,881 INFO L290 TraceCheckUtils]: 98: Hoare triple {104501#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {104501#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:04,881 INFO L272 TraceCheckUtils]: 99: Hoare triple {104501#(<= ~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)); {104501#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:04,881 INFO L290 TraceCheckUtils]: 100: Hoare triple {104501#(<= ~counter~0 11)} ~cond := #in~cond; {104501#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:04,882 INFO L290 TraceCheckUtils]: 101: Hoare triple {104501#(<= ~counter~0 11)} assume !(0 == ~cond); {104501#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:04,882 INFO L290 TraceCheckUtils]: 102: Hoare triple {104501#(<= ~counter~0 11)} assume true; {104501#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:04,882 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {104501#(<= ~counter~0 11)} {104501#(<= ~counter~0 11)} #94#return; {104501#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:04,883 INFO L290 TraceCheckUtils]: 104: Hoare triple {104501#(<= ~counter~0 11)} assume !!(0 != ~r~0); {104501#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:04,884 INFO L290 TraceCheckUtils]: 105: Hoare triple {104501#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104526#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:04,884 INFO L290 TraceCheckUtils]: 106: Hoare triple {104526#(<= ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {104526#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:04,884 INFO L272 TraceCheckUtils]: 107: Hoare triple {104526#(<= ~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)); {104526#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:04,885 INFO L290 TraceCheckUtils]: 108: Hoare triple {104526#(<= ~counter~0 12)} ~cond := #in~cond; {104526#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:04,885 INFO L290 TraceCheckUtils]: 109: Hoare triple {104526#(<= ~counter~0 12)} assume !(0 == ~cond); {104526#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:04,885 INFO L290 TraceCheckUtils]: 110: Hoare triple {104526#(<= ~counter~0 12)} assume true; {104526#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:04,885 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {104526#(<= ~counter~0 12)} {104526#(<= ~counter~0 12)} #96#return; {104526#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:04,886 INFO L290 TraceCheckUtils]: 112: Hoare triple {104526#(<= ~counter~0 12)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {104526#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:04,889 INFO L290 TraceCheckUtils]: 113: Hoare triple {104526#(<= ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104551#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:04,889 INFO L290 TraceCheckUtils]: 114: Hoare triple {104551#(<= ~counter~0 13)} assume !!(#t~post7 < 20);havoc #t~post7; {104551#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:04,890 INFO L272 TraceCheckUtils]: 115: Hoare triple {104551#(<= ~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)); {104551#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:04,890 INFO L290 TraceCheckUtils]: 116: Hoare triple {104551#(<= ~counter~0 13)} ~cond := #in~cond; {104551#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:04,890 INFO L290 TraceCheckUtils]: 117: Hoare triple {104551#(<= ~counter~0 13)} assume !(0 == ~cond); {104551#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:04,891 INFO L290 TraceCheckUtils]: 118: Hoare triple {104551#(<= ~counter~0 13)} assume true; {104551#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:04,891 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {104551#(<= ~counter~0 13)} {104551#(<= ~counter~0 13)} #96#return; {104551#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:04,891 INFO L290 TraceCheckUtils]: 120: Hoare triple {104551#(<= ~counter~0 13)} assume !(~r~0 > 0); {104551#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:04,892 INFO L290 TraceCheckUtils]: 121: Hoare triple {104551#(<= ~counter~0 13)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104576#(<= |main_#t~post8| 13)} is VALID [2022-04-08 06:11:04,892 INFO L290 TraceCheckUtils]: 122: Hoare triple {104576#(<= |main_#t~post8| 13)} assume !(#t~post8 < 20);havoc #t~post8; {104195#false} is VALID [2022-04-08 06:11:04,892 INFO L290 TraceCheckUtils]: 123: Hoare triple {104195#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104195#false} is VALID [2022-04-08 06:11:04,892 INFO L290 TraceCheckUtils]: 124: Hoare triple {104195#false} assume !(#t~post6 < 20);havoc #t~post6; {104195#false} is VALID [2022-04-08 06:11:04,892 INFO L272 TraceCheckUtils]: 125: Hoare triple {104195#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)); {104195#false} is VALID [2022-04-08 06:11:04,892 INFO L290 TraceCheckUtils]: 126: Hoare triple {104195#false} ~cond := #in~cond; {104195#false} is VALID [2022-04-08 06:11:04,892 INFO L290 TraceCheckUtils]: 127: Hoare triple {104195#false} assume 0 == ~cond; {104195#false} is VALID [2022-04-08 06:11:04,893 INFO L290 TraceCheckUtils]: 128: Hoare triple {104195#false} assume !false; {104195#false} is VALID [2022-04-08 06:11:04,893 INFO L134 CoverageAnalysis]: Checked inductivity of 452 backedges. 32 proven. 416 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:11:04,893 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:11:05,529 INFO L290 TraceCheckUtils]: 128: Hoare triple {104195#false} assume !false; {104195#false} is VALID [2022-04-08 06:11:05,530 INFO L290 TraceCheckUtils]: 127: Hoare triple {104195#false} assume 0 == ~cond; {104195#false} is VALID [2022-04-08 06:11:05,530 INFO L290 TraceCheckUtils]: 126: Hoare triple {104195#false} ~cond := #in~cond; {104195#false} is VALID [2022-04-08 06:11:05,530 INFO L272 TraceCheckUtils]: 125: Hoare triple {104195#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)); {104195#false} is VALID [2022-04-08 06:11:05,530 INFO L290 TraceCheckUtils]: 124: Hoare triple {104195#false} assume !(#t~post6 < 20);havoc #t~post6; {104195#false} is VALID [2022-04-08 06:11:05,530 INFO L290 TraceCheckUtils]: 123: Hoare triple {104195#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104195#false} is VALID [2022-04-08 06:11:05,530 INFO L290 TraceCheckUtils]: 122: Hoare triple {104616#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {104195#false} is VALID [2022-04-08 06:11:05,531 INFO L290 TraceCheckUtils]: 121: Hoare triple {104620#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104616#(< |main_#t~post8| 20)} is VALID [2022-04-08 06:11:05,531 INFO L290 TraceCheckUtils]: 120: Hoare triple {104620#(< ~counter~0 20)} assume !(~r~0 > 0); {104620#(< ~counter~0 20)} is VALID [2022-04-08 06:11:05,531 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {104194#true} {104620#(< ~counter~0 20)} #96#return; {104620#(< ~counter~0 20)} is VALID [2022-04-08 06:11:05,532 INFO L290 TraceCheckUtils]: 118: Hoare triple {104194#true} assume true; {104194#true} is VALID [2022-04-08 06:11:05,532 INFO L290 TraceCheckUtils]: 117: Hoare triple {104194#true} assume !(0 == ~cond); {104194#true} is VALID [2022-04-08 06:11:05,532 INFO L290 TraceCheckUtils]: 116: Hoare triple {104194#true} ~cond := #in~cond; {104194#true} is VALID [2022-04-08 06:11:05,532 INFO L272 TraceCheckUtils]: 115: Hoare triple {104620#(< ~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)); {104194#true} is VALID [2022-04-08 06:11:05,532 INFO L290 TraceCheckUtils]: 114: Hoare triple {104620#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {104620#(< ~counter~0 20)} is VALID [2022-04-08 06:11:05,534 INFO L290 TraceCheckUtils]: 113: Hoare triple {104645#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104620#(< ~counter~0 20)} is VALID [2022-04-08 06:11:05,535 INFO L290 TraceCheckUtils]: 112: Hoare triple {104645#(< ~counter~0 19)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {104645#(< ~counter~0 19)} is VALID [2022-04-08 06:11:05,535 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {104194#true} {104645#(< ~counter~0 19)} #96#return; {104645#(< ~counter~0 19)} is VALID [2022-04-08 06:11:05,535 INFO L290 TraceCheckUtils]: 110: Hoare triple {104194#true} assume true; {104194#true} is VALID [2022-04-08 06:11:05,535 INFO L290 TraceCheckUtils]: 109: Hoare triple {104194#true} assume !(0 == ~cond); {104194#true} is VALID [2022-04-08 06:11:05,535 INFO L290 TraceCheckUtils]: 108: Hoare triple {104194#true} ~cond := #in~cond; {104194#true} is VALID [2022-04-08 06:11:05,535 INFO L272 TraceCheckUtils]: 107: Hoare triple {104645#(< ~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)); {104194#true} is VALID [2022-04-08 06:11:05,536 INFO L290 TraceCheckUtils]: 106: Hoare triple {104645#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {104645#(< ~counter~0 19)} is VALID [2022-04-08 06:11:05,537 INFO L290 TraceCheckUtils]: 105: Hoare triple {104670#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104645#(< ~counter~0 19)} is VALID [2022-04-08 06:11:05,537 INFO L290 TraceCheckUtils]: 104: Hoare triple {104670#(< ~counter~0 18)} assume !!(0 != ~r~0); {104670#(< ~counter~0 18)} is VALID [2022-04-08 06:11:05,537 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {104194#true} {104670#(< ~counter~0 18)} #94#return; {104670#(< ~counter~0 18)} is VALID [2022-04-08 06:11:05,537 INFO L290 TraceCheckUtils]: 102: Hoare triple {104194#true} assume true; {104194#true} is VALID [2022-04-08 06:11:05,537 INFO L290 TraceCheckUtils]: 101: Hoare triple {104194#true} assume !(0 == ~cond); {104194#true} is VALID [2022-04-08 06:11:05,537 INFO L290 TraceCheckUtils]: 100: Hoare triple {104194#true} ~cond := #in~cond; {104194#true} is VALID [2022-04-08 06:11:05,538 INFO L272 TraceCheckUtils]: 99: Hoare triple {104670#(< ~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)); {104194#true} is VALID [2022-04-08 06:11:05,539 INFO L290 TraceCheckUtils]: 98: Hoare triple {104670#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {104670#(< ~counter~0 18)} is VALID [2022-04-08 06:11:05,540 INFO L290 TraceCheckUtils]: 97: Hoare triple {104695#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104670#(< ~counter~0 18)} is VALID [2022-04-08 06:11:05,541 INFO L290 TraceCheckUtils]: 96: Hoare triple {104695#(< ~counter~0 17)} assume !(~r~0 < 0); {104695#(< ~counter~0 17)} is VALID [2022-04-08 06:11:05,541 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {104194#true} {104695#(< ~counter~0 17)} #98#return; {104695#(< ~counter~0 17)} is VALID [2022-04-08 06:11:05,541 INFO L290 TraceCheckUtils]: 94: Hoare triple {104194#true} assume true; {104194#true} is VALID [2022-04-08 06:11:05,541 INFO L290 TraceCheckUtils]: 93: Hoare triple {104194#true} assume !(0 == ~cond); {104194#true} is VALID [2022-04-08 06:11:05,541 INFO L290 TraceCheckUtils]: 92: Hoare triple {104194#true} ~cond := #in~cond; {104194#true} is VALID [2022-04-08 06:11:05,541 INFO L272 TraceCheckUtils]: 91: Hoare triple {104695#(< ~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)); {104194#true} is VALID [2022-04-08 06:11:05,552 INFO L290 TraceCheckUtils]: 90: Hoare triple {104695#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {104695#(< ~counter~0 17)} is VALID [2022-04-08 06:11:05,554 INFO L290 TraceCheckUtils]: 89: Hoare triple {104720#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104695#(< ~counter~0 17)} is VALID [2022-04-08 06:11:05,554 INFO L290 TraceCheckUtils]: 88: Hoare triple {104720#(< ~counter~0 16)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {104720#(< ~counter~0 16)} is VALID [2022-04-08 06:11:05,555 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {104194#true} {104720#(< ~counter~0 16)} #98#return; {104720#(< ~counter~0 16)} is VALID [2022-04-08 06:11:05,555 INFO L290 TraceCheckUtils]: 86: Hoare triple {104194#true} assume true; {104194#true} is VALID [2022-04-08 06:11:05,555 INFO L290 TraceCheckUtils]: 85: Hoare triple {104194#true} assume !(0 == ~cond); {104194#true} is VALID [2022-04-08 06:11:05,555 INFO L290 TraceCheckUtils]: 84: Hoare triple {104194#true} ~cond := #in~cond; {104194#true} is VALID [2022-04-08 06:11:05,555 INFO L272 TraceCheckUtils]: 83: Hoare triple {104720#(< ~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)); {104194#true} is VALID [2022-04-08 06:11:05,556 INFO L290 TraceCheckUtils]: 82: Hoare triple {104720#(< ~counter~0 16)} assume !!(#t~post8 < 20);havoc #t~post8; {104720#(< ~counter~0 16)} is VALID [2022-04-08 06:11:05,557 INFO L290 TraceCheckUtils]: 81: Hoare triple {104745#(< ~counter~0 15)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104720#(< ~counter~0 16)} is VALID [2022-04-08 06:11:05,557 INFO L290 TraceCheckUtils]: 80: Hoare triple {104745#(< ~counter~0 15)} assume !(~r~0 > 0); {104745#(< ~counter~0 15)} is VALID [2022-04-08 06:11:05,558 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {104194#true} {104745#(< ~counter~0 15)} #96#return; {104745#(< ~counter~0 15)} is VALID [2022-04-08 06:11:05,558 INFO L290 TraceCheckUtils]: 78: Hoare triple {104194#true} assume true; {104194#true} is VALID [2022-04-08 06:11:05,558 INFO L290 TraceCheckUtils]: 77: Hoare triple {104194#true} assume !(0 == ~cond); {104194#true} is VALID [2022-04-08 06:11:05,558 INFO L290 TraceCheckUtils]: 76: Hoare triple {104194#true} ~cond := #in~cond; {104194#true} is VALID [2022-04-08 06:11:05,558 INFO L272 TraceCheckUtils]: 75: Hoare triple {104745#(< ~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)); {104194#true} is VALID [2022-04-08 06:11:05,558 INFO L290 TraceCheckUtils]: 74: Hoare triple {104745#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {104745#(< ~counter~0 15)} is VALID [2022-04-08 06:11:05,559 INFO L290 TraceCheckUtils]: 73: Hoare triple {104551#(<= ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104745#(< ~counter~0 15)} is VALID [2022-04-08 06:11:05,560 INFO L290 TraceCheckUtils]: 72: Hoare triple {104551#(<= ~counter~0 13)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {104551#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:05,560 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {104194#true} {104551#(<= ~counter~0 13)} #96#return; {104551#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:05,560 INFO L290 TraceCheckUtils]: 70: Hoare triple {104194#true} assume true; {104194#true} is VALID [2022-04-08 06:11:05,560 INFO L290 TraceCheckUtils]: 69: Hoare triple {104194#true} assume !(0 == ~cond); {104194#true} is VALID [2022-04-08 06:11:05,560 INFO L290 TraceCheckUtils]: 68: Hoare triple {104194#true} ~cond := #in~cond; {104194#true} is VALID [2022-04-08 06:11:05,560 INFO L272 TraceCheckUtils]: 67: Hoare triple {104551#(<= ~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)); {104194#true} is VALID [2022-04-08 06:11:05,561 INFO L290 TraceCheckUtils]: 66: Hoare triple {104551#(<= ~counter~0 13)} assume !!(#t~post7 < 20);havoc #t~post7; {104551#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:05,562 INFO L290 TraceCheckUtils]: 65: Hoare triple {104526#(<= ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104551#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:05,562 INFO L290 TraceCheckUtils]: 64: Hoare triple {104526#(<= ~counter~0 12)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {104526#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:05,562 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {104194#true} {104526#(<= ~counter~0 12)} #96#return; {104526#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:05,562 INFO L290 TraceCheckUtils]: 62: Hoare triple {104194#true} assume true; {104194#true} is VALID [2022-04-08 06:11:05,563 INFO L290 TraceCheckUtils]: 61: Hoare triple {104194#true} assume !(0 == ~cond); {104194#true} is VALID [2022-04-08 06:11:05,563 INFO L290 TraceCheckUtils]: 60: Hoare triple {104194#true} ~cond := #in~cond; {104194#true} is VALID [2022-04-08 06:11:05,563 INFO L272 TraceCheckUtils]: 59: Hoare triple {104526#(<= ~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)); {104194#true} is VALID [2022-04-08 06:11:05,563 INFO L290 TraceCheckUtils]: 58: Hoare triple {104526#(<= ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {104526#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:05,564 INFO L290 TraceCheckUtils]: 57: Hoare triple {104501#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104526#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:05,564 INFO L290 TraceCheckUtils]: 56: Hoare triple {104501#(<= ~counter~0 11)} assume !!(0 != ~r~0); {104501#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:05,565 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {104194#true} {104501#(<= ~counter~0 11)} #94#return; {104501#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:05,565 INFO L290 TraceCheckUtils]: 54: Hoare triple {104194#true} assume true; {104194#true} is VALID [2022-04-08 06:11:05,565 INFO L290 TraceCheckUtils]: 53: Hoare triple {104194#true} assume !(0 == ~cond); {104194#true} is VALID [2022-04-08 06:11:05,565 INFO L290 TraceCheckUtils]: 52: Hoare triple {104194#true} ~cond := #in~cond; {104194#true} is VALID [2022-04-08 06:11:05,565 INFO L272 TraceCheckUtils]: 51: Hoare triple {104501#(<= ~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)); {104194#true} is VALID [2022-04-08 06:11:05,565 INFO L290 TraceCheckUtils]: 50: Hoare triple {104501#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {104501#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:05,566 INFO L290 TraceCheckUtils]: 49: Hoare triple {104476#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104501#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:05,567 INFO L290 TraceCheckUtils]: 48: Hoare triple {104476#(<= ~counter~0 10)} assume !(~r~0 < 0); {104476#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:05,567 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {104194#true} {104476#(<= ~counter~0 10)} #98#return; {104476#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:05,567 INFO L290 TraceCheckUtils]: 46: Hoare triple {104194#true} assume true; {104194#true} is VALID [2022-04-08 06:11:05,567 INFO L290 TraceCheckUtils]: 45: Hoare triple {104194#true} assume !(0 == ~cond); {104194#true} is VALID [2022-04-08 06:11:05,567 INFO L290 TraceCheckUtils]: 44: Hoare triple {104194#true} ~cond := #in~cond; {104194#true} is VALID [2022-04-08 06:11:05,567 INFO L272 TraceCheckUtils]: 43: Hoare triple {104476#(<= ~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)); {104194#true} is VALID [2022-04-08 06:11:05,568 INFO L290 TraceCheckUtils]: 42: Hoare triple {104476#(<= ~counter~0 10)} assume !!(#t~post8 < 20);havoc #t~post8; {104476#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:05,569 INFO L290 TraceCheckUtils]: 41: Hoare triple {104451#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104476#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:05,569 INFO L290 TraceCheckUtils]: 40: Hoare triple {104451#(<= ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {104451#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:05,570 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {104194#true} {104451#(<= ~counter~0 9)} #98#return; {104451#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:05,570 INFO L290 TraceCheckUtils]: 38: Hoare triple {104194#true} assume true; {104194#true} is VALID [2022-04-08 06:11:05,570 INFO L290 TraceCheckUtils]: 37: Hoare triple {104194#true} assume !(0 == ~cond); {104194#true} is VALID [2022-04-08 06:11:05,570 INFO L290 TraceCheckUtils]: 36: Hoare triple {104194#true} ~cond := #in~cond; {104194#true} is VALID [2022-04-08 06:11:05,570 INFO L272 TraceCheckUtils]: 35: Hoare triple {104451#(<= ~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)); {104194#true} is VALID [2022-04-08 06:11:05,570 INFO L290 TraceCheckUtils]: 34: Hoare triple {104451#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {104451#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:05,571 INFO L290 TraceCheckUtils]: 33: Hoare triple {104426#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104451#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:05,572 INFO L290 TraceCheckUtils]: 32: Hoare triple {104426#(<= ~counter~0 8)} assume !(~r~0 > 0); {104426#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:05,572 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {104194#true} {104426#(<= ~counter~0 8)} #96#return; {104426#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:05,572 INFO L290 TraceCheckUtils]: 30: Hoare triple {104194#true} assume true; {104194#true} is VALID [2022-04-08 06:11:05,572 INFO L290 TraceCheckUtils]: 29: Hoare triple {104194#true} assume !(0 == ~cond); {104194#true} is VALID [2022-04-08 06:11:05,572 INFO L290 TraceCheckUtils]: 28: Hoare triple {104194#true} ~cond := #in~cond; {104194#true} is VALID [2022-04-08 06:11:05,572 INFO L272 TraceCheckUtils]: 27: Hoare triple {104426#(<= ~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)); {104194#true} is VALID [2022-04-08 06:11:05,573 INFO L290 TraceCheckUtils]: 26: Hoare triple {104426#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {104426#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:05,574 INFO L290 TraceCheckUtils]: 25: Hoare triple {104401#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104426#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:05,574 INFO L290 TraceCheckUtils]: 24: Hoare triple {104401#(<= ~counter~0 7)} assume !!(0 != ~r~0); {104401#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:05,574 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {104194#true} {104401#(<= ~counter~0 7)} #94#return; {104401#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:05,574 INFO L290 TraceCheckUtils]: 22: Hoare triple {104194#true} assume true; {104194#true} is VALID [2022-04-08 06:11:05,575 INFO L290 TraceCheckUtils]: 21: Hoare triple {104194#true} assume !(0 == ~cond); {104194#true} is VALID [2022-04-08 06:11:05,575 INFO L290 TraceCheckUtils]: 20: Hoare triple {104194#true} ~cond := #in~cond; {104194#true} is VALID [2022-04-08 06:11:05,575 INFO L272 TraceCheckUtils]: 19: Hoare triple {104401#(<= ~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)); {104194#true} is VALID [2022-04-08 06:11:05,575 INFO L290 TraceCheckUtils]: 18: Hoare triple {104401#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {104401#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:05,576 INFO L290 TraceCheckUtils]: 17: Hoare triple {104376#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104401#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:05,576 INFO L290 TraceCheckUtils]: 16: Hoare triple {104376#(<= ~counter~0 6)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:05,577 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {104194#true} {104376#(<= ~counter~0 6)} #92#return; {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:05,577 INFO L290 TraceCheckUtils]: 14: Hoare triple {104194#true} assume true; {104194#true} is VALID [2022-04-08 06:11:05,577 INFO L290 TraceCheckUtils]: 13: Hoare triple {104194#true} assume !(0 == ~cond); {104194#true} is VALID [2022-04-08 06:11:05,577 INFO L290 TraceCheckUtils]: 12: Hoare triple {104194#true} ~cond := #in~cond; {104194#true} is VALID [2022-04-08 06:11:05,577 INFO L272 TraceCheckUtils]: 11: Hoare triple {104376#(<= ~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)); {104194#true} is VALID [2022-04-08 06:11:05,577 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {104194#true} {104376#(<= ~counter~0 6)} #90#return; {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:05,577 INFO L290 TraceCheckUtils]: 9: Hoare triple {104194#true} assume true; {104194#true} is VALID [2022-04-08 06:11:05,578 INFO L290 TraceCheckUtils]: 8: Hoare triple {104194#true} assume !(0 == ~cond); {104194#true} is VALID [2022-04-08 06:11:05,578 INFO L290 TraceCheckUtils]: 7: Hoare triple {104194#true} ~cond := #in~cond; {104194#true} is VALID [2022-04-08 06:11:05,578 INFO L272 TraceCheckUtils]: 6: Hoare triple {104376#(<= ~counter~0 6)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {104194#true} is VALID [2022-04-08 06:11:05,578 INFO L290 TraceCheckUtils]: 5: Hoare triple {104376#(<= ~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; {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:05,578 INFO L272 TraceCheckUtils]: 4: Hoare triple {104376#(<= ~counter~0 6)} call #t~ret9 := main(); {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:05,579 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {104376#(<= ~counter~0 6)} {104194#true} #102#return; {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:05,579 INFO L290 TraceCheckUtils]: 2: Hoare triple {104376#(<= ~counter~0 6)} assume true; {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:05,579 INFO L290 TraceCheckUtils]: 1: Hoare triple {104194#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {104376#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:05,579 INFO L272 TraceCheckUtils]: 0: Hoare triple {104194#true} call ULTIMATE.init(); {104194#true} is VALID [2022-04-08 06:11:05,580 INFO L134 CoverageAnalysis]: Checked inductivity of 452 backedges. 32 proven. 104 refuted. 0 times theorem prover too weak. 316 trivial. 0 not checked. [2022-04-08 06:11:05,580 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:11:05,580 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [676392158] [2022-04-08 06:11:05,580 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:11:05,580 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1229199705] [2022-04-08 06:11:05,580 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1229199705] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:11:05,580 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:11:05,580 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 24 [2022-04-08 06:11:05,581 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:11:05,581 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [655908312] [2022-04-08 06:11:05,581 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [655908312] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:11:05,581 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:11:05,581 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-08 06:11:05,581 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [52399291] [2022-04-08 06:11:05,581 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:11:05,581 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 5.411764705882353) internal successors, (92), 16 states have internal predecessors, (92), 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 129 [2022-04-08 06:11:05,581 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:11:05,582 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 5.411764705882353) internal successors, (92), 16 states have internal predecessors, (92), 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:11:05,702 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:11:05,702 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-08 06:11:05,702 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:11:05,703 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-08 06:11:05,703 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:11:05,703 INFO L87 Difference]: Start difference. First operand 712 states and 944 transitions. Second operand has 17 states, 17 states have (on average 5.411764705882353) internal successors, (92), 16 states have internal predecessors, (92), 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:11:09,079 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:11:09,079 INFO L93 Difference]: Finished difference Result 937 states and 1280 transitions. [2022-04-08 06:11:09,079 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-04-08 06:11:09,079 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 5.411764705882353) internal successors, (92), 16 states have internal predecessors, (92), 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 129 [2022-04-08 06:11:09,080 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:11:09,080 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 5.411764705882353) internal successors, (92), 16 states have internal predecessors, (92), 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:11:09,082 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 296 transitions. [2022-04-08 06:11:09,082 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 5.411764705882353) internal successors, (92), 16 states have internal predecessors, (92), 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:11:09,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 296 transitions. [2022-04-08 06:11:09,084 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 296 transitions. [2022-04-08 06:11:09,400 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 296 edges. 296 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:11:09,423 INFO L225 Difference]: With dead ends: 937 [2022-04-08 06:11:09,424 INFO L226 Difference]: Without dead ends: 740 [2022-04-08 06:11:09,424 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 268 GetRequests, 234 SyntacticMatches, 1 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 93 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=467, Invalid=723, Unknown=0, NotChecked=0, Total=1190 [2022-04-08 06:11:09,425 INFO L913 BasicCegarLoop]: 69 mSDtfsCounter, 210 mSDsluCounter, 231 mSDsCounter, 0 mSdLazyCounter, 167 mSolverCounterSat, 173 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 210 SdHoareTripleChecker+Valid, 300 SdHoareTripleChecker+Invalid, 340 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 173 IncrementalHoareTripleChecker+Valid, 167 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 06:11:09,425 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [210 Valid, 300 Invalid, 340 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [173 Valid, 167 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 06:11:09,425 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 740 states. [2022-04-08 06:11:11,457 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 740 to 730. [2022-04-08 06:11:11,457 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:11:11,458 INFO L82 GeneralOperation]: Start isEquivalent. First operand 740 states. Second operand has 730 states, 550 states have (on average 1.2036363636363636) internal successors, (662), 554 states have internal predecessors, (662), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 147 states have call predecessors, (151), 151 states have call successors, (151) [2022-04-08 06:11:11,458 INFO L74 IsIncluded]: Start isIncluded. First operand 740 states. Second operand has 730 states, 550 states have (on average 1.2036363636363636) internal successors, (662), 554 states have internal predecessors, (662), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 147 states have call predecessors, (151), 151 states have call successors, (151) [2022-04-08 06:11:11,459 INFO L87 Difference]: Start difference. First operand 740 states. Second operand has 730 states, 550 states have (on average 1.2036363636363636) internal successors, (662), 554 states have internal predecessors, (662), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 147 states have call predecessors, (151), 151 states have call successors, (151) [2022-04-08 06:11:11,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:11:11,478 INFO L93 Difference]: Finished difference Result 740 states and 976 transitions. [2022-04-08 06:11:11,478 INFO L276 IsEmpty]: Start isEmpty. Operand 740 states and 976 transitions. [2022-04-08 06:11:11,479 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:11:11,479 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:11:11,480 INFO L74 IsIncluded]: Start isIncluded. First operand has 730 states, 550 states have (on average 1.2036363636363636) internal successors, (662), 554 states have internal predecessors, (662), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 147 states have call predecessors, (151), 151 states have call successors, (151) Second operand 740 states. [2022-04-08 06:11:11,481 INFO L87 Difference]: Start difference. First operand has 730 states, 550 states have (on average 1.2036363636363636) internal successors, (662), 554 states have internal predecessors, (662), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 147 states have call predecessors, (151), 151 states have call successors, (151) Second operand 740 states. [2022-04-08 06:11:11,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:11:11,500 INFO L93 Difference]: Finished difference Result 740 states and 976 transitions. [2022-04-08 06:11:11,500 INFO L276 IsEmpty]: Start isEmpty. Operand 740 states and 976 transitions. [2022-04-08 06:11:11,500 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:11:11,501 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:11:11,501 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:11:11,501 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:11:11,502 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 730 states, 550 states have (on average 1.2036363636363636) internal successors, (662), 554 states have internal predecessors, (662), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 147 states have call predecessors, (151), 151 states have call successors, (151) [2022-04-08 06:11:11,526 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 730 states to 730 states and 966 transitions. [2022-04-08 06:11:11,527 INFO L78 Accepts]: Start accepts. Automaton has 730 states and 966 transitions. Word has length 129 [2022-04-08 06:11:11,527 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:11:11,527 INFO L478 AbstractCegarLoop]: Abstraction has 730 states and 966 transitions. [2022-04-08 06:11:11,527 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 5.411764705882353) internal successors, (92), 16 states have internal predecessors, (92), 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:11:11,527 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 730 states and 966 transitions. [2022-04-08 06:11:32,314 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 966 edges. 962 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-08 06:11:32,315 INFO L276 IsEmpty]: Start isEmpty. Operand 730 states and 966 transitions. [2022-04-08 06:11:32,316 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 132 [2022-04-08 06:11:32,316 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:11:32,316 INFO L499 BasicCegarLoop]: trace histogram [14, 13, 13, 7, 6, 6, 6, 5, 4, 4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:11:32,334 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (44)] Forceful destruction successful, exit code 0 [2022-04-08 06:11:32,516 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 44 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable42 [2022-04-08 06:11:32,516 INFO L403 AbstractCegarLoop]: === Iteration 44 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:11:32,517 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:11:32,517 INFO L85 PathProgramCache]: Analyzing trace with hash 1255136270, now seen corresponding path program 17 times [2022-04-08 06:11:32,517 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:11:32,517 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1153769079] [2022-04-08 06:11:32,517 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:11:32,517 INFO L85 PathProgramCache]: Analyzing trace with hash 1255136270, now seen corresponding path program 18 times [2022-04-08 06:11:32,517 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:11:32,518 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1541559010] [2022-04-08 06:11:32,518 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:11:32,518 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:11:32,529 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:11:32,529 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [566019016] [2022-04-08 06:11:32,529 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:11:32,529 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:11:32,530 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:11:32,530 INFO L229 MonitoredProcess]: Starting monitored process 45 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:11:32,531 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (45)] Waiting until timeout for monitored process [2022-04-08 06:11:32,712 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2022-04-08 06:11:32,712 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:11:32,714 INFO L263 TraceCheckSpWp]: Trace formula consists of 322 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-08 06:11:32,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:11:32,738 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:11:33,342 INFO L272 TraceCheckUtils]: 0: Hoare triple {109827#true} call ULTIMATE.init(); {109827#true} is VALID [2022-04-08 06:11:33,343 INFO L290 TraceCheckUtils]: 1: Hoare triple {109827#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,344 INFO L290 TraceCheckUtils]: 2: Hoare triple {109835#(<= ~counter~0 0)} assume true; {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,344 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {109835#(<= ~counter~0 0)} {109827#true} #102#return; {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,344 INFO L272 TraceCheckUtils]: 4: Hoare triple {109835#(<= ~counter~0 0)} call #t~ret9 := main(); {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,345 INFO L290 TraceCheckUtils]: 5: Hoare triple {109835#(<= ~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; {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,345 INFO L272 TraceCheckUtils]: 6: Hoare triple {109835#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,345 INFO L290 TraceCheckUtils]: 7: Hoare triple {109835#(<= ~counter~0 0)} ~cond := #in~cond; {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,346 INFO L290 TraceCheckUtils]: 8: Hoare triple {109835#(<= ~counter~0 0)} assume !(0 == ~cond); {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,346 INFO L290 TraceCheckUtils]: 9: Hoare triple {109835#(<= ~counter~0 0)} assume true; {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,346 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {109835#(<= ~counter~0 0)} {109835#(<= ~counter~0 0)} #90#return; {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,347 INFO L272 TraceCheckUtils]: 11: Hoare triple {109835#(<= ~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)); {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,347 INFO L290 TraceCheckUtils]: 12: Hoare triple {109835#(<= ~counter~0 0)} ~cond := #in~cond; {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,347 INFO L290 TraceCheckUtils]: 13: Hoare triple {109835#(<= ~counter~0 0)} assume !(0 == ~cond); {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,348 INFO L290 TraceCheckUtils]: 14: Hoare triple {109835#(<= ~counter~0 0)} assume true; {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,348 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {109835#(<= ~counter~0 0)} {109835#(<= ~counter~0 0)} #92#return; {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,348 INFO L290 TraceCheckUtils]: 16: Hoare triple {109835#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {109835#(<= ~counter~0 0)} is VALID [2022-04-08 06:11:33,351 INFO L290 TraceCheckUtils]: 17: Hoare triple {109835#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {109884#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:33,351 INFO L290 TraceCheckUtils]: 18: Hoare triple {109884#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {109884#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:33,352 INFO L272 TraceCheckUtils]: 19: Hoare triple {109884#(<= ~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)); {109884#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:33,352 INFO L290 TraceCheckUtils]: 20: Hoare triple {109884#(<= ~counter~0 1)} ~cond := #in~cond; {109884#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:33,352 INFO L290 TraceCheckUtils]: 21: Hoare triple {109884#(<= ~counter~0 1)} assume !(0 == ~cond); {109884#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:33,353 INFO L290 TraceCheckUtils]: 22: Hoare triple {109884#(<= ~counter~0 1)} assume true; {109884#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:33,353 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {109884#(<= ~counter~0 1)} {109884#(<= ~counter~0 1)} #94#return; {109884#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:33,353 INFO L290 TraceCheckUtils]: 24: Hoare triple {109884#(<= ~counter~0 1)} assume !!(0 != ~r~0); {109884#(<= ~counter~0 1)} is VALID [2022-04-08 06:11:33,355 INFO L290 TraceCheckUtils]: 25: Hoare triple {109884#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {109909#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:33,356 INFO L290 TraceCheckUtils]: 26: Hoare triple {109909#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {109909#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:33,356 INFO L272 TraceCheckUtils]: 27: Hoare triple {109909#(<= ~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)); {109909#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:33,357 INFO L290 TraceCheckUtils]: 28: Hoare triple {109909#(<= ~counter~0 2)} ~cond := #in~cond; {109909#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:33,357 INFO L290 TraceCheckUtils]: 29: Hoare triple {109909#(<= ~counter~0 2)} assume !(0 == ~cond); {109909#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:33,357 INFO L290 TraceCheckUtils]: 30: Hoare triple {109909#(<= ~counter~0 2)} assume true; {109909#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:33,358 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {109909#(<= ~counter~0 2)} {109909#(<= ~counter~0 2)} #96#return; {109909#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:33,358 INFO L290 TraceCheckUtils]: 32: Hoare triple {109909#(<= ~counter~0 2)} assume !(~r~0 > 0); {109909#(<= ~counter~0 2)} is VALID [2022-04-08 06:11:33,360 INFO L290 TraceCheckUtils]: 33: Hoare triple {109909#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {109934#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:33,360 INFO L290 TraceCheckUtils]: 34: Hoare triple {109934#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {109934#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:33,361 INFO L272 TraceCheckUtils]: 35: Hoare triple {109934#(<= ~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)); {109934#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:33,361 INFO L290 TraceCheckUtils]: 36: Hoare triple {109934#(<= ~counter~0 3)} ~cond := #in~cond; {109934#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:33,361 INFO L290 TraceCheckUtils]: 37: Hoare triple {109934#(<= ~counter~0 3)} assume !(0 == ~cond); {109934#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:33,362 INFO L290 TraceCheckUtils]: 38: Hoare triple {109934#(<= ~counter~0 3)} assume true; {109934#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:33,362 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {109934#(<= ~counter~0 3)} {109934#(<= ~counter~0 3)} #98#return; {109934#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:33,362 INFO L290 TraceCheckUtils]: 40: Hoare triple {109934#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {109934#(<= ~counter~0 3)} is VALID [2022-04-08 06:11:33,365 INFO L290 TraceCheckUtils]: 41: Hoare triple {109934#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {109959#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:33,365 INFO L290 TraceCheckUtils]: 42: Hoare triple {109959#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {109959#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:33,366 INFO L272 TraceCheckUtils]: 43: Hoare triple {109959#(<= ~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)); {109959#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:33,366 INFO L290 TraceCheckUtils]: 44: Hoare triple {109959#(<= ~counter~0 4)} ~cond := #in~cond; {109959#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:33,366 INFO L290 TraceCheckUtils]: 45: Hoare triple {109959#(<= ~counter~0 4)} assume !(0 == ~cond); {109959#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:33,366 INFO L290 TraceCheckUtils]: 46: Hoare triple {109959#(<= ~counter~0 4)} assume true; {109959#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:33,367 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {109959#(<= ~counter~0 4)} {109959#(<= ~counter~0 4)} #98#return; {109959#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:33,367 INFO L290 TraceCheckUtils]: 48: Hoare triple {109959#(<= ~counter~0 4)} assume !(~r~0 < 0); {109959#(<= ~counter~0 4)} is VALID [2022-04-08 06:11:33,369 INFO L290 TraceCheckUtils]: 49: Hoare triple {109959#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {109984#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:33,370 INFO L290 TraceCheckUtils]: 50: Hoare triple {109984#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {109984#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:33,370 INFO L272 TraceCheckUtils]: 51: Hoare triple {109984#(<= ~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)); {109984#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:33,371 INFO L290 TraceCheckUtils]: 52: Hoare triple {109984#(<= ~counter~0 5)} ~cond := #in~cond; {109984#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:33,371 INFO L290 TraceCheckUtils]: 53: Hoare triple {109984#(<= ~counter~0 5)} assume !(0 == ~cond); {109984#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:33,377 INFO L290 TraceCheckUtils]: 54: Hoare triple {109984#(<= ~counter~0 5)} assume true; {109984#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:33,378 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {109984#(<= ~counter~0 5)} {109984#(<= ~counter~0 5)} #94#return; {109984#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:33,378 INFO L290 TraceCheckUtils]: 56: Hoare triple {109984#(<= ~counter~0 5)} assume !!(0 != ~r~0); {109984#(<= ~counter~0 5)} is VALID [2022-04-08 06:11:33,381 INFO L290 TraceCheckUtils]: 57: Hoare triple {109984#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:33,381 INFO L290 TraceCheckUtils]: 58: Hoare triple {110009#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:33,382 INFO L272 TraceCheckUtils]: 59: Hoare triple {110009#(<= ~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)); {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:33,382 INFO L290 TraceCheckUtils]: 60: Hoare triple {110009#(<= ~counter~0 6)} ~cond := #in~cond; {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:33,383 INFO L290 TraceCheckUtils]: 61: Hoare triple {110009#(<= ~counter~0 6)} assume !(0 == ~cond); {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:33,383 INFO L290 TraceCheckUtils]: 62: Hoare triple {110009#(<= ~counter~0 6)} assume true; {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:33,383 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {110009#(<= ~counter~0 6)} {110009#(<= ~counter~0 6)} #96#return; {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:33,384 INFO L290 TraceCheckUtils]: 64: Hoare triple {110009#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:33,385 INFO L290 TraceCheckUtils]: 65: Hoare triple {110009#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110034#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:33,386 INFO L290 TraceCheckUtils]: 66: Hoare triple {110034#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {110034#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:33,386 INFO L272 TraceCheckUtils]: 67: Hoare triple {110034#(<= ~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)); {110034#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:33,387 INFO L290 TraceCheckUtils]: 68: Hoare triple {110034#(<= ~counter~0 7)} ~cond := #in~cond; {110034#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:33,387 INFO L290 TraceCheckUtils]: 69: Hoare triple {110034#(<= ~counter~0 7)} assume !(0 == ~cond); {110034#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:33,387 INFO L290 TraceCheckUtils]: 70: Hoare triple {110034#(<= ~counter~0 7)} assume true; {110034#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:33,388 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {110034#(<= ~counter~0 7)} {110034#(<= ~counter~0 7)} #96#return; {110034#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:33,388 INFO L290 TraceCheckUtils]: 72: Hoare triple {110034#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110034#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:33,390 INFO L290 TraceCheckUtils]: 73: Hoare triple {110034#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110059#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:33,390 INFO L290 TraceCheckUtils]: 74: Hoare triple {110059#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {110059#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:33,391 INFO L272 TraceCheckUtils]: 75: Hoare triple {110059#(<= ~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)); {110059#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:33,391 INFO L290 TraceCheckUtils]: 76: Hoare triple {110059#(<= ~counter~0 8)} ~cond := #in~cond; {110059#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:33,391 INFO L290 TraceCheckUtils]: 77: Hoare triple {110059#(<= ~counter~0 8)} assume !(0 == ~cond); {110059#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:33,392 INFO L290 TraceCheckUtils]: 78: Hoare triple {110059#(<= ~counter~0 8)} assume true; {110059#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:33,392 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {110059#(<= ~counter~0 8)} {110059#(<= ~counter~0 8)} #96#return; {110059#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:33,393 INFO L290 TraceCheckUtils]: 80: Hoare triple {110059#(<= ~counter~0 8)} assume !(~r~0 > 0); {110059#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:33,395 INFO L290 TraceCheckUtils]: 81: Hoare triple {110059#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110084#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:33,395 INFO L290 TraceCheckUtils]: 82: Hoare triple {110084#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {110084#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:33,396 INFO L272 TraceCheckUtils]: 83: Hoare triple {110084#(<= ~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)); {110084#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:33,396 INFO L290 TraceCheckUtils]: 84: Hoare triple {110084#(<= ~counter~0 9)} ~cond := #in~cond; {110084#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:33,396 INFO L290 TraceCheckUtils]: 85: Hoare triple {110084#(<= ~counter~0 9)} assume !(0 == ~cond); {110084#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:33,397 INFO L290 TraceCheckUtils]: 86: Hoare triple {110084#(<= ~counter~0 9)} assume true; {110084#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:33,397 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {110084#(<= ~counter~0 9)} {110084#(<= ~counter~0 9)} #98#return; {110084#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:33,398 INFO L290 TraceCheckUtils]: 88: Hoare triple {110084#(<= ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {110084#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:33,400 INFO L290 TraceCheckUtils]: 89: Hoare triple {110084#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110109#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:33,400 INFO L290 TraceCheckUtils]: 90: Hoare triple {110109#(<= ~counter~0 10)} assume !!(#t~post8 < 20);havoc #t~post8; {110109#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:33,401 INFO L272 TraceCheckUtils]: 91: Hoare triple {110109#(<= ~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)); {110109#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:33,401 INFO L290 TraceCheckUtils]: 92: Hoare triple {110109#(<= ~counter~0 10)} ~cond := #in~cond; {110109#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:33,401 INFO L290 TraceCheckUtils]: 93: Hoare triple {110109#(<= ~counter~0 10)} assume !(0 == ~cond); {110109#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:33,401 INFO L290 TraceCheckUtils]: 94: Hoare triple {110109#(<= ~counter~0 10)} assume true; {110109#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:33,402 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {110109#(<= ~counter~0 10)} {110109#(<= ~counter~0 10)} #98#return; {110109#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:33,402 INFO L290 TraceCheckUtils]: 96: Hoare triple {110109#(<= ~counter~0 10)} assume !(~r~0 < 0); {110109#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:33,404 INFO L290 TraceCheckUtils]: 97: Hoare triple {110109#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110134#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:33,405 INFO L290 TraceCheckUtils]: 98: Hoare triple {110134#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {110134#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:33,405 INFO L272 TraceCheckUtils]: 99: Hoare triple {110134#(<= ~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)); {110134#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:33,406 INFO L290 TraceCheckUtils]: 100: Hoare triple {110134#(<= ~counter~0 11)} ~cond := #in~cond; {110134#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:33,406 INFO L290 TraceCheckUtils]: 101: Hoare triple {110134#(<= ~counter~0 11)} assume !(0 == ~cond); {110134#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:33,406 INFO L290 TraceCheckUtils]: 102: Hoare triple {110134#(<= ~counter~0 11)} assume true; {110134#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:33,407 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {110134#(<= ~counter~0 11)} {110134#(<= ~counter~0 11)} #94#return; {110134#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:33,407 INFO L290 TraceCheckUtils]: 104: Hoare triple {110134#(<= ~counter~0 11)} assume !!(0 != ~r~0); {110134#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:33,409 INFO L290 TraceCheckUtils]: 105: Hoare triple {110134#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110159#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:33,409 INFO L290 TraceCheckUtils]: 106: Hoare triple {110159#(<= ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {110159#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:33,410 INFO L272 TraceCheckUtils]: 107: Hoare triple {110159#(<= ~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)); {110159#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:33,410 INFO L290 TraceCheckUtils]: 108: Hoare triple {110159#(<= ~counter~0 12)} ~cond := #in~cond; {110159#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:33,411 INFO L290 TraceCheckUtils]: 109: Hoare triple {110159#(<= ~counter~0 12)} assume !(0 == ~cond); {110159#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:33,411 INFO L290 TraceCheckUtils]: 110: Hoare triple {110159#(<= ~counter~0 12)} assume true; {110159#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:33,411 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {110159#(<= ~counter~0 12)} {110159#(<= ~counter~0 12)} #96#return; {110159#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:33,412 INFO L290 TraceCheckUtils]: 112: Hoare triple {110159#(<= ~counter~0 12)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110159#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:33,414 INFO L290 TraceCheckUtils]: 113: Hoare triple {110159#(<= ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110184#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:33,414 INFO L290 TraceCheckUtils]: 114: Hoare triple {110184#(<= ~counter~0 13)} assume !!(#t~post7 < 20);havoc #t~post7; {110184#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:33,414 INFO L272 TraceCheckUtils]: 115: Hoare triple {110184#(<= ~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)); {110184#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:33,415 INFO L290 TraceCheckUtils]: 116: Hoare triple {110184#(<= ~counter~0 13)} ~cond := #in~cond; {110184#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:33,415 INFO L290 TraceCheckUtils]: 117: Hoare triple {110184#(<= ~counter~0 13)} assume !(0 == ~cond); {110184#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:33,415 INFO L290 TraceCheckUtils]: 118: Hoare triple {110184#(<= ~counter~0 13)} assume true; {110184#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:33,416 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {110184#(<= ~counter~0 13)} {110184#(<= ~counter~0 13)} #96#return; {110184#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:33,416 INFO L290 TraceCheckUtils]: 120: Hoare triple {110184#(<= ~counter~0 13)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110184#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:33,416 INFO L290 TraceCheckUtils]: 121: Hoare triple {110184#(<= ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110209#(<= |main_#t~post7| 13)} is VALID [2022-04-08 06:11:33,417 INFO L290 TraceCheckUtils]: 122: Hoare triple {110209#(<= |main_#t~post7| 13)} assume !(#t~post7 < 20);havoc #t~post7; {109828#false} is VALID [2022-04-08 06:11:33,417 INFO L290 TraceCheckUtils]: 123: Hoare triple {109828#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {109828#false} is VALID [2022-04-08 06:11:33,417 INFO L290 TraceCheckUtils]: 124: Hoare triple {109828#false} assume !(#t~post8 < 20);havoc #t~post8; {109828#false} is VALID [2022-04-08 06:11:33,417 INFO L290 TraceCheckUtils]: 125: Hoare triple {109828#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {109828#false} is VALID [2022-04-08 06:11:33,417 INFO L290 TraceCheckUtils]: 126: Hoare triple {109828#false} assume !(#t~post6 < 20);havoc #t~post6; {109828#false} is VALID [2022-04-08 06:11:33,417 INFO L272 TraceCheckUtils]: 127: Hoare triple {109828#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)); {109828#false} is VALID [2022-04-08 06:11:33,417 INFO L290 TraceCheckUtils]: 128: Hoare triple {109828#false} ~cond := #in~cond; {109828#false} is VALID [2022-04-08 06:11:33,417 INFO L290 TraceCheckUtils]: 129: Hoare triple {109828#false} assume 0 == ~cond; {109828#false} is VALID [2022-04-08 06:11:33,417 INFO L290 TraceCheckUtils]: 130: Hoare triple {109828#false} assume !false; {109828#false} is VALID [2022-04-08 06:11:33,418 INFO L134 CoverageAnalysis]: Checked inductivity of 464 backedges. 40 proven. 420 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:11:33,418 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:11:34,030 INFO L290 TraceCheckUtils]: 130: Hoare triple {109828#false} assume !false; {109828#false} is VALID [2022-04-08 06:11:34,030 INFO L290 TraceCheckUtils]: 129: Hoare triple {109828#false} assume 0 == ~cond; {109828#false} is VALID [2022-04-08 06:11:34,031 INFO L290 TraceCheckUtils]: 128: Hoare triple {109828#false} ~cond := #in~cond; {109828#false} is VALID [2022-04-08 06:11:34,031 INFO L272 TraceCheckUtils]: 127: Hoare triple {109828#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)); {109828#false} is VALID [2022-04-08 06:11:34,031 INFO L290 TraceCheckUtils]: 126: Hoare triple {109828#false} assume !(#t~post6 < 20);havoc #t~post6; {109828#false} is VALID [2022-04-08 06:11:34,031 INFO L290 TraceCheckUtils]: 125: Hoare triple {109828#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {109828#false} is VALID [2022-04-08 06:11:34,031 INFO L290 TraceCheckUtils]: 124: Hoare triple {109828#false} assume !(#t~post8 < 20);havoc #t~post8; {109828#false} is VALID [2022-04-08 06:11:34,031 INFO L290 TraceCheckUtils]: 123: Hoare triple {109828#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {109828#false} is VALID [2022-04-08 06:11:34,031 INFO L290 TraceCheckUtils]: 122: Hoare triple {110261#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {109828#false} is VALID [2022-04-08 06:11:34,031 INFO L290 TraceCheckUtils]: 121: Hoare triple {110265#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110261#(< |main_#t~post7| 20)} is VALID [2022-04-08 06:11:34,032 INFO L290 TraceCheckUtils]: 120: Hoare triple {110265#(< ~counter~0 20)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110265#(< ~counter~0 20)} is VALID [2022-04-08 06:11:34,032 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {109827#true} {110265#(< ~counter~0 20)} #96#return; {110265#(< ~counter~0 20)} is VALID [2022-04-08 06:11:34,032 INFO L290 TraceCheckUtils]: 118: Hoare triple {109827#true} assume true; {109827#true} is VALID [2022-04-08 06:11:34,032 INFO L290 TraceCheckUtils]: 117: Hoare triple {109827#true} assume !(0 == ~cond); {109827#true} is VALID [2022-04-08 06:11:34,033 INFO L290 TraceCheckUtils]: 116: Hoare triple {109827#true} ~cond := #in~cond; {109827#true} is VALID [2022-04-08 06:11:34,033 INFO L272 TraceCheckUtils]: 115: Hoare triple {110265#(< ~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)); {109827#true} is VALID [2022-04-08 06:11:34,033 INFO L290 TraceCheckUtils]: 114: Hoare triple {110265#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {110265#(< ~counter~0 20)} is VALID [2022-04-08 06:11:34,035 INFO L290 TraceCheckUtils]: 113: Hoare triple {110290#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110265#(< ~counter~0 20)} is VALID [2022-04-08 06:11:34,035 INFO L290 TraceCheckUtils]: 112: Hoare triple {110290#(< ~counter~0 19)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110290#(< ~counter~0 19)} is VALID [2022-04-08 06:11:34,036 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {109827#true} {110290#(< ~counter~0 19)} #96#return; {110290#(< ~counter~0 19)} is VALID [2022-04-08 06:11:34,036 INFO L290 TraceCheckUtils]: 110: Hoare triple {109827#true} assume true; {109827#true} is VALID [2022-04-08 06:11:34,036 INFO L290 TraceCheckUtils]: 109: Hoare triple {109827#true} assume !(0 == ~cond); {109827#true} is VALID [2022-04-08 06:11:34,036 INFO L290 TraceCheckUtils]: 108: Hoare triple {109827#true} ~cond := #in~cond; {109827#true} is VALID [2022-04-08 06:11:34,036 INFO L272 TraceCheckUtils]: 107: Hoare triple {110290#(< ~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)); {109827#true} is VALID [2022-04-08 06:11:34,036 INFO L290 TraceCheckUtils]: 106: Hoare triple {110290#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {110290#(< ~counter~0 19)} is VALID [2022-04-08 06:11:34,037 INFO L290 TraceCheckUtils]: 105: Hoare triple {110315#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110290#(< ~counter~0 19)} is VALID [2022-04-08 06:11:34,038 INFO L290 TraceCheckUtils]: 104: Hoare triple {110315#(< ~counter~0 18)} assume !!(0 != ~r~0); {110315#(< ~counter~0 18)} is VALID [2022-04-08 06:11:34,038 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {109827#true} {110315#(< ~counter~0 18)} #94#return; {110315#(< ~counter~0 18)} is VALID [2022-04-08 06:11:34,038 INFO L290 TraceCheckUtils]: 102: Hoare triple {109827#true} assume true; {109827#true} is VALID [2022-04-08 06:11:34,038 INFO L290 TraceCheckUtils]: 101: Hoare triple {109827#true} assume !(0 == ~cond); {109827#true} is VALID [2022-04-08 06:11:34,038 INFO L290 TraceCheckUtils]: 100: Hoare triple {109827#true} ~cond := #in~cond; {109827#true} is VALID [2022-04-08 06:11:34,038 INFO L272 TraceCheckUtils]: 99: Hoare triple {110315#(< ~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)); {109827#true} is VALID [2022-04-08 06:11:34,039 INFO L290 TraceCheckUtils]: 98: Hoare triple {110315#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {110315#(< ~counter~0 18)} is VALID [2022-04-08 06:11:34,039 INFO L290 TraceCheckUtils]: 97: Hoare triple {110340#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110315#(< ~counter~0 18)} is VALID [2022-04-08 06:11:34,040 INFO L290 TraceCheckUtils]: 96: Hoare triple {110340#(< ~counter~0 17)} assume !(~r~0 < 0); {110340#(< ~counter~0 17)} is VALID [2022-04-08 06:11:34,040 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {109827#true} {110340#(< ~counter~0 17)} #98#return; {110340#(< ~counter~0 17)} is VALID [2022-04-08 06:11:34,040 INFO L290 TraceCheckUtils]: 94: Hoare triple {109827#true} assume true; {109827#true} is VALID [2022-04-08 06:11:34,040 INFO L290 TraceCheckUtils]: 93: Hoare triple {109827#true} assume !(0 == ~cond); {109827#true} is VALID [2022-04-08 06:11:34,040 INFO L290 TraceCheckUtils]: 92: Hoare triple {109827#true} ~cond := #in~cond; {109827#true} is VALID [2022-04-08 06:11:34,040 INFO L272 TraceCheckUtils]: 91: Hoare triple {110340#(< ~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)); {109827#true} is VALID [2022-04-08 06:11:34,041 INFO L290 TraceCheckUtils]: 90: Hoare triple {110340#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {110340#(< ~counter~0 17)} is VALID [2022-04-08 06:11:34,042 INFO L290 TraceCheckUtils]: 89: Hoare triple {110365#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110340#(< ~counter~0 17)} is VALID [2022-04-08 06:11:34,042 INFO L290 TraceCheckUtils]: 88: Hoare triple {110365#(< ~counter~0 16)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {110365#(< ~counter~0 16)} is VALID [2022-04-08 06:11:34,042 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {109827#true} {110365#(< ~counter~0 16)} #98#return; {110365#(< ~counter~0 16)} is VALID [2022-04-08 06:11:34,043 INFO L290 TraceCheckUtils]: 86: Hoare triple {109827#true} assume true; {109827#true} is VALID [2022-04-08 06:11:34,043 INFO L290 TraceCheckUtils]: 85: Hoare triple {109827#true} assume !(0 == ~cond); {109827#true} is VALID [2022-04-08 06:11:34,043 INFO L290 TraceCheckUtils]: 84: Hoare triple {109827#true} ~cond := #in~cond; {109827#true} is VALID [2022-04-08 06:11:34,043 INFO L272 TraceCheckUtils]: 83: Hoare triple {110365#(< ~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)); {109827#true} is VALID [2022-04-08 06:11:34,043 INFO L290 TraceCheckUtils]: 82: Hoare triple {110365#(< ~counter~0 16)} assume !!(#t~post8 < 20);havoc #t~post8; {110365#(< ~counter~0 16)} is VALID [2022-04-08 06:11:34,044 INFO L290 TraceCheckUtils]: 81: Hoare triple {110390#(< ~counter~0 15)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110365#(< ~counter~0 16)} is VALID [2022-04-08 06:11:34,044 INFO L290 TraceCheckUtils]: 80: Hoare triple {110390#(< ~counter~0 15)} assume !(~r~0 > 0); {110390#(< ~counter~0 15)} is VALID [2022-04-08 06:11:34,045 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {109827#true} {110390#(< ~counter~0 15)} #96#return; {110390#(< ~counter~0 15)} is VALID [2022-04-08 06:11:34,045 INFO L290 TraceCheckUtils]: 78: Hoare triple {109827#true} assume true; {109827#true} is VALID [2022-04-08 06:11:34,045 INFO L290 TraceCheckUtils]: 77: Hoare triple {109827#true} assume !(0 == ~cond); {109827#true} is VALID [2022-04-08 06:11:34,045 INFO L290 TraceCheckUtils]: 76: Hoare triple {109827#true} ~cond := #in~cond; {109827#true} is VALID [2022-04-08 06:11:34,045 INFO L272 TraceCheckUtils]: 75: Hoare triple {110390#(< ~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)); {109827#true} is VALID [2022-04-08 06:11:34,045 INFO L290 TraceCheckUtils]: 74: Hoare triple {110390#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {110390#(< ~counter~0 15)} is VALID [2022-04-08 06:11:34,046 INFO L290 TraceCheckUtils]: 73: Hoare triple {110184#(<= ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110390#(< ~counter~0 15)} is VALID [2022-04-08 06:11:34,046 INFO L290 TraceCheckUtils]: 72: Hoare triple {110184#(<= ~counter~0 13)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110184#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:34,047 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {109827#true} {110184#(<= ~counter~0 13)} #96#return; {110184#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:34,047 INFO L290 TraceCheckUtils]: 70: Hoare triple {109827#true} assume true; {109827#true} is VALID [2022-04-08 06:11:34,047 INFO L290 TraceCheckUtils]: 69: Hoare triple {109827#true} assume !(0 == ~cond); {109827#true} is VALID [2022-04-08 06:11:34,047 INFO L290 TraceCheckUtils]: 68: Hoare triple {109827#true} ~cond := #in~cond; {109827#true} is VALID [2022-04-08 06:11:34,047 INFO L272 TraceCheckUtils]: 67: Hoare triple {110184#(<= ~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)); {109827#true} is VALID [2022-04-08 06:11:34,047 INFO L290 TraceCheckUtils]: 66: Hoare triple {110184#(<= ~counter~0 13)} assume !!(#t~post7 < 20);havoc #t~post7; {110184#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:34,048 INFO L290 TraceCheckUtils]: 65: Hoare triple {110159#(<= ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110184#(<= ~counter~0 13)} is VALID [2022-04-08 06:11:34,049 INFO L290 TraceCheckUtils]: 64: Hoare triple {110159#(<= ~counter~0 12)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110159#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:34,049 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {109827#true} {110159#(<= ~counter~0 12)} #96#return; {110159#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:34,049 INFO L290 TraceCheckUtils]: 62: Hoare triple {109827#true} assume true; {109827#true} is VALID [2022-04-08 06:11:34,049 INFO L290 TraceCheckUtils]: 61: Hoare triple {109827#true} assume !(0 == ~cond); {109827#true} is VALID [2022-04-08 06:11:34,049 INFO L290 TraceCheckUtils]: 60: Hoare triple {109827#true} ~cond := #in~cond; {109827#true} is VALID [2022-04-08 06:11:34,049 INFO L272 TraceCheckUtils]: 59: Hoare triple {110159#(<= ~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)); {109827#true} is VALID [2022-04-08 06:11:34,050 INFO L290 TraceCheckUtils]: 58: Hoare triple {110159#(<= ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {110159#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:34,051 INFO L290 TraceCheckUtils]: 57: Hoare triple {110134#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110159#(<= ~counter~0 12)} is VALID [2022-04-08 06:11:34,051 INFO L290 TraceCheckUtils]: 56: Hoare triple {110134#(<= ~counter~0 11)} assume !!(0 != ~r~0); {110134#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:34,051 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {109827#true} {110134#(<= ~counter~0 11)} #94#return; {110134#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:34,051 INFO L290 TraceCheckUtils]: 54: Hoare triple {109827#true} assume true; {109827#true} is VALID [2022-04-08 06:11:34,051 INFO L290 TraceCheckUtils]: 53: Hoare triple {109827#true} assume !(0 == ~cond); {109827#true} is VALID [2022-04-08 06:11:34,052 INFO L290 TraceCheckUtils]: 52: Hoare triple {109827#true} ~cond := #in~cond; {109827#true} is VALID [2022-04-08 06:11:34,052 INFO L272 TraceCheckUtils]: 51: Hoare triple {110134#(<= ~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)); {109827#true} is VALID [2022-04-08 06:11:34,052 INFO L290 TraceCheckUtils]: 50: Hoare triple {110134#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {110134#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:34,053 INFO L290 TraceCheckUtils]: 49: Hoare triple {110109#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110134#(<= ~counter~0 11)} is VALID [2022-04-08 06:11:34,053 INFO L290 TraceCheckUtils]: 48: Hoare triple {110109#(<= ~counter~0 10)} assume !(~r~0 < 0); {110109#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:34,053 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {109827#true} {110109#(<= ~counter~0 10)} #98#return; {110109#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:34,054 INFO L290 TraceCheckUtils]: 46: Hoare triple {109827#true} assume true; {109827#true} is VALID [2022-04-08 06:11:34,054 INFO L290 TraceCheckUtils]: 45: Hoare triple {109827#true} assume !(0 == ~cond); {109827#true} is VALID [2022-04-08 06:11:34,054 INFO L290 TraceCheckUtils]: 44: Hoare triple {109827#true} ~cond := #in~cond; {109827#true} is VALID [2022-04-08 06:11:34,054 INFO L272 TraceCheckUtils]: 43: Hoare triple {110109#(<= ~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)); {109827#true} is VALID [2022-04-08 06:11:34,054 INFO L290 TraceCheckUtils]: 42: Hoare triple {110109#(<= ~counter~0 10)} assume !!(#t~post8 < 20);havoc #t~post8; {110109#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:34,055 INFO L290 TraceCheckUtils]: 41: Hoare triple {110084#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110109#(<= ~counter~0 10)} is VALID [2022-04-08 06:11:34,055 INFO L290 TraceCheckUtils]: 40: Hoare triple {110084#(<= ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {110084#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:34,056 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {109827#true} {110084#(<= ~counter~0 9)} #98#return; {110084#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:34,056 INFO L290 TraceCheckUtils]: 38: Hoare triple {109827#true} assume true; {109827#true} is VALID [2022-04-08 06:11:34,056 INFO L290 TraceCheckUtils]: 37: Hoare triple {109827#true} assume !(0 == ~cond); {109827#true} is VALID [2022-04-08 06:11:34,056 INFO L290 TraceCheckUtils]: 36: Hoare triple {109827#true} ~cond := #in~cond; {109827#true} is VALID [2022-04-08 06:11:34,056 INFO L272 TraceCheckUtils]: 35: Hoare triple {110084#(<= ~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)); {109827#true} is VALID [2022-04-08 06:11:34,056 INFO L290 TraceCheckUtils]: 34: Hoare triple {110084#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {110084#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:34,057 INFO L290 TraceCheckUtils]: 33: Hoare triple {110059#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110084#(<= ~counter~0 9)} is VALID [2022-04-08 06:11:34,057 INFO L290 TraceCheckUtils]: 32: Hoare triple {110059#(<= ~counter~0 8)} assume !(~r~0 > 0); {110059#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:34,058 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {109827#true} {110059#(<= ~counter~0 8)} #96#return; {110059#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:34,058 INFO L290 TraceCheckUtils]: 30: Hoare triple {109827#true} assume true; {109827#true} is VALID [2022-04-08 06:11:34,058 INFO L290 TraceCheckUtils]: 29: Hoare triple {109827#true} assume !(0 == ~cond); {109827#true} is VALID [2022-04-08 06:11:34,058 INFO L290 TraceCheckUtils]: 28: Hoare triple {109827#true} ~cond := #in~cond; {109827#true} is VALID [2022-04-08 06:11:34,058 INFO L272 TraceCheckUtils]: 27: Hoare triple {110059#(<= ~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)); {109827#true} is VALID [2022-04-08 06:11:34,058 INFO L290 TraceCheckUtils]: 26: Hoare triple {110059#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {110059#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:34,059 INFO L290 TraceCheckUtils]: 25: Hoare triple {110034#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110059#(<= ~counter~0 8)} is VALID [2022-04-08 06:11:34,060 INFO L290 TraceCheckUtils]: 24: Hoare triple {110034#(<= ~counter~0 7)} assume !!(0 != ~r~0); {110034#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:34,060 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {109827#true} {110034#(<= ~counter~0 7)} #94#return; {110034#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:34,060 INFO L290 TraceCheckUtils]: 22: Hoare triple {109827#true} assume true; {109827#true} is VALID [2022-04-08 06:11:34,060 INFO L290 TraceCheckUtils]: 21: Hoare triple {109827#true} assume !(0 == ~cond); {109827#true} is VALID [2022-04-08 06:11:34,060 INFO L290 TraceCheckUtils]: 20: Hoare triple {109827#true} ~cond := #in~cond; {109827#true} is VALID [2022-04-08 06:11:34,060 INFO L272 TraceCheckUtils]: 19: Hoare triple {110034#(<= ~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)); {109827#true} is VALID [2022-04-08 06:11:34,061 INFO L290 TraceCheckUtils]: 18: Hoare triple {110034#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {110034#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:34,062 INFO L290 TraceCheckUtils]: 17: Hoare triple {110009#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110034#(<= ~counter~0 7)} is VALID [2022-04-08 06:11:34,062 INFO L290 TraceCheckUtils]: 16: Hoare triple {110009#(<= ~counter~0 6)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:34,062 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {109827#true} {110009#(<= ~counter~0 6)} #92#return; {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:34,062 INFO L290 TraceCheckUtils]: 14: Hoare triple {109827#true} assume true; {109827#true} is VALID [2022-04-08 06:11:34,062 INFO L290 TraceCheckUtils]: 13: Hoare triple {109827#true} assume !(0 == ~cond); {109827#true} is VALID [2022-04-08 06:11:34,062 INFO L290 TraceCheckUtils]: 12: Hoare triple {109827#true} ~cond := #in~cond; {109827#true} is VALID [2022-04-08 06:11:34,063 INFO L272 TraceCheckUtils]: 11: Hoare triple {110009#(<= ~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)); {109827#true} is VALID [2022-04-08 06:11:34,063 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {109827#true} {110009#(<= ~counter~0 6)} #90#return; {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:34,063 INFO L290 TraceCheckUtils]: 9: Hoare triple {109827#true} assume true; {109827#true} is VALID [2022-04-08 06:11:34,063 INFO L290 TraceCheckUtils]: 8: Hoare triple {109827#true} assume !(0 == ~cond); {109827#true} is VALID [2022-04-08 06:11:34,063 INFO L290 TraceCheckUtils]: 7: Hoare triple {109827#true} ~cond := #in~cond; {109827#true} is VALID [2022-04-08 06:11:34,063 INFO L272 TraceCheckUtils]: 6: Hoare triple {110009#(<= ~counter~0 6)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {109827#true} is VALID [2022-04-08 06:11:34,063 INFO L290 TraceCheckUtils]: 5: Hoare triple {110009#(<= ~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; {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:34,064 INFO L272 TraceCheckUtils]: 4: Hoare triple {110009#(<= ~counter~0 6)} call #t~ret9 := main(); {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:34,064 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {110009#(<= ~counter~0 6)} {109827#true} #102#return; {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:34,064 INFO L290 TraceCheckUtils]: 2: Hoare triple {110009#(<= ~counter~0 6)} assume true; {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:34,065 INFO L290 TraceCheckUtils]: 1: Hoare triple {109827#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {110009#(<= ~counter~0 6)} is VALID [2022-04-08 06:11:34,065 INFO L272 TraceCheckUtils]: 0: Hoare triple {109827#true} call ULTIMATE.init(); {109827#true} is VALID [2022-04-08 06:11:34,065 INFO L134 CoverageAnalysis]: Checked inductivity of 464 backedges. 40 proven. 108 refuted. 0 times theorem prover too weak. 316 trivial. 0 not checked. [2022-04-08 06:11:34,065 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:11:34,065 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1541559010] [2022-04-08 06:11:34,065 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:11:34,066 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [566019016] [2022-04-08 06:11:34,066 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [566019016] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:11:34,066 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:11:34,066 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 24 [2022-04-08 06:11:34,066 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:11:34,066 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1153769079] [2022-04-08 06:11:34,066 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1153769079] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:11:34,066 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:11:34,066 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-08 06:11:34,066 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1049235766] [2022-04-08 06:11:34,066 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:11:34,067 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 5.529411764705882) internal successors, (94), 16 states have internal predecessors, (94), 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 131 [2022-04-08 06:11:34,067 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:11:34,067 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 5.529411764705882) internal successors, (94), 16 states have internal predecessors, (94), 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:11:34,205 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:11:34,206 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-08 06:11:34,206 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:11:34,206 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-08 06:11:34,206 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:11:34,206 INFO L87 Difference]: Start difference. First operand 730 states and 966 transitions. Second operand has 17 states, 17 states have (on average 5.529411764705882) internal successors, (94), 16 states have internal predecessors, (94), 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:11:37,671 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:11:37,671 INFO L93 Difference]: Finished difference Result 947 states and 1293 transitions. [2022-04-08 06:11:37,671 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-04-08 06:11:37,671 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 5.529411764705882) internal successors, (94), 16 states have internal predecessors, (94), 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 131 [2022-04-08 06:11:37,671 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:11:37,671 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 5.529411764705882) internal successors, (94), 16 states have internal predecessors, (94), 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:11:37,673 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 296 transitions. [2022-04-08 06:11:37,673 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 5.529411764705882) internal successors, (94), 16 states have internal predecessors, (94), 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:11:37,675 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 296 transitions. [2022-04-08 06:11:37,675 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 296 transitions. [2022-04-08 06:11:37,943 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 296 edges. 296 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:11:37,966 INFO L225 Difference]: With dead ends: 947 [2022-04-08 06:11:37,966 INFO L226 Difference]: Without dead ends: 746 [2022-04-08 06:11:37,967 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 273 GetRequests, 238 SyntacticMatches, 1 SemanticMatches, 34 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 104 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=500, Invalid=760, Unknown=0, NotChecked=0, Total=1260 [2022-04-08 06:11:37,967 INFO L913 BasicCegarLoop]: 69 mSDtfsCounter, 229 mSDsluCounter, 219 mSDsCounter, 0 mSdLazyCounter, 208 mSolverCounterSat, 190 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 229 SdHoareTripleChecker+Valid, 288 SdHoareTripleChecker+Invalid, 398 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 190 IncrementalHoareTripleChecker+Valid, 208 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 06:11:37,967 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [229 Valid, 288 Invalid, 398 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [190 Valid, 208 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 06:11:37,968 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 746 states. [2022-04-08 06:11:40,206 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 746 to 746. [2022-04-08 06:11:40,206 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:11:40,207 INFO L82 GeneralOperation]: Start isEquivalent. First operand 746 states. Second operand has 746 states, 566 states have (on average 1.197879858657244) internal successors, (678), 566 states have internal predecessors, (678), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 151 states have call predecessors, (151), 151 states have call successors, (151) [2022-04-08 06:11:40,208 INFO L74 IsIncluded]: Start isIncluded. First operand 746 states. Second operand has 746 states, 566 states have (on average 1.197879858657244) internal successors, (678), 566 states have internal predecessors, (678), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 151 states have call predecessors, (151), 151 states have call successors, (151) [2022-04-08 06:11:40,208 INFO L87 Difference]: Start difference. First operand 746 states. Second operand has 746 states, 566 states have (on average 1.197879858657244) internal successors, (678), 566 states have internal predecessors, (678), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 151 states have call predecessors, (151), 151 states have call successors, (151) [2022-04-08 06:11:40,227 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:11:40,227 INFO L93 Difference]: Finished difference Result 746 states and 982 transitions. [2022-04-08 06:11:40,227 INFO L276 IsEmpty]: Start isEmpty. Operand 746 states and 982 transitions. [2022-04-08 06:11:40,228 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:11:40,228 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:11:40,229 INFO L74 IsIncluded]: Start isIncluded. First operand has 746 states, 566 states have (on average 1.197879858657244) internal successors, (678), 566 states have internal predecessors, (678), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 151 states have call predecessors, (151), 151 states have call successors, (151) Second operand 746 states. [2022-04-08 06:11:40,229 INFO L87 Difference]: Start difference. First operand has 746 states, 566 states have (on average 1.197879858657244) internal successors, (678), 566 states have internal predecessors, (678), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 151 states have call predecessors, (151), 151 states have call successors, (151) Second operand 746 states. [2022-04-08 06:11:40,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:11:40,248 INFO L93 Difference]: Finished difference Result 746 states and 982 transitions. [2022-04-08 06:11:40,248 INFO L276 IsEmpty]: Start isEmpty. Operand 746 states and 982 transitions. [2022-04-08 06:11:40,249 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:11:40,249 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:11:40,249 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:11:40,249 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:11:40,250 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 746 states, 566 states have (on average 1.197879858657244) internal successors, (678), 566 states have internal predecessors, (678), 153 states have call successors, (153), 28 states have call predecessors, (153), 26 states have return successors, (151), 151 states have call predecessors, (151), 151 states have call successors, (151) [2022-04-08 06:11:40,276 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 746 states to 746 states and 982 transitions. [2022-04-08 06:11:40,276 INFO L78 Accepts]: Start accepts. Automaton has 746 states and 982 transitions. Word has length 131 [2022-04-08 06:11:40,276 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:11:40,276 INFO L478 AbstractCegarLoop]: Abstraction has 746 states and 982 transitions. [2022-04-08 06:11:40,277 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 5.529411764705882) internal successors, (94), 16 states have internal predecessors, (94), 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:11:40,277 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 746 states and 982 transitions. [2022-04-08 06:12:01,011 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 982 edges. 979 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-08 06:12:01,011 INFO L276 IsEmpty]: Start isEmpty. Operand 746 states and 982 transitions. [2022-04-08 06:12:01,012 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 136 [2022-04-08 06:12:01,012 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:12:01,012 INFO L499 BasicCegarLoop]: trace histogram [15, 14, 14, 6, 6, 6, 6, 5, 5, 5, 5, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:12:01,023 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (45)] Ended with exit code 0 [2022-04-08 06:12:01,213 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable43,45 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:12:01,213 INFO L403 AbstractCegarLoop]: === Iteration 45 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:12:01,213 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:12:01,213 INFO L85 PathProgramCache]: Analyzing trace with hash 1252937077, now seen corresponding path program 11 times [2022-04-08 06:12:01,213 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:12:01,213 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [594955368] [2022-04-08 06:12:01,214 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:12:01,214 INFO L85 PathProgramCache]: Analyzing trace with hash 1252937077, now seen corresponding path program 12 times [2022-04-08 06:12:01,214 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:12:01,214 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1056156115] [2022-04-08 06:12:01,214 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:12:01,214 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:12:01,227 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:12:01,227 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1896667258] [2022-04-08 06:12:01,227 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:12:01,227 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:12:01,228 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:12:01,229 INFO L229 MonitoredProcess]: Starting monitored process 46 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:12:01,234 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (46)] Waiting until timeout for monitored process [2022-04-08 06:12:01,318 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 06:12:01,319 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:12:01,320 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-08 06:12:01,336 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:12:01,338 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:12:01,927 INFO L272 TraceCheckUtils]: 0: Hoare triple {115538#true} call ULTIMATE.init(); {115538#true} is VALID [2022-04-08 06:12:01,927 INFO L290 TraceCheckUtils]: 1: Hoare triple {115538#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {115538#true} is VALID [2022-04-08 06:12:01,927 INFO L290 TraceCheckUtils]: 2: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,927 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115538#true} {115538#true} #102#return; {115538#true} is VALID [2022-04-08 06:12:01,927 INFO L272 TraceCheckUtils]: 4: Hoare triple {115538#true} call #t~ret9 := main(); {115538#true} is VALID [2022-04-08 06:12:01,928 INFO L290 TraceCheckUtils]: 5: Hoare triple {115538#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; {115538#true} is VALID [2022-04-08 06:12:01,928 INFO L272 TraceCheckUtils]: 6: Hoare triple {115538#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {115538#true} is VALID [2022-04-08 06:12:01,928 INFO L290 TraceCheckUtils]: 7: Hoare triple {115538#true} ~cond := #in~cond; {115538#true} is VALID [2022-04-08 06:12:01,928 INFO L290 TraceCheckUtils]: 8: Hoare triple {115538#true} assume !(0 == ~cond); {115538#true} is VALID [2022-04-08 06:12:01,928 INFO L290 TraceCheckUtils]: 9: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,928 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {115538#true} {115538#true} #90#return; {115538#true} is VALID [2022-04-08 06:12:01,928 INFO L272 TraceCheckUtils]: 11: Hoare triple {115538#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)); {115538#true} is VALID [2022-04-08 06:12:01,928 INFO L290 TraceCheckUtils]: 12: Hoare triple {115538#true} ~cond := #in~cond; {115538#true} is VALID [2022-04-08 06:12:01,928 INFO L290 TraceCheckUtils]: 13: Hoare triple {115538#true} assume !(0 == ~cond); {115538#true} is VALID [2022-04-08 06:12:01,928 INFO L290 TraceCheckUtils]: 14: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,928 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {115538#true} {115538#true} #92#return; {115538#true} is VALID [2022-04-08 06:12:01,928 INFO L290 TraceCheckUtils]: 16: Hoare triple {115538#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {115538#true} is VALID [2022-04-08 06:12:01,928 INFO L290 TraceCheckUtils]: 17: Hoare triple {115538#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115538#true} is VALID [2022-04-08 06:12:01,928 INFO L290 TraceCheckUtils]: 18: Hoare triple {115538#true} assume !!(#t~post6 < 20);havoc #t~post6; {115538#true} is VALID [2022-04-08 06:12:01,929 INFO L272 TraceCheckUtils]: 19: Hoare triple {115538#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)); {115538#true} is VALID [2022-04-08 06:12:01,929 INFO L290 TraceCheckUtils]: 20: Hoare triple {115538#true} ~cond := #in~cond; {115538#true} is VALID [2022-04-08 06:12:01,929 INFO L290 TraceCheckUtils]: 21: Hoare triple {115538#true} assume !(0 == ~cond); {115538#true} is VALID [2022-04-08 06:12:01,929 INFO L290 TraceCheckUtils]: 22: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,929 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {115538#true} {115538#true} #94#return; {115538#true} is VALID [2022-04-08 06:12:01,929 INFO L290 TraceCheckUtils]: 24: Hoare triple {115538#true} assume !!(0 != ~r~0); {115538#true} is VALID [2022-04-08 06:12:01,929 INFO L290 TraceCheckUtils]: 25: Hoare triple {115538#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115538#true} is VALID [2022-04-08 06:12:01,929 INFO L290 TraceCheckUtils]: 26: Hoare triple {115538#true} assume !!(#t~post7 < 20);havoc #t~post7; {115538#true} is VALID [2022-04-08 06:12:01,929 INFO L272 TraceCheckUtils]: 27: Hoare triple {115538#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)); {115538#true} is VALID [2022-04-08 06:12:01,929 INFO L290 TraceCheckUtils]: 28: Hoare triple {115538#true} ~cond := #in~cond; {115538#true} is VALID [2022-04-08 06:12:01,929 INFO L290 TraceCheckUtils]: 29: Hoare triple {115538#true} assume !(0 == ~cond); {115538#true} is VALID [2022-04-08 06:12:01,929 INFO L290 TraceCheckUtils]: 30: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,929 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {115538#true} {115538#true} #96#return; {115538#true} is VALID [2022-04-08 06:12:01,929 INFO L290 TraceCheckUtils]: 32: Hoare triple {115538#true} assume !(~r~0 > 0); {115538#true} is VALID [2022-04-08 06:12:01,929 INFO L290 TraceCheckUtils]: 33: Hoare triple {115538#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115538#true} is VALID [2022-04-08 06:12:01,930 INFO L290 TraceCheckUtils]: 34: Hoare triple {115538#true} assume !!(#t~post8 < 20);havoc #t~post8; {115538#true} is VALID [2022-04-08 06:12:01,930 INFO L272 TraceCheckUtils]: 35: Hoare triple {115538#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)); {115538#true} is VALID [2022-04-08 06:12:01,930 INFO L290 TraceCheckUtils]: 36: Hoare triple {115538#true} ~cond := #in~cond; {115538#true} is VALID [2022-04-08 06:12:01,930 INFO L290 TraceCheckUtils]: 37: Hoare triple {115538#true} assume !(0 == ~cond); {115538#true} is VALID [2022-04-08 06:12:01,930 INFO L290 TraceCheckUtils]: 38: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,930 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {115538#true} {115538#true} #98#return; {115538#true} is VALID [2022-04-08 06:12:01,930 INFO L290 TraceCheckUtils]: 40: Hoare triple {115538#true} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {115538#true} is VALID [2022-04-08 06:12:01,930 INFO L290 TraceCheckUtils]: 41: Hoare triple {115538#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115538#true} is VALID [2022-04-08 06:12:01,930 INFO L290 TraceCheckUtils]: 42: Hoare triple {115538#true} assume !!(#t~post8 < 20);havoc #t~post8; {115538#true} is VALID [2022-04-08 06:12:01,930 INFO L272 TraceCheckUtils]: 43: Hoare triple {115538#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)); {115538#true} is VALID [2022-04-08 06:12:01,930 INFO L290 TraceCheckUtils]: 44: Hoare triple {115538#true} ~cond := #in~cond; {115538#true} is VALID [2022-04-08 06:12:01,930 INFO L290 TraceCheckUtils]: 45: Hoare triple {115538#true} assume !(0 == ~cond); {115538#true} is VALID [2022-04-08 06:12:01,930 INFO L290 TraceCheckUtils]: 46: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,930 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {115538#true} {115538#true} #98#return; {115538#true} is VALID [2022-04-08 06:12:01,930 INFO L290 TraceCheckUtils]: 48: Hoare triple {115538#true} assume !(~r~0 < 0); {115538#true} is VALID [2022-04-08 06:12:01,931 INFO L290 TraceCheckUtils]: 49: Hoare triple {115538#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115538#true} is VALID [2022-04-08 06:12:01,931 INFO L290 TraceCheckUtils]: 50: Hoare triple {115538#true} assume !!(#t~post6 < 20);havoc #t~post6; {115538#true} is VALID [2022-04-08 06:12:01,931 INFO L272 TraceCheckUtils]: 51: Hoare triple {115538#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)); {115538#true} is VALID [2022-04-08 06:12:01,931 INFO L290 TraceCheckUtils]: 52: Hoare triple {115538#true} ~cond := #in~cond; {115538#true} is VALID [2022-04-08 06:12:01,931 INFO L290 TraceCheckUtils]: 53: Hoare triple {115538#true} assume !(0 == ~cond); {115538#true} is VALID [2022-04-08 06:12:01,931 INFO L290 TraceCheckUtils]: 54: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,931 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {115538#true} {115538#true} #94#return; {115538#true} is VALID [2022-04-08 06:12:01,931 INFO L290 TraceCheckUtils]: 56: Hoare triple {115538#true} assume !!(0 != ~r~0); {115538#true} is VALID [2022-04-08 06:12:01,931 INFO L290 TraceCheckUtils]: 57: Hoare triple {115538#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115538#true} is VALID [2022-04-08 06:12:01,931 INFO L290 TraceCheckUtils]: 58: Hoare triple {115538#true} assume !!(#t~post7 < 20);havoc #t~post7; {115538#true} is VALID [2022-04-08 06:12:01,931 INFO L272 TraceCheckUtils]: 59: Hoare triple {115538#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)); {115538#true} is VALID [2022-04-08 06:12:01,931 INFO L290 TraceCheckUtils]: 60: Hoare triple {115538#true} ~cond := #in~cond; {115538#true} is VALID [2022-04-08 06:12:01,931 INFO L290 TraceCheckUtils]: 61: Hoare triple {115538#true} assume !(0 == ~cond); {115538#true} is VALID [2022-04-08 06:12:01,931 INFO L290 TraceCheckUtils]: 62: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,931 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {115538#true} {115538#true} #96#return; {115538#true} is VALID [2022-04-08 06:12:01,932 INFO L290 TraceCheckUtils]: 64: Hoare triple {115538#true} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {115538#true} is VALID [2022-04-08 06:12:01,932 INFO L290 TraceCheckUtils]: 65: Hoare triple {115538#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115538#true} is VALID [2022-04-08 06:12:01,932 INFO L290 TraceCheckUtils]: 66: Hoare triple {115538#true} assume !!(#t~post7 < 20);havoc #t~post7; {115538#true} is VALID [2022-04-08 06:12:01,932 INFO L272 TraceCheckUtils]: 67: Hoare triple {115538#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)); {115538#true} is VALID [2022-04-08 06:12:01,932 INFO L290 TraceCheckUtils]: 68: Hoare triple {115538#true} ~cond := #in~cond; {115538#true} is VALID [2022-04-08 06:12:01,932 INFO L290 TraceCheckUtils]: 69: Hoare triple {115538#true} assume !(0 == ~cond); {115538#true} is VALID [2022-04-08 06:12:01,932 INFO L290 TraceCheckUtils]: 70: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,932 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {115538#true} {115538#true} #96#return; {115538#true} is VALID [2022-04-08 06:12:01,932 INFO L290 TraceCheckUtils]: 72: Hoare triple {115538#true} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {115538#true} is VALID [2022-04-08 06:12:01,932 INFO L290 TraceCheckUtils]: 73: Hoare triple {115538#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115538#true} is VALID [2022-04-08 06:12:01,932 INFO L290 TraceCheckUtils]: 74: Hoare triple {115538#true} assume !!(#t~post7 < 20);havoc #t~post7; {115538#true} is VALID [2022-04-08 06:12:01,932 INFO L272 TraceCheckUtils]: 75: Hoare triple {115538#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)); {115538#true} is VALID [2022-04-08 06:12:01,932 INFO L290 TraceCheckUtils]: 76: Hoare triple {115538#true} ~cond := #in~cond; {115538#true} is VALID [2022-04-08 06:12:01,932 INFO L290 TraceCheckUtils]: 77: Hoare triple {115538#true} assume !(0 == ~cond); {115538#true} is VALID [2022-04-08 06:12:01,932 INFO L290 TraceCheckUtils]: 78: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {115538#true} {115538#true} #96#return; {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L290 TraceCheckUtils]: 80: Hoare triple {115538#true} assume !(~r~0 > 0); {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L290 TraceCheckUtils]: 81: Hoare triple {115538#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L290 TraceCheckUtils]: 82: Hoare triple {115538#true} assume !!(#t~post8 < 20);havoc #t~post8; {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L272 TraceCheckUtils]: 83: Hoare triple {115538#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)); {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L290 TraceCheckUtils]: 84: Hoare triple {115538#true} ~cond := #in~cond; {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L290 TraceCheckUtils]: 85: Hoare triple {115538#true} assume !(0 == ~cond); {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L290 TraceCheckUtils]: 86: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {115538#true} {115538#true} #98#return; {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L290 TraceCheckUtils]: 88: Hoare triple {115538#true} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L290 TraceCheckUtils]: 89: Hoare triple {115538#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L290 TraceCheckUtils]: 90: Hoare triple {115538#true} assume !!(#t~post8 < 20);havoc #t~post8; {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L272 TraceCheckUtils]: 91: Hoare triple {115538#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)); {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L290 TraceCheckUtils]: 92: Hoare triple {115538#true} ~cond := #in~cond; {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L290 TraceCheckUtils]: 93: Hoare triple {115538#true} assume !(0 == ~cond); {115538#true} is VALID [2022-04-08 06:12:01,933 INFO L290 TraceCheckUtils]: 94: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,934 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {115538#true} {115538#true} #98#return; {115538#true} is VALID [2022-04-08 06:12:01,934 INFO L290 TraceCheckUtils]: 96: Hoare triple {115538#true} assume !(~r~0 < 0); {115538#true} is VALID [2022-04-08 06:12:01,934 INFO L290 TraceCheckUtils]: 97: Hoare triple {115538#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115538#true} is VALID [2022-04-08 06:12:01,934 INFO L290 TraceCheckUtils]: 98: Hoare triple {115538#true} assume !!(#t~post6 < 20);havoc #t~post6; {115538#true} is VALID [2022-04-08 06:12:01,934 INFO L272 TraceCheckUtils]: 99: Hoare triple {115538#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)); {115538#true} is VALID [2022-04-08 06:12:01,934 INFO L290 TraceCheckUtils]: 100: Hoare triple {115538#true} ~cond := #in~cond; {115538#true} is VALID [2022-04-08 06:12:01,934 INFO L290 TraceCheckUtils]: 101: Hoare triple {115538#true} assume !(0 == ~cond); {115538#true} is VALID [2022-04-08 06:12:01,934 INFO L290 TraceCheckUtils]: 102: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,934 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {115538#true} {115538#true} #94#return; {115538#true} is VALID [2022-04-08 06:12:01,934 INFO L290 TraceCheckUtils]: 104: Hoare triple {115538#true} assume !!(0 != ~r~0); {115538#true} is VALID [2022-04-08 06:12:01,934 INFO L290 TraceCheckUtils]: 105: Hoare triple {115538#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115538#true} is VALID [2022-04-08 06:12:01,934 INFO L290 TraceCheckUtils]: 106: Hoare triple {115538#true} assume !!(#t~post7 < 20);havoc #t~post7; {115538#true} is VALID [2022-04-08 06:12:01,934 INFO L272 TraceCheckUtils]: 107: Hoare triple {115538#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)); {115538#true} is VALID [2022-04-08 06:12:01,934 INFO L290 TraceCheckUtils]: 108: Hoare triple {115538#true} ~cond := #in~cond; {115538#true} is VALID [2022-04-08 06:12:01,934 INFO L290 TraceCheckUtils]: 109: Hoare triple {115538#true} assume !(0 == ~cond); {115538#true} is VALID [2022-04-08 06:12:01,935 INFO L290 TraceCheckUtils]: 110: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,935 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {115538#true} {115538#true} #96#return; {115538#true} is VALID [2022-04-08 06:12:01,935 INFO L290 TraceCheckUtils]: 112: Hoare triple {115538#true} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {115538#true} is VALID [2022-04-08 06:12:01,935 INFO L290 TraceCheckUtils]: 113: Hoare triple {115538#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115538#true} is VALID [2022-04-08 06:12:01,935 INFO L290 TraceCheckUtils]: 114: Hoare triple {115538#true} assume !!(#t~post7 < 20);havoc #t~post7; {115538#true} is VALID [2022-04-08 06:12:01,935 INFO L272 TraceCheckUtils]: 115: Hoare triple {115538#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)); {115538#true} is VALID [2022-04-08 06:12:01,935 INFO L290 TraceCheckUtils]: 116: Hoare triple {115538#true} ~cond := #in~cond; {115538#true} is VALID [2022-04-08 06:12:01,935 INFO L290 TraceCheckUtils]: 117: Hoare triple {115538#true} assume !(0 == ~cond); {115538#true} is VALID [2022-04-08 06:12:01,935 INFO L290 TraceCheckUtils]: 118: Hoare triple {115538#true} assume true; {115538#true} is VALID [2022-04-08 06:12:01,935 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {115538#true} {115538#true} #96#return; {115538#true} is VALID [2022-04-08 06:12:01,935 INFO L290 TraceCheckUtils]: 120: Hoare triple {115538#true} assume !(~r~0 > 0); {115903#(not (< 0 main_~r~0))} is VALID [2022-04-08 06:12:01,936 INFO L290 TraceCheckUtils]: 121: Hoare triple {115903#(not (< 0 main_~r~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115903#(not (< 0 main_~r~0))} is VALID [2022-04-08 06:12:01,936 INFO L290 TraceCheckUtils]: 122: Hoare triple {115903#(not (< 0 main_~r~0))} assume !!(#t~post8 < 20);havoc #t~post8; {115903#(not (< 0 main_~r~0))} is VALID [2022-04-08 06:12:01,936 INFO L272 TraceCheckUtils]: 123: Hoare triple {115903#(not (< 0 main_~r~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {115538#true} is VALID [2022-04-08 06:12:01,936 INFO L290 TraceCheckUtils]: 124: Hoare triple {115538#true} ~cond := #in~cond; {115916#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:12:01,937 INFO L290 TraceCheckUtils]: 125: Hoare triple {115916#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {115920#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:12:01,937 INFO L290 TraceCheckUtils]: 126: Hoare triple {115920#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {115920#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:12:01,938 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {115920#(not (= |__VERIFIER_assert_#in~cond| 0))} {115903#(not (< 0 main_~r~0))} #98#return; {115927#(and (= (+ (* 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))) (not (< 0 main_~r~0)))} is VALID [2022-04-08 06:12:01,941 INFO L290 TraceCheckUtils]: 128: Hoare triple {115927#(and (= (+ (* 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))) (not (< 0 main_~r~0)))} assume !(~r~0 < 0); {115931#(and (= (mod (+ (* main_~v~0 2) (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* main_~u~0 2)) 4) 0) (not (< (div (+ (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* (- 2) main_~v~0) (* main_~u~0 2)) (- 4)) main_~A~0)) (not (< main_~A~0 (div (+ (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* (- 2) main_~v~0) (* main_~u~0 2)) (- 4)))))} is VALID [2022-04-08 06:12:01,941 INFO L290 TraceCheckUtils]: 129: Hoare triple {115931#(and (= (mod (+ (* main_~v~0 2) (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* main_~u~0 2)) 4) 0) (not (< (div (+ (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* (- 2) main_~v~0) (* main_~u~0 2)) (- 4)) main_~A~0)) (not (< main_~A~0 (div (+ (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* (- 2) main_~v~0) (* main_~u~0 2)) (- 4)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115931#(and (= (mod (+ (* main_~v~0 2) (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* main_~u~0 2)) 4) 0) (not (< (div (+ (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* (- 2) main_~v~0) (* main_~u~0 2)) (- 4)) main_~A~0)) (not (< main_~A~0 (div (+ (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* (- 2) main_~v~0) (* main_~u~0 2)) (- 4)))))} is VALID [2022-04-08 06:12:01,942 INFO L290 TraceCheckUtils]: 130: Hoare triple {115931#(and (= (mod (+ (* main_~v~0 2) (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* main_~u~0 2)) 4) 0) (not (< (div (+ (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* (- 2) main_~v~0) (* main_~u~0 2)) (- 4)) main_~A~0)) (not (< main_~A~0 (div (+ (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* (- 2) main_~v~0) (* main_~u~0 2)) (- 4)))))} assume !(#t~post6 < 20);havoc #t~post6; {115931#(and (= (mod (+ (* main_~v~0 2) (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* main_~u~0 2)) 4) 0) (not (< (div (+ (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* (- 2) main_~v~0) (* main_~u~0 2)) (- 4)) main_~A~0)) (not (< main_~A~0 (div (+ (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* (- 2) main_~v~0) (* main_~u~0 2)) (- 4)))))} is VALID [2022-04-08 06:12:01,943 INFO L272 TraceCheckUtils]: 131: Hoare triple {115931#(and (= (mod (+ (* main_~v~0 2) (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* main_~u~0 2)) 4) 0) (not (< (div (+ (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* (- 2) main_~v~0) (* main_~u~0 2)) (- 4)) main_~A~0)) (not (< main_~A~0 (div (+ (* (- 1) main_~u~0 main_~u~0) (* main_~v~0 main_~v~0) (* (- 2) main_~v~0) (* main_~u~0 2)) (- 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)); {115941#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:12:01,943 INFO L290 TraceCheckUtils]: 132: Hoare triple {115941#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {115945#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:12:01,943 INFO L290 TraceCheckUtils]: 133: Hoare triple {115945#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {115539#false} is VALID [2022-04-08 06:12:01,944 INFO L290 TraceCheckUtils]: 134: Hoare triple {115539#false} assume !false; {115539#false} is VALID [2022-04-08 06:12:01,944 INFO L134 CoverageAnalysis]: Checked inductivity of 514 backedges. 88 proven. 1 refuted. 0 times theorem prover too weak. 425 trivial. 0 not checked. [2022-04-08 06:12:01,944 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:12:04,422 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:12:04,422 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1056156115] [2022-04-08 06:12:04,422 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:12:04,422 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1896667258] [2022-04-08 06:12:04,422 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1896667258] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 06:12:04,422 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 06:12:04,422 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2022-04-08 06:12:04,422 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:12:04,422 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [594955368] [2022-04-08 06:12:04,422 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [594955368] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:12:04,423 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:12:04,423 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 06:12:04,423 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [617067785] [2022-04-08 06:12:04,423 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:12:04,423 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 135 [2022-04-08 06:12:04,423 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:12:04,423 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 06:12:04,489 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:12:04,489 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 06:12:04,489 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:12:04,489 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 06:12:04,489 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=84, Unknown=1, NotChecked=0, Total=110 [2022-04-08 06:12:04,489 INFO L87 Difference]: Start difference. First operand 746 states and 982 transitions. Second operand has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 06:12:07,729 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:12:07,729 INFO L93 Difference]: Finished difference Result 802 states and 1061 transitions. [2022-04-08 06:12:07,730 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 06:12:07,730 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 135 [2022-04-08 06:12:07,730 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:12:07,730 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 06:12:07,731 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 79 transitions. [2022-04-08 06:12:07,731 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 06:12:07,731 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 79 transitions. [2022-04-08 06:12:07,732 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 79 transitions. [2022-04-08 06:12:07,828 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:12:07,858 INFO L225 Difference]: With dead ends: 802 [2022-04-08 06:12:07,858 INFO L226 Difference]: Without dead ends: 790 [2022-04-08 06:12:07,859 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 146 GetRequests, 132 SyntacticMatches, 2 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 2.2s TimeCoverageRelationStatistics Valid=43, Invalid=138, Unknown=1, NotChecked=0, Total=182 [2022-04-08 06:12:07,859 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 35 mSDsluCounter, 192 mSDsCounter, 0 mSdLazyCounter, 131 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 243 SdHoareTripleChecker+Invalid, 142 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 131 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 06:12:07,859 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [39 Valid, 243 Invalid, 142 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 131 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 06:12:07,860 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 790 states. [2022-04-08 06:12:10,111 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 790 to 727. [2022-04-08 06:12:10,112 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:12:10,112 INFO L82 GeneralOperation]: Start isEquivalent. First operand 790 states. Second operand has 727 states, 548 states have (on average 1.1806569343065694) internal successors, (647), 555 states have internal predecessors, (647), 150 states have call successors, (150), 30 states have call predecessors, (150), 28 states have return successors, (148), 141 states have call predecessors, (148), 148 states have call successors, (148) [2022-04-08 06:12:10,113 INFO L74 IsIncluded]: Start isIncluded. First operand 790 states. Second operand has 727 states, 548 states have (on average 1.1806569343065694) internal successors, (647), 555 states have internal predecessors, (647), 150 states have call successors, (150), 30 states have call predecessors, (150), 28 states have return successors, (148), 141 states have call predecessors, (148), 148 states have call successors, (148) [2022-04-08 06:12:10,113 INFO L87 Difference]: Start difference. First operand 790 states. Second operand has 727 states, 548 states have (on average 1.1806569343065694) internal successors, (647), 555 states have internal predecessors, (647), 150 states have call successors, (150), 30 states have call predecessors, (150), 28 states have return successors, (148), 141 states have call predecessors, (148), 148 states have call successors, (148) [2022-04-08 06:12:10,137 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:12:10,137 INFO L93 Difference]: Finished difference Result 790 states and 1043 transitions. [2022-04-08 06:12:10,137 INFO L276 IsEmpty]: Start isEmpty. Operand 790 states and 1043 transitions. [2022-04-08 06:12:10,138 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:12:10,138 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:12:10,139 INFO L74 IsIncluded]: Start isIncluded. First operand has 727 states, 548 states have (on average 1.1806569343065694) internal successors, (647), 555 states have internal predecessors, (647), 150 states have call successors, (150), 30 states have call predecessors, (150), 28 states have return successors, (148), 141 states have call predecessors, (148), 148 states have call successors, (148) Second operand 790 states. [2022-04-08 06:12:10,139 INFO L87 Difference]: Start difference. First operand has 727 states, 548 states have (on average 1.1806569343065694) internal successors, (647), 555 states have internal predecessors, (647), 150 states have call successors, (150), 30 states have call predecessors, (150), 28 states have return successors, (148), 141 states have call predecessors, (148), 148 states have call successors, (148) Second operand 790 states. [2022-04-08 06:12:10,162 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:12:10,162 INFO L93 Difference]: Finished difference Result 790 states and 1043 transitions. [2022-04-08 06:12:10,163 INFO L276 IsEmpty]: Start isEmpty. Operand 790 states and 1043 transitions. [2022-04-08 06:12:10,163 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:12:10,163 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:12:10,163 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:12:10,164 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:12:10,164 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 727 states, 548 states have (on average 1.1806569343065694) internal successors, (647), 555 states have internal predecessors, (647), 150 states have call successors, (150), 30 states have call predecessors, (150), 28 states have return successors, (148), 141 states have call predecessors, (148), 148 states have call successors, (148) [2022-04-08 06:12:10,190 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 727 states to 727 states and 945 transitions. [2022-04-08 06:12:10,191 INFO L78 Accepts]: Start accepts. Automaton has 727 states and 945 transitions. Word has length 135 [2022-04-08 06:12:10,191 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:12:10,191 INFO L478 AbstractCegarLoop]: Abstraction has 727 states and 945 transitions. [2022-04-08 06:12:10,191 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 06:12:10,191 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 727 states and 945 transitions. [2022-04-08 06:12:25,504 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 945 edges. 944 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:12:25,504 INFO L276 IsEmpty]: Start isEmpty. Operand 727 states and 945 transitions. [2022-04-08 06:12:25,505 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 136 [2022-04-08 06:12:25,505 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:12:25,505 INFO L499 BasicCegarLoop]: trace histogram [15, 14, 14, 8, 8, 8, 8, 6, 4, 4, 4, 4, 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:12:25,510 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (46)] Forceful destruction successful, exit code 0 [2022-04-08 06:12:25,706 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 46 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable44 [2022-04-08 06:12:25,706 INFO L403 AbstractCegarLoop]: === Iteration 46 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:12:25,706 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:12:25,706 INFO L85 PathProgramCache]: Analyzing trace with hash 200539575, now seen corresponding path program 13 times [2022-04-08 06:12:25,706 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:12:25,706 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1338762497] [2022-04-08 06:12:25,707 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:12:25,707 INFO L85 PathProgramCache]: Analyzing trace with hash 200539575, now seen corresponding path program 14 times [2022-04-08 06:12:25,707 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:12:25,707 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1487977266] [2022-04-08 06:12:25,707 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:12:25,707 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:12:25,720 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:12:25,721 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [879027248] [2022-04-08 06:12:25,721 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:12:25,721 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:12:25,721 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:12:25,722 INFO L229 MonitoredProcess]: Starting monitored process 47 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:12:25,722 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (47)] Waiting until timeout for monitored process [2022-04-08 06:12:25,785 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:12:25,786 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:12:25,787 INFO L263 TraceCheckSpWp]: Trace formula consists of 335 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-08 06:12:25,812 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:12:25,814 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:12:26,501 INFO L272 TraceCheckUtils]: 0: Hoare triple {120622#true} call ULTIMATE.init(); {120622#true} is VALID [2022-04-08 06:12:26,502 INFO L290 TraceCheckUtils]: 1: Hoare triple {120622#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,502 INFO L290 TraceCheckUtils]: 2: Hoare triple {120630#(<= ~counter~0 0)} assume true; {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,503 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {120630#(<= ~counter~0 0)} {120622#true} #102#return; {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,503 INFO L272 TraceCheckUtils]: 4: Hoare triple {120630#(<= ~counter~0 0)} call #t~ret9 := main(); {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,503 INFO L290 TraceCheckUtils]: 5: Hoare triple {120630#(<= ~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; {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,503 INFO L272 TraceCheckUtils]: 6: Hoare triple {120630#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,504 INFO L290 TraceCheckUtils]: 7: Hoare triple {120630#(<= ~counter~0 0)} ~cond := #in~cond; {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,504 INFO L290 TraceCheckUtils]: 8: Hoare triple {120630#(<= ~counter~0 0)} assume !(0 == ~cond); {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,504 INFO L290 TraceCheckUtils]: 9: Hoare triple {120630#(<= ~counter~0 0)} assume true; {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,505 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {120630#(<= ~counter~0 0)} {120630#(<= ~counter~0 0)} #90#return; {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,505 INFO L272 TraceCheckUtils]: 11: Hoare triple {120630#(<= ~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)); {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,505 INFO L290 TraceCheckUtils]: 12: Hoare triple {120630#(<= ~counter~0 0)} ~cond := #in~cond; {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,506 INFO L290 TraceCheckUtils]: 13: Hoare triple {120630#(<= ~counter~0 0)} assume !(0 == ~cond); {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,506 INFO L290 TraceCheckUtils]: 14: Hoare triple {120630#(<= ~counter~0 0)} assume true; {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,506 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {120630#(<= ~counter~0 0)} {120630#(<= ~counter~0 0)} #92#return; {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,506 INFO L290 TraceCheckUtils]: 16: Hoare triple {120630#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {120630#(<= ~counter~0 0)} is VALID [2022-04-08 06:12:26,509 INFO L290 TraceCheckUtils]: 17: Hoare triple {120630#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {120679#(<= ~counter~0 1)} is VALID [2022-04-08 06:12:26,509 INFO L290 TraceCheckUtils]: 18: Hoare triple {120679#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {120679#(<= ~counter~0 1)} is VALID [2022-04-08 06:12:26,510 INFO L272 TraceCheckUtils]: 19: Hoare triple {120679#(<= ~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)); {120679#(<= ~counter~0 1)} is VALID [2022-04-08 06:12:26,510 INFO L290 TraceCheckUtils]: 20: Hoare triple {120679#(<= ~counter~0 1)} ~cond := #in~cond; {120679#(<= ~counter~0 1)} is VALID [2022-04-08 06:12:26,510 INFO L290 TraceCheckUtils]: 21: Hoare triple {120679#(<= ~counter~0 1)} assume !(0 == ~cond); {120679#(<= ~counter~0 1)} is VALID [2022-04-08 06:12:26,511 INFO L290 TraceCheckUtils]: 22: Hoare triple {120679#(<= ~counter~0 1)} assume true; {120679#(<= ~counter~0 1)} is VALID [2022-04-08 06:12:26,511 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {120679#(<= ~counter~0 1)} {120679#(<= ~counter~0 1)} #94#return; {120679#(<= ~counter~0 1)} is VALID [2022-04-08 06:12:26,511 INFO L290 TraceCheckUtils]: 24: Hoare triple {120679#(<= ~counter~0 1)} assume !!(0 != ~r~0); {120679#(<= ~counter~0 1)} is VALID [2022-04-08 06:12:26,513 INFO L290 TraceCheckUtils]: 25: Hoare triple {120679#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120704#(<= ~counter~0 2)} is VALID [2022-04-08 06:12:26,513 INFO L290 TraceCheckUtils]: 26: Hoare triple {120704#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {120704#(<= ~counter~0 2)} is VALID [2022-04-08 06:12:26,514 INFO L272 TraceCheckUtils]: 27: Hoare triple {120704#(<= ~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)); {120704#(<= ~counter~0 2)} is VALID [2022-04-08 06:12:26,514 INFO L290 TraceCheckUtils]: 28: Hoare triple {120704#(<= ~counter~0 2)} ~cond := #in~cond; {120704#(<= ~counter~0 2)} is VALID [2022-04-08 06:12:26,514 INFO L290 TraceCheckUtils]: 29: Hoare triple {120704#(<= ~counter~0 2)} assume !(0 == ~cond); {120704#(<= ~counter~0 2)} is VALID [2022-04-08 06:12:26,514 INFO L290 TraceCheckUtils]: 30: Hoare triple {120704#(<= ~counter~0 2)} assume true; {120704#(<= ~counter~0 2)} is VALID [2022-04-08 06:12:26,515 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {120704#(<= ~counter~0 2)} {120704#(<= ~counter~0 2)} #96#return; {120704#(<= ~counter~0 2)} is VALID [2022-04-08 06:12:26,515 INFO L290 TraceCheckUtils]: 32: Hoare triple {120704#(<= ~counter~0 2)} assume !(~r~0 > 0); {120704#(<= ~counter~0 2)} is VALID [2022-04-08 06:12:26,517 INFO L290 TraceCheckUtils]: 33: Hoare triple {120704#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {120729#(<= ~counter~0 3)} is VALID [2022-04-08 06:12:26,517 INFO L290 TraceCheckUtils]: 34: Hoare triple {120729#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {120729#(<= ~counter~0 3)} is VALID [2022-04-08 06:12:26,517 INFO L272 TraceCheckUtils]: 35: Hoare triple {120729#(<= ~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)); {120729#(<= ~counter~0 3)} is VALID [2022-04-08 06:12:26,518 INFO L290 TraceCheckUtils]: 36: Hoare triple {120729#(<= ~counter~0 3)} ~cond := #in~cond; {120729#(<= ~counter~0 3)} is VALID [2022-04-08 06:12:26,518 INFO L290 TraceCheckUtils]: 37: Hoare triple {120729#(<= ~counter~0 3)} assume !(0 == ~cond); {120729#(<= ~counter~0 3)} is VALID [2022-04-08 06:12:26,518 INFO L290 TraceCheckUtils]: 38: Hoare triple {120729#(<= ~counter~0 3)} assume true; {120729#(<= ~counter~0 3)} is VALID [2022-04-08 06:12:26,518 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {120729#(<= ~counter~0 3)} {120729#(<= ~counter~0 3)} #98#return; {120729#(<= ~counter~0 3)} is VALID [2022-04-08 06:12:26,519 INFO L290 TraceCheckUtils]: 40: Hoare triple {120729#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {120729#(<= ~counter~0 3)} is VALID [2022-04-08 06:12:26,520 INFO L290 TraceCheckUtils]: 41: Hoare triple {120729#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {120754#(<= ~counter~0 4)} is VALID [2022-04-08 06:12:26,520 INFO L290 TraceCheckUtils]: 42: Hoare triple {120754#(<= ~counter~0 4)} assume !!(#t~post8 < 20);havoc #t~post8; {120754#(<= ~counter~0 4)} is VALID [2022-04-08 06:12:26,521 INFO L272 TraceCheckUtils]: 43: Hoare triple {120754#(<= ~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)); {120754#(<= ~counter~0 4)} is VALID [2022-04-08 06:12:26,521 INFO L290 TraceCheckUtils]: 44: Hoare triple {120754#(<= ~counter~0 4)} ~cond := #in~cond; {120754#(<= ~counter~0 4)} is VALID [2022-04-08 06:12:26,521 INFO L290 TraceCheckUtils]: 45: Hoare triple {120754#(<= ~counter~0 4)} assume !(0 == ~cond); {120754#(<= ~counter~0 4)} is VALID [2022-04-08 06:12:26,522 INFO L290 TraceCheckUtils]: 46: Hoare triple {120754#(<= ~counter~0 4)} assume true; {120754#(<= ~counter~0 4)} is VALID [2022-04-08 06:12:26,522 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {120754#(<= ~counter~0 4)} {120754#(<= ~counter~0 4)} #98#return; {120754#(<= ~counter~0 4)} is VALID [2022-04-08 06:12:26,522 INFO L290 TraceCheckUtils]: 48: Hoare triple {120754#(<= ~counter~0 4)} assume !(~r~0 < 0); {120754#(<= ~counter~0 4)} is VALID [2022-04-08 06:12:26,524 INFO L290 TraceCheckUtils]: 49: Hoare triple {120754#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:26,524 INFO L290 TraceCheckUtils]: 50: Hoare triple {120779#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:26,525 INFO L272 TraceCheckUtils]: 51: Hoare triple {120779#(<= ~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)); {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:26,525 INFO L290 TraceCheckUtils]: 52: Hoare triple {120779#(<= ~counter~0 5)} ~cond := #in~cond; {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:26,525 INFO L290 TraceCheckUtils]: 53: Hoare triple {120779#(<= ~counter~0 5)} assume !(0 == ~cond); {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:26,525 INFO L290 TraceCheckUtils]: 54: Hoare triple {120779#(<= ~counter~0 5)} assume true; {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:26,526 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {120779#(<= ~counter~0 5)} {120779#(<= ~counter~0 5)} #94#return; {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:26,526 INFO L290 TraceCheckUtils]: 56: Hoare triple {120779#(<= ~counter~0 5)} assume !!(0 != ~r~0); {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:26,527 INFO L290 TraceCheckUtils]: 57: Hoare triple {120779#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120804#(<= ~counter~0 6)} is VALID [2022-04-08 06:12:26,527 INFO L290 TraceCheckUtils]: 58: Hoare triple {120804#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {120804#(<= ~counter~0 6)} is VALID [2022-04-08 06:12:26,528 INFO L272 TraceCheckUtils]: 59: Hoare triple {120804#(<= ~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)); {120804#(<= ~counter~0 6)} is VALID [2022-04-08 06:12:26,528 INFO L290 TraceCheckUtils]: 60: Hoare triple {120804#(<= ~counter~0 6)} ~cond := #in~cond; {120804#(<= ~counter~0 6)} is VALID [2022-04-08 06:12:26,528 INFO L290 TraceCheckUtils]: 61: Hoare triple {120804#(<= ~counter~0 6)} assume !(0 == ~cond); {120804#(<= ~counter~0 6)} is VALID [2022-04-08 06:12:26,529 INFO L290 TraceCheckUtils]: 62: Hoare triple {120804#(<= ~counter~0 6)} assume true; {120804#(<= ~counter~0 6)} is VALID [2022-04-08 06:12:26,529 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {120804#(<= ~counter~0 6)} {120804#(<= ~counter~0 6)} #96#return; {120804#(<= ~counter~0 6)} is VALID [2022-04-08 06:12:26,529 INFO L290 TraceCheckUtils]: 64: Hoare triple {120804#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {120804#(<= ~counter~0 6)} is VALID [2022-04-08 06:12:26,531 INFO L290 TraceCheckUtils]: 65: Hoare triple {120804#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120829#(<= ~counter~0 7)} is VALID [2022-04-08 06:12:26,531 INFO L290 TraceCheckUtils]: 66: Hoare triple {120829#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {120829#(<= ~counter~0 7)} is VALID [2022-04-08 06:12:26,531 INFO L272 TraceCheckUtils]: 67: Hoare triple {120829#(<= ~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)); {120829#(<= ~counter~0 7)} is VALID [2022-04-08 06:12:26,532 INFO L290 TraceCheckUtils]: 68: Hoare triple {120829#(<= ~counter~0 7)} ~cond := #in~cond; {120829#(<= ~counter~0 7)} is VALID [2022-04-08 06:12:26,532 INFO L290 TraceCheckUtils]: 69: Hoare triple {120829#(<= ~counter~0 7)} assume !(0 == ~cond); {120829#(<= ~counter~0 7)} is VALID [2022-04-08 06:12:26,532 INFO L290 TraceCheckUtils]: 70: Hoare triple {120829#(<= ~counter~0 7)} assume true; {120829#(<= ~counter~0 7)} is VALID [2022-04-08 06:12:26,533 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {120829#(<= ~counter~0 7)} {120829#(<= ~counter~0 7)} #96#return; {120829#(<= ~counter~0 7)} is VALID [2022-04-08 06:12:26,533 INFO L290 TraceCheckUtils]: 72: Hoare triple {120829#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {120829#(<= ~counter~0 7)} is VALID [2022-04-08 06:12:26,534 INFO L290 TraceCheckUtils]: 73: Hoare triple {120829#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120854#(<= ~counter~0 8)} is VALID [2022-04-08 06:12:26,535 INFO L290 TraceCheckUtils]: 74: Hoare triple {120854#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {120854#(<= ~counter~0 8)} is VALID [2022-04-08 06:12:26,535 INFO L272 TraceCheckUtils]: 75: Hoare triple {120854#(<= ~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)); {120854#(<= ~counter~0 8)} is VALID [2022-04-08 06:12:26,535 INFO L290 TraceCheckUtils]: 76: Hoare triple {120854#(<= ~counter~0 8)} ~cond := #in~cond; {120854#(<= ~counter~0 8)} is VALID [2022-04-08 06:12:26,536 INFO L290 TraceCheckUtils]: 77: Hoare triple {120854#(<= ~counter~0 8)} assume !(0 == ~cond); {120854#(<= ~counter~0 8)} is VALID [2022-04-08 06:12:26,536 INFO L290 TraceCheckUtils]: 78: Hoare triple {120854#(<= ~counter~0 8)} assume true; {120854#(<= ~counter~0 8)} is VALID [2022-04-08 06:12:26,536 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {120854#(<= ~counter~0 8)} {120854#(<= ~counter~0 8)} #96#return; {120854#(<= ~counter~0 8)} is VALID [2022-04-08 06:12:26,537 INFO L290 TraceCheckUtils]: 80: Hoare triple {120854#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {120854#(<= ~counter~0 8)} is VALID [2022-04-08 06:12:26,538 INFO L290 TraceCheckUtils]: 81: Hoare triple {120854#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120879#(<= ~counter~0 9)} is VALID [2022-04-08 06:12:26,538 INFO L290 TraceCheckUtils]: 82: Hoare triple {120879#(<= ~counter~0 9)} assume !!(#t~post7 < 20);havoc #t~post7; {120879#(<= ~counter~0 9)} is VALID [2022-04-08 06:12:26,539 INFO L272 TraceCheckUtils]: 83: Hoare triple {120879#(<= ~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)); {120879#(<= ~counter~0 9)} is VALID [2022-04-08 06:12:26,539 INFO L290 TraceCheckUtils]: 84: Hoare triple {120879#(<= ~counter~0 9)} ~cond := #in~cond; {120879#(<= ~counter~0 9)} is VALID [2022-04-08 06:12:26,539 INFO L290 TraceCheckUtils]: 85: Hoare triple {120879#(<= ~counter~0 9)} assume !(0 == ~cond); {120879#(<= ~counter~0 9)} is VALID [2022-04-08 06:12:26,539 INFO L290 TraceCheckUtils]: 86: Hoare triple {120879#(<= ~counter~0 9)} assume true; {120879#(<= ~counter~0 9)} is VALID [2022-04-08 06:12:26,540 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {120879#(<= ~counter~0 9)} {120879#(<= ~counter~0 9)} #96#return; {120879#(<= ~counter~0 9)} is VALID [2022-04-08 06:12:26,540 INFO L290 TraceCheckUtils]: 88: Hoare triple {120879#(<= ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {120879#(<= ~counter~0 9)} is VALID [2022-04-08 06:12:26,545 INFO L290 TraceCheckUtils]: 89: Hoare triple {120879#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120904#(<= ~counter~0 10)} is VALID [2022-04-08 06:12:26,545 INFO L290 TraceCheckUtils]: 90: Hoare triple {120904#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {120904#(<= ~counter~0 10)} is VALID [2022-04-08 06:12:26,546 INFO L272 TraceCheckUtils]: 91: Hoare triple {120904#(<= ~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)); {120904#(<= ~counter~0 10)} is VALID [2022-04-08 06:12:26,546 INFO L290 TraceCheckUtils]: 92: Hoare triple {120904#(<= ~counter~0 10)} ~cond := #in~cond; {120904#(<= ~counter~0 10)} is VALID [2022-04-08 06:12:26,547 INFO L290 TraceCheckUtils]: 93: Hoare triple {120904#(<= ~counter~0 10)} assume !(0 == ~cond); {120904#(<= ~counter~0 10)} is VALID [2022-04-08 06:12:26,547 INFO L290 TraceCheckUtils]: 94: Hoare triple {120904#(<= ~counter~0 10)} assume true; {120904#(<= ~counter~0 10)} is VALID [2022-04-08 06:12:26,547 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {120904#(<= ~counter~0 10)} {120904#(<= ~counter~0 10)} #96#return; {120904#(<= ~counter~0 10)} is VALID [2022-04-08 06:12:26,548 INFO L290 TraceCheckUtils]: 96: Hoare triple {120904#(<= ~counter~0 10)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {120904#(<= ~counter~0 10)} is VALID [2022-04-08 06:12:26,551 INFO L290 TraceCheckUtils]: 97: Hoare triple {120904#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120929#(<= ~counter~0 11)} is VALID [2022-04-08 06:12:26,551 INFO L290 TraceCheckUtils]: 98: Hoare triple {120929#(<= ~counter~0 11)} assume !!(#t~post7 < 20);havoc #t~post7; {120929#(<= ~counter~0 11)} is VALID [2022-04-08 06:12:26,552 INFO L272 TraceCheckUtils]: 99: Hoare triple {120929#(<= ~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)); {120929#(<= ~counter~0 11)} is VALID [2022-04-08 06:12:26,552 INFO L290 TraceCheckUtils]: 100: Hoare triple {120929#(<= ~counter~0 11)} ~cond := #in~cond; {120929#(<= ~counter~0 11)} is VALID [2022-04-08 06:12:26,552 INFO L290 TraceCheckUtils]: 101: Hoare triple {120929#(<= ~counter~0 11)} assume !(0 == ~cond); {120929#(<= ~counter~0 11)} is VALID [2022-04-08 06:12:26,552 INFO L290 TraceCheckUtils]: 102: Hoare triple {120929#(<= ~counter~0 11)} assume true; {120929#(<= ~counter~0 11)} is VALID [2022-04-08 06:12:26,553 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {120929#(<= ~counter~0 11)} {120929#(<= ~counter~0 11)} #96#return; {120929#(<= ~counter~0 11)} is VALID [2022-04-08 06:12:26,553 INFO L290 TraceCheckUtils]: 104: Hoare triple {120929#(<= ~counter~0 11)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {120929#(<= ~counter~0 11)} is VALID [2022-04-08 06:12:26,555 INFO L290 TraceCheckUtils]: 105: Hoare triple {120929#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120954#(<= ~counter~0 12)} is VALID [2022-04-08 06:12:26,556 INFO L290 TraceCheckUtils]: 106: Hoare triple {120954#(<= ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {120954#(<= ~counter~0 12)} is VALID [2022-04-08 06:12:26,556 INFO L272 TraceCheckUtils]: 107: Hoare triple {120954#(<= ~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)); {120954#(<= ~counter~0 12)} is VALID [2022-04-08 06:12:26,557 INFO L290 TraceCheckUtils]: 108: Hoare triple {120954#(<= ~counter~0 12)} ~cond := #in~cond; {120954#(<= ~counter~0 12)} is VALID [2022-04-08 06:12:26,557 INFO L290 TraceCheckUtils]: 109: Hoare triple {120954#(<= ~counter~0 12)} assume !(0 == ~cond); {120954#(<= ~counter~0 12)} is VALID [2022-04-08 06:12:26,557 INFO L290 TraceCheckUtils]: 110: Hoare triple {120954#(<= ~counter~0 12)} assume true; {120954#(<= ~counter~0 12)} is VALID [2022-04-08 06:12:26,558 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {120954#(<= ~counter~0 12)} {120954#(<= ~counter~0 12)} #96#return; {120954#(<= ~counter~0 12)} is VALID [2022-04-08 06:12:26,558 INFO L290 TraceCheckUtils]: 112: Hoare triple {120954#(<= ~counter~0 12)} assume !(~r~0 > 0); {120954#(<= ~counter~0 12)} is VALID [2022-04-08 06:12:26,559 INFO L290 TraceCheckUtils]: 113: Hoare triple {120954#(<= ~counter~0 12)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {120979#(<= ~counter~0 13)} is VALID [2022-04-08 06:12:26,559 INFO L290 TraceCheckUtils]: 114: Hoare triple {120979#(<= ~counter~0 13)} assume !!(#t~post8 < 20);havoc #t~post8; {120979#(<= ~counter~0 13)} is VALID [2022-04-08 06:12:26,560 INFO L272 TraceCheckUtils]: 115: Hoare triple {120979#(<= ~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)); {120979#(<= ~counter~0 13)} is VALID [2022-04-08 06:12:26,560 INFO L290 TraceCheckUtils]: 116: Hoare triple {120979#(<= ~counter~0 13)} ~cond := #in~cond; {120979#(<= ~counter~0 13)} is VALID [2022-04-08 06:12:26,560 INFO L290 TraceCheckUtils]: 117: Hoare triple {120979#(<= ~counter~0 13)} assume !(0 == ~cond); {120979#(<= ~counter~0 13)} is VALID [2022-04-08 06:12:26,561 INFO L290 TraceCheckUtils]: 118: Hoare triple {120979#(<= ~counter~0 13)} assume true; {120979#(<= ~counter~0 13)} is VALID [2022-04-08 06:12:26,561 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {120979#(<= ~counter~0 13)} {120979#(<= ~counter~0 13)} #98#return; {120979#(<= ~counter~0 13)} is VALID [2022-04-08 06:12:26,561 INFO L290 TraceCheckUtils]: 120: Hoare triple {120979#(<= ~counter~0 13)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {120979#(<= ~counter~0 13)} is VALID [2022-04-08 06:12:26,563 INFO L290 TraceCheckUtils]: 121: Hoare triple {120979#(<= ~counter~0 13)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {121004#(<= ~counter~0 14)} is VALID [2022-04-08 06:12:26,563 INFO L290 TraceCheckUtils]: 122: Hoare triple {121004#(<= ~counter~0 14)} assume !!(#t~post8 < 20);havoc #t~post8; {121004#(<= ~counter~0 14)} is VALID [2022-04-08 06:12:26,563 INFO L272 TraceCheckUtils]: 123: Hoare triple {121004#(<= ~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)); {121004#(<= ~counter~0 14)} is VALID [2022-04-08 06:12:26,564 INFO L290 TraceCheckUtils]: 124: Hoare triple {121004#(<= ~counter~0 14)} ~cond := #in~cond; {121004#(<= ~counter~0 14)} is VALID [2022-04-08 06:12:26,564 INFO L290 TraceCheckUtils]: 125: Hoare triple {121004#(<= ~counter~0 14)} assume !(0 == ~cond); {121004#(<= ~counter~0 14)} is VALID [2022-04-08 06:12:26,564 INFO L290 TraceCheckUtils]: 126: Hoare triple {121004#(<= ~counter~0 14)} assume true; {121004#(<= ~counter~0 14)} is VALID [2022-04-08 06:12:26,565 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {121004#(<= ~counter~0 14)} {121004#(<= ~counter~0 14)} #98#return; {121004#(<= ~counter~0 14)} is VALID [2022-04-08 06:12:26,565 INFO L290 TraceCheckUtils]: 128: Hoare triple {121004#(<= ~counter~0 14)} assume !(~r~0 < 0); {121004#(<= ~counter~0 14)} is VALID [2022-04-08 06:12:26,565 INFO L290 TraceCheckUtils]: 129: Hoare triple {121004#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {121029#(<= |main_#t~post6| 14)} is VALID [2022-04-08 06:12:26,566 INFO L290 TraceCheckUtils]: 130: Hoare triple {121029#(<= |main_#t~post6| 14)} assume !(#t~post6 < 20);havoc #t~post6; {120623#false} is VALID [2022-04-08 06:12:26,566 INFO L272 TraceCheckUtils]: 131: Hoare triple {120623#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)); {120623#false} is VALID [2022-04-08 06:12:26,566 INFO L290 TraceCheckUtils]: 132: Hoare triple {120623#false} ~cond := #in~cond; {120623#false} is VALID [2022-04-08 06:12:26,566 INFO L290 TraceCheckUtils]: 133: Hoare triple {120623#false} assume 0 == ~cond; {120623#false} is VALID [2022-04-08 06:12:26,566 INFO L290 TraceCheckUtils]: 134: Hoare triple {120623#false} assume !false; {120623#false} is VALID [2022-04-08 06:12:26,566 INFO L134 CoverageAnalysis]: Checked inductivity of 540 backedges. 28 proven. 508 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 06:12:26,566 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:12:27,246 INFO L290 TraceCheckUtils]: 134: Hoare triple {120623#false} assume !false; {120623#false} is VALID [2022-04-08 06:12:27,246 INFO L290 TraceCheckUtils]: 133: Hoare triple {120623#false} assume 0 == ~cond; {120623#false} is VALID [2022-04-08 06:12:27,246 INFO L290 TraceCheckUtils]: 132: Hoare triple {120623#false} ~cond := #in~cond; {120623#false} is VALID [2022-04-08 06:12:27,246 INFO L272 TraceCheckUtils]: 131: Hoare triple {120623#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)); {120623#false} is VALID [2022-04-08 06:12:27,247 INFO L290 TraceCheckUtils]: 130: Hoare triple {121057#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {120623#false} is VALID [2022-04-08 06:12:27,247 INFO L290 TraceCheckUtils]: 129: Hoare triple {121061#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {121057#(< |main_#t~post6| 20)} is VALID [2022-04-08 06:12:27,247 INFO L290 TraceCheckUtils]: 128: Hoare triple {121061#(< ~counter~0 20)} assume !(~r~0 < 0); {121061#(< ~counter~0 20)} is VALID [2022-04-08 06:12:27,248 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {120622#true} {121061#(< ~counter~0 20)} #98#return; {121061#(< ~counter~0 20)} is VALID [2022-04-08 06:12:27,248 INFO L290 TraceCheckUtils]: 126: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,248 INFO L290 TraceCheckUtils]: 125: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,248 INFO L290 TraceCheckUtils]: 124: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,248 INFO L272 TraceCheckUtils]: 123: Hoare triple {121061#(< ~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)); {120622#true} is VALID [2022-04-08 06:12:27,249 INFO L290 TraceCheckUtils]: 122: Hoare triple {121061#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {121061#(< ~counter~0 20)} is VALID [2022-04-08 06:12:27,252 INFO L290 TraceCheckUtils]: 121: Hoare triple {121086#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {121061#(< ~counter~0 20)} is VALID [2022-04-08 06:12:27,253 INFO L290 TraceCheckUtils]: 120: Hoare triple {121086#(< ~counter~0 19)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {121086#(< ~counter~0 19)} is VALID [2022-04-08 06:12:27,253 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {120622#true} {121086#(< ~counter~0 19)} #98#return; {121086#(< ~counter~0 19)} is VALID [2022-04-08 06:12:27,254 INFO L290 TraceCheckUtils]: 118: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,254 INFO L290 TraceCheckUtils]: 117: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,254 INFO L290 TraceCheckUtils]: 116: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,254 INFO L272 TraceCheckUtils]: 115: Hoare triple {121086#(< ~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)); {120622#true} is VALID [2022-04-08 06:12:27,254 INFO L290 TraceCheckUtils]: 114: Hoare triple {121086#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {121086#(< ~counter~0 19)} is VALID [2022-04-08 06:12:27,256 INFO L290 TraceCheckUtils]: 113: Hoare triple {121111#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {121086#(< ~counter~0 19)} is VALID [2022-04-08 06:12:27,257 INFO L290 TraceCheckUtils]: 112: Hoare triple {121111#(< ~counter~0 18)} assume !(~r~0 > 0); {121111#(< ~counter~0 18)} is VALID [2022-04-08 06:12:27,257 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {120622#true} {121111#(< ~counter~0 18)} #96#return; {121111#(< ~counter~0 18)} is VALID [2022-04-08 06:12:27,257 INFO L290 TraceCheckUtils]: 110: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,257 INFO L290 TraceCheckUtils]: 109: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,258 INFO L290 TraceCheckUtils]: 108: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,258 INFO L272 TraceCheckUtils]: 107: Hoare triple {121111#(< ~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)); {120622#true} is VALID [2022-04-08 06:12:27,258 INFO L290 TraceCheckUtils]: 106: Hoare triple {121111#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {121111#(< ~counter~0 18)} is VALID [2022-04-08 06:12:27,259 INFO L290 TraceCheckUtils]: 105: Hoare triple {121136#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {121111#(< ~counter~0 18)} is VALID [2022-04-08 06:12:27,259 INFO L290 TraceCheckUtils]: 104: Hoare triple {121136#(< ~counter~0 17)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {121136#(< ~counter~0 17)} is VALID [2022-04-08 06:12:27,260 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {120622#true} {121136#(< ~counter~0 17)} #96#return; {121136#(< ~counter~0 17)} is VALID [2022-04-08 06:12:27,260 INFO L290 TraceCheckUtils]: 102: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,260 INFO L290 TraceCheckUtils]: 101: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,260 INFO L290 TraceCheckUtils]: 100: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,260 INFO L272 TraceCheckUtils]: 99: Hoare triple {121136#(< ~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)); {120622#true} is VALID [2022-04-08 06:12:27,260 INFO L290 TraceCheckUtils]: 98: Hoare triple {121136#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {121136#(< ~counter~0 17)} is VALID [2022-04-08 06:12:27,262 INFO L290 TraceCheckUtils]: 97: Hoare triple {121161#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {121136#(< ~counter~0 17)} is VALID [2022-04-08 06:12:27,262 INFO L290 TraceCheckUtils]: 96: Hoare triple {121161#(< ~counter~0 16)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {121161#(< ~counter~0 16)} is VALID [2022-04-08 06:12:27,262 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {120622#true} {121161#(< ~counter~0 16)} #96#return; {121161#(< ~counter~0 16)} is VALID [2022-04-08 06:12:27,262 INFO L290 TraceCheckUtils]: 94: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,263 INFO L290 TraceCheckUtils]: 93: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,263 INFO L290 TraceCheckUtils]: 92: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,263 INFO L272 TraceCheckUtils]: 91: Hoare triple {121161#(< ~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)); {120622#true} is VALID [2022-04-08 06:12:27,263 INFO L290 TraceCheckUtils]: 90: Hoare triple {121161#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {121161#(< ~counter~0 16)} is VALID [2022-04-08 06:12:27,264 INFO L290 TraceCheckUtils]: 89: Hoare triple {121004#(<= ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {121161#(< ~counter~0 16)} is VALID [2022-04-08 06:12:27,265 INFO L290 TraceCheckUtils]: 88: Hoare triple {121004#(<= ~counter~0 14)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {121004#(<= ~counter~0 14)} is VALID [2022-04-08 06:12:27,265 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {120622#true} {121004#(<= ~counter~0 14)} #96#return; {121004#(<= ~counter~0 14)} is VALID [2022-04-08 06:12:27,265 INFO L290 TraceCheckUtils]: 86: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,265 INFO L290 TraceCheckUtils]: 85: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,265 INFO L290 TraceCheckUtils]: 84: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,265 INFO L272 TraceCheckUtils]: 83: Hoare triple {121004#(<= ~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)); {120622#true} is VALID [2022-04-08 06:12:27,266 INFO L290 TraceCheckUtils]: 82: Hoare triple {121004#(<= ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {121004#(<= ~counter~0 14)} is VALID [2022-04-08 06:12:27,267 INFO L290 TraceCheckUtils]: 81: Hoare triple {120979#(<= ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {121004#(<= ~counter~0 14)} is VALID [2022-04-08 06:12:27,267 INFO L290 TraceCheckUtils]: 80: Hoare triple {120979#(<= ~counter~0 13)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {120979#(<= ~counter~0 13)} is VALID [2022-04-08 06:12:27,267 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {120622#true} {120979#(<= ~counter~0 13)} #96#return; {120979#(<= ~counter~0 13)} is VALID [2022-04-08 06:12:27,268 INFO L290 TraceCheckUtils]: 78: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,268 INFO L290 TraceCheckUtils]: 77: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,268 INFO L290 TraceCheckUtils]: 76: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,268 INFO L272 TraceCheckUtils]: 75: Hoare triple {120979#(<= ~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)); {120622#true} is VALID [2022-04-08 06:12:27,268 INFO L290 TraceCheckUtils]: 74: Hoare triple {120979#(<= ~counter~0 13)} assume !!(#t~post7 < 20);havoc #t~post7; {120979#(<= ~counter~0 13)} is VALID [2022-04-08 06:12:27,270 INFO L290 TraceCheckUtils]: 73: Hoare triple {120954#(<= ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120979#(<= ~counter~0 13)} is VALID [2022-04-08 06:12:27,270 INFO L290 TraceCheckUtils]: 72: Hoare triple {120954#(<= ~counter~0 12)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {120954#(<= ~counter~0 12)} is VALID [2022-04-08 06:12:27,271 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {120622#true} {120954#(<= ~counter~0 12)} #96#return; {120954#(<= ~counter~0 12)} is VALID [2022-04-08 06:12:27,271 INFO L290 TraceCheckUtils]: 70: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,271 INFO L290 TraceCheckUtils]: 69: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,271 INFO L290 TraceCheckUtils]: 68: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,271 INFO L272 TraceCheckUtils]: 67: Hoare triple {120954#(<= ~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)); {120622#true} is VALID [2022-04-08 06:12:27,271 INFO L290 TraceCheckUtils]: 66: Hoare triple {120954#(<= ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {120954#(<= ~counter~0 12)} is VALID [2022-04-08 06:12:27,273 INFO L290 TraceCheckUtils]: 65: Hoare triple {120929#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120954#(<= ~counter~0 12)} is VALID [2022-04-08 06:12:27,273 INFO L290 TraceCheckUtils]: 64: Hoare triple {120929#(<= ~counter~0 11)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {120929#(<= ~counter~0 11)} is VALID [2022-04-08 06:12:27,273 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {120622#true} {120929#(<= ~counter~0 11)} #96#return; {120929#(<= ~counter~0 11)} is VALID [2022-04-08 06:12:27,273 INFO L290 TraceCheckUtils]: 62: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,274 INFO L290 TraceCheckUtils]: 61: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,274 INFO L290 TraceCheckUtils]: 60: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,274 INFO L272 TraceCheckUtils]: 59: Hoare triple {120929#(<= ~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)); {120622#true} is VALID [2022-04-08 06:12:27,274 INFO L290 TraceCheckUtils]: 58: Hoare triple {120929#(<= ~counter~0 11)} assume !!(#t~post7 < 20);havoc #t~post7; {120929#(<= ~counter~0 11)} is VALID [2022-04-08 06:12:27,275 INFO L290 TraceCheckUtils]: 57: Hoare triple {120904#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120929#(<= ~counter~0 11)} is VALID [2022-04-08 06:12:27,275 INFO L290 TraceCheckUtils]: 56: Hoare triple {120904#(<= ~counter~0 10)} assume !!(0 != ~r~0); {120904#(<= ~counter~0 10)} is VALID [2022-04-08 06:12:27,276 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {120622#true} {120904#(<= ~counter~0 10)} #94#return; {120904#(<= ~counter~0 10)} is VALID [2022-04-08 06:12:27,276 INFO L290 TraceCheckUtils]: 54: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,276 INFO L290 TraceCheckUtils]: 53: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,276 INFO L290 TraceCheckUtils]: 52: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,276 INFO L272 TraceCheckUtils]: 51: Hoare triple {120904#(<= ~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)); {120622#true} is VALID [2022-04-08 06:12:27,276 INFO L290 TraceCheckUtils]: 50: Hoare triple {120904#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {120904#(<= ~counter~0 10)} is VALID [2022-04-08 06:12:27,277 INFO L290 TraceCheckUtils]: 49: Hoare triple {120879#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {120904#(<= ~counter~0 10)} is VALID [2022-04-08 06:12:27,277 INFO L290 TraceCheckUtils]: 48: Hoare triple {120879#(<= ~counter~0 9)} assume !(~r~0 < 0); {120879#(<= ~counter~0 9)} is VALID [2022-04-08 06:12:27,278 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {120622#true} {120879#(<= ~counter~0 9)} #98#return; {120879#(<= ~counter~0 9)} is VALID [2022-04-08 06:12:27,278 INFO L290 TraceCheckUtils]: 46: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,278 INFO L290 TraceCheckUtils]: 45: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,278 INFO L290 TraceCheckUtils]: 44: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,278 INFO L272 TraceCheckUtils]: 43: Hoare triple {120879#(<= ~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)); {120622#true} is VALID [2022-04-08 06:12:27,278 INFO L290 TraceCheckUtils]: 42: Hoare triple {120879#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {120879#(<= ~counter~0 9)} is VALID [2022-04-08 06:12:27,280 INFO L290 TraceCheckUtils]: 41: Hoare triple {120854#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {120879#(<= ~counter~0 9)} is VALID [2022-04-08 06:12:27,280 INFO L290 TraceCheckUtils]: 40: Hoare triple {120854#(<= ~counter~0 8)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {120854#(<= ~counter~0 8)} is VALID [2022-04-08 06:12:27,280 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {120622#true} {120854#(<= ~counter~0 8)} #98#return; {120854#(<= ~counter~0 8)} is VALID [2022-04-08 06:12:27,280 INFO L290 TraceCheckUtils]: 38: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,280 INFO L290 TraceCheckUtils]: 37: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,281 INFO L290 TraceCheckUtils]: 36: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,281 INFO L272 TraceCheckUtils]: 35: Hoare triple {120854#(<= ~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)); {120622#true} is VALID [2022-04-08 06:12:27,281 INFO L290 TraceCheckUtils]: 34: Hoare triple {120854#(<= ~counter~0 8)} assume !!(#t~post8 < 20);havoc #t~post8; {120854#(<= ~counter~0 8)} is VALID [2022-04-08 06:12:27,282 INFO L290 TraceCheckUtils]: 33: Hoare triple {120829#(<= ~counter~0 7)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {120854#(<= ~counter~0 8)} is VALID [2022-04-08 06:12:27,283 INFO L290 TraceCheckUtils]: 32: Hoare triple {120829#(<= ~counter~0 7)} assume !(~r~0 > 0); {120829#(<= ~counter~0 7)} is VALID [2022-04-08 06:12:27,283 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {120622#true} {120829#(<= ~counter~0 7)} #96#return; {120829#(<= ~counter~0 7)} is VALID [2022-04-08 06:12:27,283 INFO L290 TraceCheckUtils]: 30: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,283 INFO L290 TraceCheckUtils]: 29: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,283 INFO L290 TraceCheckUtils]: 28: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,283 INFO L272 TraceCheckUtils]: 27: Hoare triple {120829#(<= ~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)); {120622#true} is VALID [2022-04-08 06:12:27,284 INFO L290 TraceCheckUtils]: 26: Hoare triple {120829#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {120829#(<= ~counter~0 7)} is VALID [2022-04-08 06:12:27,285 INFO L290 TraceCheckUtils]: 25: Hoare triple {120804#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120829#(<= ~counter~0 7)} is VALID [2022-04-08 06:12:27,285 INFO L290 TraceCheckUtils]: 24: Hoare triple {120804#(<= ~counter~0 6)} assume !!(0 != ~r~0); {120804#(<= ~counter~0 6)} is VALID [2022-04-08 06:12:27,286 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {120622#true} {120804#(<= ~counter~0 6)} #94#return; {120804#(<= ~counter~0 6)} is VALID [2022-04-08 06:12:27,286 INFO L290 TraceCheckUtils]: 22: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,286 INFO L290 TraceCheckUtils]: 21: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,286 INFO L290 TraceCheckUtils]: 20: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,286 INFO L272 TraceCheckUtils]: 19: Hoare triple {120804#(<= ~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)); {120622#true} is VALID [2022-04-08 06:12:27,286 INFO L290 TraceCheckUtils]: 18: Hoare triple {120804#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {120804#(<= ~counter~0 6)} is VALID [2022-04-08 06:12:27,288 INFO L290 TraceCheckUtils]: 17: Hoare triple {120779#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {120804#(<= ~counter~0 6)} is VALID [2022-04-08 06:12:27,288 INFO L290 TraceCheckUtils]: 16: Hoare triple {120779#(<= ~counter~0 5)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:27,288 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {120622#true} {120779#(<= ~counter~0 5)} #92#return; {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:27,288 INFO L290 TraceCheckUtils]: 14: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,288 INFO L290 TraceCheckUtils]: 13: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,288 INFO L290 TraceCheckUtils]: 12: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,288 INFO L272 TraceCheckUtils]: 11: Hoare triple {120779#(<= ~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)); {120622#true} is VALID [2022-04-08 06:12:27,289 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {120622#true} {120779#(<= ~counter~0 5)} #90#return; {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:27,289 INFO L290 TraceCheckUtils]: 9: Hoare triple {120622#true} assume true; {120622#true} is VALID [2022-04-08 06:12:27,289 INFO L290 TraceCheckUtils]: 8: Hoare triple {120622#true} assume !(0 == ~cond); {120622#true} is VALID [2022-04-08 06:12:27,289 INFO L290 TraceCheckUtils]: 7: Hoare triple {120622#true} ~cond := #in~cond; {120622#true} is VALID [2022-04-08 06:12:27,289 INFO L272 TraceCheckUtils]: 6: Hoare triple {120779#(<= ~counter~0 5)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {120622#true} is VALID [2022-04-08 06:12:27,289 INFO L290 TraceCheckUtils]: 5: Hoare triple {120779#(<= ~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; {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:27,290 INFO L272 TraceCheckUtils]: 4: Hoare triple {120779#(<= ~counter~0 5)} call #t~ret9 := main(); {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:27,290 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {120779#(<= ~counter~0 5)} {120622#true} #102#return; {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:27,290 INFO L290 TraceCheckUtils]: 2: Hoare triple {120779#(<= ~counter~0 5)} assume true; {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:27,291 INFO L290 TraceCheckUtils]: 1: Hoare triple {120622#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {120779#(<= ~counter~0 5)} is VALID [2022-04-08 06:12:27,291 INFO L272 TraceCheckUtils]: 0: Hoare triple {120622#true} call ULTIMATE.init(); {120622#true} is VALID [2022-04-08 06:12:27,292 INFO L134 CoverageAnalysis]: Checked inductivity of 540 backedges. 28 proven. 144 refuted. 0 times theorem prover too weak. 368 trivial. 0 not checked. [2022-04-08 06:12:27,292 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:12:27,292 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1487977266] [2022-04-08 06:12:27,292 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:12:27,292 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [879027248] [2022-04-08 06:12:27,292 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [879027248] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:12:27,292 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:12:27,292 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18] total 24 [2022-04-08 06:12:27,292 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:12:27,293 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1338762497] [2022-04-08 06:12:27,293 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1338762497] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:12:27,293 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:12:27,293 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-08 06:12:27,293 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1714962799] [2022-04-08 06:12:27,293 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:12:27,293 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 5.333333333333333) internal successors, (96), 17 states have internal predecessors, (96), 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 135 [2022-04-08 06:12:27,293 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:12:27,293 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 5.333333333333333) internal successors, (96), 17 states have internal predecessors, (96), 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:12:27,459 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:12:27,459 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-08 06:12:27,459 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:12:27,460 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-08 06:12:27,460 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:12:27,461 INFO L87 Difference]: Start difference. First operand 727 states and 945 transitions. Second operand has 18 states, 18 states have (on average 5.333333333333333) internal successors, (96), 17 states have internal predecessors, (96), 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:12:31,328 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:12:31,328 INFO L93 Difference]: Finished difference Result 782 states and 1018 transitions. [2022-04-08 06:12:31,328 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-04-08 06:12:31,328 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 5.333333333333333) internal successors, (96), 17 states have internal predecessors, (96), 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 135 [2022-04-08 06:12:31,328 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:12:31,328 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 5.333333333333333) internal successors, (96), 17 states have internal predecessors, (96), 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:12:31,330 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 294 transitions. [2022-04-08 06:12:31,330 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 5.333333333333333) internal successors, (96), 17 states have internal predecessors, (96), 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:12:31,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 294 transitions. [2022-04-08 06:12:31,332 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 294 transitions. [2022-04-08 06:12:31,661 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 294 edges. 294 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:12:31,695 INFO L225 Difference]: With dead ends: 782 [2022-04-08 06:12:31,696 INFO L226 Difference]: Without dead ends: 777 [2022-04-08 06:12:31,696 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 280 GetRequests, 246 SyntacticMatches, 1 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 93 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=459, Invalid=731, Unknown=0, NotChecked=0, Total=1190 [2022-04-08 06:12:31,696 INFO L913 BasicCegarLoop]: 72 mSDtfsCounter, 206 mSDsluCounter, 241 mSDsCounter, 0 mSdLazyCounter, 195 mSolverCounterSat, 175 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 206 SdHoareTripleChecker+Valid, 313 SdHoareTripleChecker+Invalid, 370 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 175 IncrementalHoareTripleChecker+Valid, 195 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-08 06:12:31,696 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [206 Valid, 313 Invalid, 370 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [175 Valid, 195 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-08 06:12:31,699 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 777 states. [2022-04-08 06:12:33,884 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 777 to 755. [2022-04-08 06:12:33,884 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:12:33,885 INFO L82 GeneralOperation]: Start isEquivalent. First operand 777 states. Second operand has 755 states, 561 states have (on average 1.1800356506238858) internal successors, (662), 578 states have internal predecessors, (662), 163 states have call successors, (163), 32 states have call predecessors, (163), 30 states have return successors, (161), 144 states have call predecessors, (161), 161 states have call successors, (161) [2022-04-08 06:12:33,885 INFO L74 IsIncluded]: Start isIncluded. First operand 777 states. Second operand has 755 states, 561 states have (on average 1.1800356506238858) internal successors, (662), 578 states have internal predecessors, (662), 163 states have call successors, (163), 32 states have call predecessors, (163), 30 states have return successors, (161), 144 states have call predecessors, (161), 161 states have call successors, (161) [2022-04-08 06:12:33,886 INFO L87 Difference]: Start difference. First operand 777 states. Second operand has 755 states, 561 states have (on average 1.1800356506238858) internal successors, (662), 578 states have internal predecessors, (662), 163 states have call successors, (163), 32 states have call predecessors, (163), 30 states have return successors, (161), 144 states have call predecessors, (161), 161 states have call successors, (161) [2022-04-08 06:12:33,908 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:12:33,909 INFO L93 Difference]: Finished difference Result 777 states and 1012 transitions. [2022-04-08 06:12:33,909 INFO L276 IsEmpty]: Start isEmpty. Operand 777 states and 1012 transitions. [2022-04-08 06:12:33,909 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:12:33,910 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:12:33,910 INFO L74 IsIncluded]: Start isIncluded. First operand has 755 states, 561 states have (on average 1.1800356506238858) internal successors, (662), 578 states have internal predecessors, (662), 163 states have call successors, (163), 32 states have call predecessors, (163), 30 states have return successors, (161), 144 states have call predecessors, (161), 161 states have call successors, (161) Second operand 777 states. [2022-04-08 06:12:33,911 INFO L87 Difference]: Start difference. First operand has 755 states, 561 states have (on average 1.1800356506238858) internal successors, (662), 578 states have internal predecessors, (662), 163 states have call successors, (163), 32 states have call predecessors, (163), 30 states have return successors, (161), 144 states have call predecessors, (161), 161 states have call successors, (161) Second operand 777 states. [2022-04-08 06:12:33,933 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:12:33,933 INFO L93 Difference]: Finished difference Result 777 states and 1012 transitions. [2022-04-08 06:12:33,934 INFO L276 IsEmpty]: Start isEmpty. Operand 777 states and 1012 transitions. [2022-04-08 06:12:33,934 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:12:33,934 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:12:33,934 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:12:33,935 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:12:33,935 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 755 states, 561 states have (on average 1.1800356506238858) internal successors, (662), 578 states have internal predecessors, (662), 163 states have call successors, (163), 32 states have call predecessors, (163), 30 states have return successors, (161), 144 states have call predecessors, (161), 161 states have call successors, (161) [2022-04-08 06:12:33,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 755 states to 755 states and 986 transitions. [2022-04-08 06:12:33,962 INFO L78 Accepts]: Start accepts. Automaton has 755 states and 986 transitions. Word has length 135 [2022-04-08 06:12:33,962 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:12:33,962 INFO L478 AbstractCegarLoop]: Abstraction has 755 states and 986 transitions. [2022-04-08 06:12:33,962 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 5.333333333333333) internal successors, (96), 17 states have internal predecessors, (96), 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:12:33,962 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 755 states and 986 transitions. [2022-04-08 06:12:52,598 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 986 edges. 983 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-08 06:12:52,598 INFO L276 IsEmpty]: Start isEmpty. Operand 755 states and 986 transitions. [2022-04-08 06:12:52,599 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 138 [2022-04-08 06:12:52,599 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:12:52,599 INFO L499 BasicCegarLoop]: trace histogram [15, 14, 14, 6, 6, 6, 6, 6, 5, 5, 5, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:12:52,616 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (47)] Forceful destruction successful, exit code 0 [2022-04-08 06:12:52,809 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable45,47 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:12:52,810 INFO L403 AbstractCegarLoop]: === Iteration 47 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:12:52,810 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:12:52,810 INFO L85 PathProgramCache]: Analyzing trace with hash -972958086, now seen corresponding path program 21 times [2022-04-08 06:12:52,810 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:12:52,810 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1057976727] [2022-04-08 06:12:52,810 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:12:52,810 INFO L85 PathProgramCache]: Analyzing trace with hash -972958086, now seen corresponding path program 22 times [2022-04-08 06:12:52,811 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:12:52,811 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [708732255] [2022-04-08 06:12:52,811 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:12:52,811 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:12:52,824 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:12:52,824 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1436823901] [2022-04-08 06:12:52,824 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:12:52,824 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:12:52,824 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:12:52,825 INFO L229 MonitoredProcess]: Starting monitored process 48 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:12:52,826 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (48)] Waiting until timeout for monitored process [2022-04-08 06:12:52,932 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:12:52,932 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:12:52,933 INFO L263 TraceCheckSpWp]: Trace formula consists of 283 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-08 06:12:52,954 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:12:52,955 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:15:02,090 INFO L272 TraceCheckUtils]: 0: Hoare triple {126105#true} call ULTIMATE.init(); {126105#true} is VALID [2022-04-08 06:15:02,091 INFO L290 TraceCheckUtils]: 1: Hoare triple {126105#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {126105#true} is VALID [2022-04-08 06:15:02,091 INFO L290 TraceCheckUtils]: 2: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:02,091 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {126105#true} {126105#true} #102#return; {126105#true} is VALID [2022-04-08 06:15:02,091 INFO L272 TraceCheckUtils]: 4: Hoare triple {126105#true} call #t~ret9 := main(); {126105#true} is VALID [2022-04-08 06:15:02,091 INFO L290 TraceCheckUtils]: 5: Hoare triple {126105#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; {126105#true} is VALID [2022-04-08 06:15:02,091 INFO L272 TraceCheckUtils]: 6: Hoare triple {126105#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:02,091 INFO L290 TraceCheckUtils]: 7: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:02,091 INFO L290 TraceCheckUtils]: 8: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:02,091 INFO L290 TraceCheckUtils]: 9: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:02,091 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {126105#true} {126105#true} #90#return; {126105#true} is VALID [2022-04-08 06:15:02,092 INFO L272 TraceCheckUtils]: 11: Hoare triple {126105#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)); {126105#true} is VALID [2022-04-08 06:15:02,092 INFO L290 TraceCheckUtils]: 12: Hoare triple {126105#true} ~cond := #in~cond; {126146#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 06:15:02,092 INFO L290 TraceCheckUtils]: 13: Hoare triple {126146#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {126150#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:15:02,092 INFO L290 TraceCheckUtils]: 14: Hoare triple {126150#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {126150#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:15:02,093 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {126150#(not (= |assume_abort_if_not_#in~cond| 0))} {126105#true} #92#return; {126157#(and (<= 0 main_~A~0) (= (mod main_~A~0 2) 1))} is VALID [2022-04-08 06:15:04,108 WARN L290 TraceCheckUtils]: 16: Hoare triple {126157#(and (<= 0 main_~A~0) (= (mod main_~A~0 2) 1))} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} is UNKNOWN [2022-04-08 06:15:04,110 INFO L290 TraceCheckUtils]: 17: Hoare triple {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} is VALID [2022-04-08 06:15:04,110 INFO L290 TraceCheckUtils]: 18: Hoare triple {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} assume !!(#t~post6 < 20);havoc #t~post6; {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} is VALID [2022-04-08 06:15:04,110 INFO L272 TraceCheckUtils]: 19: Hoare triple {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 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)); {126105#true} is VALID [2022-04-08 06:15:04,110 INFO L290 TraceCheckUtils]: 20: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:04,110 INFO L290 TraceCheckUtils]: 21: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:04,110 INFO L290 TraceCheckUtils]: 22: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:04,111 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {126105#true} {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} #94#return; {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} is VALID [2022-04-08 06:15:04,111 INFO L290 TraceCheckUtils]: 24: Hoare triple {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} assume !!(0 != ~r~0); {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} is VALID [2022-04-08 06:15:04,112 INFO L290 TraceCheckUtils]: 25: Hoare triple {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} is VALID [2022-04-08 06:15:04,112 INFO L290 TraceCheckUtils]: 26: Hoare triple {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} assume !!(#t~post7 < 20);havoc #t~post7; {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} is VALID [2022-04-08 06:15:04,112 INFO L272 TraceCheckUtils]: 27: Hoare triple {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 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)); {126105#true} is VALID [2022-04-08 06:15:04,112 INFO L290 TraceCheckUtils]: 28: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:04,112 INFO L290 TraceCheckUtils]: 29: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:04,112 INFO L290 TraceCheckUtils]: 30: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:04,113 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {126105#true} {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} #96#return; {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} is VALID [2022-04-08 06:15:04,113 INFO L290 TraceCheckUtils]: 32: Hoare triple {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} assume !(~r~0 > 0); {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} is VALID [2022-04-08 06:15:04,114 INFO L290 TraceCheckUtils]: 33: Hoare triple {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} is VALID [2022-04-08 06:15:04,114 INFO L290 TraceCheckUtils]: 34: Hoare triple {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} assume !!(#t~post8 < 20);havoc #t~post8; {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} is VALID [2022-04-08 06:15:04,114 INFO L272 TraceCheckUtils]: 35: Hoare triple {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 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)); {126105#true} is VALID [2022-04-08 06:15:04,114 INFO L290 TraceCheckUtils]: 36: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:04,114 INFO L290 TraceCheckUtils]: 37: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:04,114 INFO L290 TraceCheckUtils]: 38: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:04,115 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {126105#true} {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} #98#return; {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} is VALID [2022-04-08 06:15:05,135 INFO L290 TraceCheckUtils]: 40: Hoare triple {126161#(and (= (mod (+ main_~u~0 1) 2) 0) (<= main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) (= main_~v~0 1) (= (mod (+ main_~r~0 (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) 2) 1))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} is VALID [2022-04-08 06:15:05,137 INFO L290 TraceCheckUtils]: 41: Hoare triple {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} is VALID [2022-04-08 06:15:05,145 INFO L290 TraceCheckUtils]: 42: Hoare triple {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} assume !!(#t~post8 < 20);havoc #t~post8; {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} is VALID [2022-04-08 06:15:05,145 INFO L272 TraceCheckUtils]: 43: Hoare triple {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:05,145 INFO L290 TraceCheckUtils]: 44: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:05,145 INFO L290 TraceCheckUtils]: 45: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:05,145 INFO L290 TraceCheckUtils]: 46: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:05,146 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {126105#true} {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} #98#return; {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} is VALID [2022-04-08 06:15:06,257 WARN L290 TraceCheckUtils]: 48: Hoare triple {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} assume !(~r~0 < 0); {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} is UNKNOWN [2022-04-08 06:15:06,714 INFO L290 TraceCheckUtils]: 49: Hoare triple {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} is VALID [2022-04-08 06:15:06,723 INFO L290 TraceCheckUtils]: 50: Hoare triple {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} assume !!(#t~post6 < 20);havoc #t~post6; {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} is VALID [2022-04-08 06:15:06,723 INFO L272 TraceCheckUtils]: 51: Hoare triple {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:06,723 INFO L290 TraceCheckUtils]: 52: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:06,723 INFO L290 TraceCheckUtils]: 53: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:06,723 INFO L290 TraceCheckUtils]: 54: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:06,726 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {126105#true} {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} #94#return; {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} is VALID [2022-04-08 06:15:06,727 INFO L290 TraceCheckUtils]: 56: Hoare triple {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} assume !!(0 != ~r~0); {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} is VALID [2022-04-08 06:15:06,728 INFO L290 TraceCheckUtils]: 57: Hoare triple {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} is VALID [2022-04-08 06:15:06,729 INFO L290 TraceCheckUtils]: 58: Hoare triple {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} assume !!(#t~post7 < 20);havoc #t~post7; {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} is VALID [2022-04-08 06:15:06,729 INFO L272 TraceCheckUtils]: 59: Hoare triple {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:06,729 INFO L290 TraceCheckUtils]: 60: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:06,729 INFO L290 TraceCheckUtils]: 61: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:06,729 INFO L290 TraceCheckUtils]: 62: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:06,730 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {126105#true} {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} #96#return; {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} is VALID [2022-04-08 06:15:06,742 INFO L290 TraceCheckUtils]: 64: Hoare triple {126234#(and (= main_~v~0 1) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (<= (+ main_~r~0 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29) 1) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))))} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {126307#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ main_~r~0 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (<= main_~v~0 3))} is VALID [2022-04-08 06:15:06,767 INFO L290 TraceCheckUtils]: 65: Hoare triple {126307#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ main_~r~0 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (<= main_~v~0 3))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {126307#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ main_~r~0 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (<= main_~v~0 3))} is VALID [2022-04-08 06:15:06,779 INFO L290 TraceCheckUtils]: 66: Hoare triple {126307#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ main_~r~0 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (<= main_~v~0 3))} assume !!(#t~post7 < 20);havoc #t~post7; {126307#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ main_~r~0 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (<= main_~v~0 3))} is VALID [2022-04-08 06:15:06,779 INFO L272 TraceCheckUtils]: 67: Hoare triple {126307#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ main_~r~0 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (<= main_~v~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)); {126105#true} is VALID [2022-04-08 06:15:06,779 INFO L290 TraceCheckUtils]: 68: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:06,779 INFO L290 TraceCheckUtils]: 69: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:06,779 INFO L290 TraceCheckUtils]: 70: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:06,780 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {126105#true} {126307#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ main_~r~0 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (<= main_~v~0 3))} #96#return; {126307#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ main_~r~0 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (<= main_~v~0 3))} is VALID [2022-04-08 06:15:06,781 INFO L290 TraceCheckUtils]: 72: Hoare triple {126307#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (<= (+ main_~r~0 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (<= main_~v~0 3))} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} is VALID [2022-04-08 06:15:06,781 INFO L290 TraceCheckUtils]: 73: Hoare triple {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} is VALID [2022-04-08 06:15:06,795 INFO L290 TraceCheckUtils]: 74: Hoare triple {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} assume !!(#t~post7 < 20);havoc #t~post7; {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} is VALID [2022-04-08 06:15:06,795 INFO L272 TraceCheckUtils]: 75: Hoare triple {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~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)); {126105#true} is VALID [2022-04-08 06:15:06,795 INFO L290 TraceCheckUtils]: 76: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:06,795 INFO L290 TraceCheckUtils]: 77: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:06,795 INFO L290 TraceCheckUtils]: 78: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:06,796 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {126105#true} {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} #96#return; {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} is VALID [2022-04-08 06:15:06,797 INFO L290 TraceCheckUtils]: 80: Hoare triple {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} assume !(~r~0 > 0); {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} is VALID [2022-04-08 06:15:06,797 INFO L290 TraceCheckUtils]: 81: Hoare triple {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} is VALID [2022-04-08 06:15:06,798 INFO L290 TraceCheckUtils]: 82: Hoare triple {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} assume !!(#t~post8 < 20);havoc #t~post8; {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} is VALID [2022-04-08 06:15:06,798 INFO L272 TraceCheckUtils]: 83: Hoare triple {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~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)); {126105#true} is VALID [2022-04-08 06:15:06,798 INFO L290 TraceCheckUtils]: 84: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:06,798 INFO L290 TraceCheckUtils]: 85: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:06,798 INFO L290 TraceCheckUtils]: 86: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:06,798 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {126105#true} {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} #98#return; {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} is VALID [2022-04-08 06:15:06,802 INFO L290 TraceCheckUtils]: 88: Hoare triple {126332#(and (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (<= (+ (* aux_div_v_main_~u~0_152_29 2) 1) main_~u~0) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)))) (< 0 (+ main_~r~0 3)) (<= main_~v~0 5))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} is VALID [2022-04-08 06:15:06,803 INFO L290 TraceCheckUtils]: 89: Hoare triple {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} is VALID [2022-04-08 06:15:06,804 INFO L290 TraceCheckUtils]: 90: Hoare triple {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} assume !!(#t~post8 < 20);havoc #t~post8; {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} is VALID [2022-04-08 06:15:06,805 INFO L272 TraceCheckUtils]: 91: Hoare triple {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~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)); {126105#true} is VALID [2022-04-08 06:15:06,805 INFO L290 TraceCheckUtils]: 92: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:06,805 INFO L290 TraceCheckUtils]: 93: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:06,805 INFO L290 TraceCheckUtils]: 94: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:06,805 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {126105#true} {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} #98#return; {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} is VALID [2022-04-08 06:15:06,807 INFO L290 TraceCheckUtils]: 96: Hoare triple {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} assume !(~r~0 < 0); {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} is VALID [2022-04-08 06:15:06,814 INFO L290 TraceCheckUtils]: 97: Hoare triple {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} is VALID [2022-04-08 06:15:06,820 INFO L290 TraceCheckUtils]: 98: Hoare triple {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} assume !!(#t~post6 < 20);havoc #t~post6; {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} is VALID [2022-04-08 06:15:06,820 INFO L272 TraceCheckUtils]: 99: Hoare triple {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~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)); {126105#true} is VALID [2022-04-08 06:15:06,820 INFO L290 TraceCheckUtils]: 100: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:06,821 INFO L290 TraceCheckUtils]: 101: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:06,821 INFO L290 TraceCheckUtils]: 102: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:06,821 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {126105#true} {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} #94#return; {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} is VALID [2022-04-08 06:15:06,823 INFO L290 TraceCheckUtils]: 104: Hoare triple {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} assume !!(0 != ~r~0); {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} is VALID [2022-04-08 06:15:06,824 INFO L290 TraceCheckUtils]: 105: Hoare triple {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} is VALID [2022-04-08 06:15:06,829 INFO L290 TraceCheckUtils]: 106: Hoare triple {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} assume !!(#t~post7 < 20);havoc #t~post7; {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} is VALID [2022-04-08 06:15:06,830 INFO L272 TraceCheckUtils]: 107: Hoare triple {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~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)); {126105#true} is VALID [2022-04-08 06:15:06,830 INFO L290 TraceCheckUtils]: 108: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:06,830 INFO L290 TraceCheckUtils]: 109: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:06,830 INFO L290 TraceCheckUtils]: 110: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:06,831 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {126105#true} {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} #96#return; {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} is VALID [2022-04-08 06:15:06,832 INFO L290 TraceCheckUtils]: 112: Hoare triple {126381#(and (<= main_~v~0 5) (exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ main_~r~0 2)))))} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} is VALID [2022-04-08 06:15:06,834 INFO L290 TraceCheckUtils]: 113: Hoare triple {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} is VALID [2022-04-08 06:15:06,873 INFO L290 TraceCheckUtils]: 114: Hoare triple {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} assume !!(#t~post7 < 20);havoc #t~post7; {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} is VALID [2022-04-08 06:15:06,873 INFO L272 TraceCheckUtils]: 115: Hoare triple {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:06,873 INFO L290 TraceCheckUtils]: 116: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:06,874 INFO L290 TraceCheckUtils]: 117: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:06,874 INFO L290 TraceCheckUtils]: 118: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:06,874 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {126105#true} {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} #96#return; {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} is VALID [2022-04-08 06:15:06,878 INFO L290 TraceCheckUtils]: 120: Hoare triple {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} assume !(~r~0 > 0); {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} is VALID [2022-04-08 06:15:06,886 INFO L290 TraceCheckUtils]: 121: Hoare triple {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} is VALID [2022-04-08 06:15:06,895 INFO L290 TraceCheckUtils]: 122: Hoare triple {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} assume !!(#t~post8 < 20);havoc #t~post8; {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} is VALID [2022-04-08 06:15:06,895 INFO L272 TraceCheckUtils]: 123: Hoare triple {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:06,895 INFO L290 TraceCheckUtils]: 124: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:06,895 INFO L290 TraceCheckUtils]: 125: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:06,895 INFO L290 TraceCheckUtils]: 126: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:06,896 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {126105#true} {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} #98#return; {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} is VALID [2022-04-08 06:15:06,899 INFO L290 TraceCheckUtils]: 128: Hoare triple {126454#(exists ((aux_div_v_main_~r~0_241_114 Int) (aux_div_v_main_~u~0_152_29 Int)) (and (< (+ 2 (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (+ (* aux_div_v_main_~u~0_152_29 4) (* 2 aux_div_v_main_~r~0_241_114))) (< (+ (* aux_div_v_main_~u~0_152_29 2) (* 2 aux_div_v_main_~r~0_241_114)) (* aux_div_v_main_~u~0_152_29 aux_div_v_main_~u~0_152_29)) (< (* aux_div_v_main_~u~0_152_29 2) (+ 7 main_~r~0))))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {126106#false} is VALID [2022-04-08 06:15:06,899 INFO L290 TraceCheckUtils]: 129: Hoare triple {126106#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126106#false} is VALID [2022-04-08 06:15:06,899 INFO L290 TraceCheckUtils]: 130: Hoare triple {126106#false} assume !(#t~post8 < 20);havoc #t~post8; {126106#false} is VALID [2022-04-08 06:15:06,900 INFO L290 TraceCheckUtils]: 131: Hoare triple {126106#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {126106#false} is VALID [2022-04-08 06:15:06,900 INFO L290 TraceCheckUtils]: 132: Hoare triple {126106#false} assume !(#t~post6 < 20);havoc #t~post6; {126106#false} is VALID [2022-04-08 06:15:06,900 INFO L272 TraceCheckUtils]: 133: Hoare triple {126106#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)); {126106#false} is VALID [2022-04-08 06:15:06,900 INFO L290 TraceCheckUtils]: 134: Hoare triple {126106#false} ~cond := #in~cond; {126106#false} is VALID [2022-04-08 06:15:06,900 INFO L290 TraceCheckUtils]: 135: Hoare triple {126106#false} assume 0 == ~cond; {126106#false} is VALID [2022-04-08 06:15:06,900 INFO L290 TraceCheckUtils]: 136: Hoare triple {126106#false} assume !false; {126106#false} is VALID [2022-04-08 06:15:06,901 INFO L134 CoverageAnalysis]: Checked inductivity of 524 backedges. 47 proven. 112 refuted. 0 times theorem prover too weak. 365 trivial. 0 not checked. [2022-04-08 06:15:06,901 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:15:12,301 INFO L290 TraceCheckUtils]: 136: Hoare triple {126106#false} assume !false; {126106#false} is VALID [2022-04-08 06:15:12,301 INFO L290 TraceCheckUtils]: 135: Hoare triple {126106#false} assume 0 == ~cond; {126106#false} is VALID [2022-04-08 06:15:12,301 INFO L290 TraceCheckUtils]: 134: Hoare triple {126106#false} ~cond := #in~cond; {126106#false} is VALID [2022-04-08 06:15:12,301 INFO L272 TraceCheckUtils]: 133: Hoare triple {126106#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)); {126106#false} is VALID [2022-04-08 06:15:12,301 INFO L290 TraceCheckUtils]: 132: Hoare triple {126106#false} assume !(#t~post6 < 20);havoc #t~post6; {126106#false} is VALID [2022-04-08 06:15:12,301 INFO L290 TraceCheckUtils]: 131: Hoare triple {126106#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {126106#false} is VALID [2022-04-08 06:15:12,301 INFO L290 TraceCheckUtils]: 130: Hoare triple {126106#false} assume !(#t~post8 < 20);havoc #t~post8; {126106#false} is VALID [2022-04-08 06:15:12,301 INFO L290 TraceCheckUtils]: 129: Hoare triple {126106#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126106#false} is VALID [2022-04-08 06:15:12,301 INFO L290 TraceCheckUtils]: 128: Hoare triple {126551#(not (< main_~r~0 0))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {126106#false} is VALID [2022-04-08 06:15:12,302 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {126105#true} {126551#(not (< main_~r~0 0))} #98#return; {126551#(not (< main_~r~0 0))} is VALID [2022-04-08 06:15:12,302 INFO L290 TraceCheckUtils]: 126: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,302 INFO L290 TraceCheckUtils]: 125: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:12,302 INFO L290 TraceCheckUtils]: 124: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:12,302 INFO L272 TraceCheckUtils]: 123: Hoare triple {126551#(not (< main_~r~0 0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:12,302 INFO L290 TraceCheckUtils]: 122: Hoare triple {126551#(not (< main_~r~0 0))} assume !!(#t~post8 < 20);havoc #t~post8; {126551#(not (< main_~r~0 0))} is VALID [2022-04-08 06:15:12,303 INFO L290 TraceCheckUtils]: 121: Hoare triple {126551#(not (< main_~r~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126551#(not (< main_~r~0 0))} is VALID [2022-04-08 06:15:12,303 INFO L290 TraceCheckUtils]: 120: Hoare triple {126551#(not (< main_~r~0 0))} assume !(~r~0 > 0); {126551#(not (< main_~r~0 0))} is VALID [2022-04-08 06:15:12,303 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {126105#true} {126551#(not (< main_~r~0 0))} #96#return; {126551#(not (< main_~r~0 0))} is VALID [2022-04-08 06:15:12,304 INFO L290 TraceCheckUtils]: 118: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,304 INFO L290 TraceCheckUtils]: 117: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:12,304 INFO L290 TraceCheckUtils]: 116: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:12,304 INFO L272 TraceCheckUtils]: 115: Hoare triple {126551#(not (< main_~r~0 0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:12,304 INFO L290 TraceCheckUtils]: 114: Hoare triple {126551#(not (< main_~r~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {126551#(not (< main_~r~0 0))} is VALID [2022-04-08 06:15:12,304 INFO L290 TraceCheckUtils]: 113: Hoare triple {126551#(not (< main_~r~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {126551#(not (< main_~r~0 0))} is VALID [2022-04-08 06:15:12,306 INFO L290 TraceCheckUtils]: 112: Hoare triple {126600#(<= main_~v~0 main_~r~0)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {126551#(not (< main_~r~0 0))} is VALID [2022-04-08 06:15:12,306 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {126105#true} {126600#(<= main_~v~0 main_~r~0)} #96#return; {126600#(<= main_~v~0 main_~r~0)} is VALID [2022-04-08 06:15:12,306 INFO L290 TraceCheckUtils]: 110: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,306 INFO L290 TraceCheckUtils]: 109: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:12,307 INFO L290 TraceCheckUtils]: 108: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:12,307 INFO L272 TraceCheckUtils]: 107: Hoare triple {126600#(<= main_~v~0 main_~r~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:12,307 INFO L290 TraceCheckUtils]: 106: Hoare triple {126600#(<= main_~v~0 main_~r~0)} assume !!(#t~post7 < 20);havoc #t~post7; {126600#(<= main_~v~0 main_~r~0)} is VALID [2022-04-08 06:15:12,307 INFO L290 TraceCheckUtils]: 105: Hoare triple {126600#(<= main_~v~0 main_~r~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {126600#(<= main_~v~0 main_~r~0)} is VALID [2022-04-08 06:15:12,307 INFO L290 TraceCheckUtils]: 104: Hoare triple {126600#(<= main_~v~0 main_~r~0)} assume !!(0 != ~r~0); {126600#(<= main_~v~0 main_~r~0)} is VALID [2022-04-08 06:15:12,308 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {126105#true} {126600#(<= main_~v~0 main_~r~0)} #94#return; {126600#(<= main_~v~0 main_~r~0)} is VALID [2022-04-08 06:15:12,308 INFO L290 TraceCheckUtils]: 102: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,308 INFO L290 TraceCheckUtils]: 101: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:12,308 INFO L290 TraceCheckUtils]: 100: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:12,308 INFO L272 TraceCheckUtils]: 99: Hoare triple {126600#(<= main_~v~0 main_~r~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:12,323 INFO L290 TraceCheckUtils]: 98: Hoare triple {126600#(<= main_~v~0 main_~r~0)} assume !!(#t~post6 < 20);havoc #t~post6; {126600#(<= main_~v~0 main_~r~0)} is VALID [2022-04-08 06:15:12,324 INFO L290 TraceCheckUtils]: 97: Hoare triple {126600#(<= main_~v~0 main_~r~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {126600#(<= main_~v~0 main_~r~0)} is VALID [2022-04-08 06:15:12,324 INFO L290 TraceCheckUtils]: 96: Hoare triple {126600#(<= main_~v~0 main_~r~0)} assume !(~r~0 < 0); {126600#(<= main_~v~0 main_~r~0)} is VALID [2022-04-08 06:15:12,324 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {126105#true} {126600#(<= main_~v~0 main_~r~0)} #98#return; {126600#(<= main_~v~0 main_~r~0)} is VALID [2022-04-08 06:15:12,324 INFO L290 TraceCheckUtils]: 94: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,324 INFO L290 TraceCheckUtils]: 93: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:12,325 INFO L290 TraceCheckUtils]: 92: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:12,325 INFO L272 TraceCheckUtils]: 91: Hoare triple {126600#(<= main_~v~0 main_~r~0)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:12,325 INFO L290 TraceCheckUtils]: 90: Hoare triple {126600#(<= main_~v~0 main_~r~0)} assume !!(#t~post8 < 20);havoc #t~post8; {126600#(<= main_~v~0 main_~r~0)} is VALID [2022-04-08 06:15:12,325 INFO L290 TraceCheckUtils]: 89: Hoare triple {126600#(<= main_~v~0 main_~r~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126600#(<= main_~v~0 main_~r~0)} is VALID [2022-04-08 06:15:12,328 INFO L290 TraceCheckUtils]: 88: Hoare triple {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {126600#(<= main_~v~0 main_~r~0)} is VALID [2022-04-08 06:15:12,329 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {126105#true} {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} #98#return; {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:15:12,329 INFO L290 TraceCheckUtils]: 86: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,329 INFO L290 TraceCheckUtils]: 85: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:12,329 INFO L290 TraceCheckUtils]: 84: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:12,329 INFO L272 TraceCheckUtils]: 83: Hoare triple {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:12,329 INFO L290 TraceCheckUtils]: 82: Hoare triple {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} assume !!(#t~post8 < 20);havoc #t~post8; {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:15:12,329 INFO L290 TraceCheckUtils]: 81: Hoare triple {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:15:12,330 INFO L290 TraceCheckUtils]: 80: Hoare triple {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} assume !(~r~0 > 0); {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:15:12,330 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {126105#true} {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} #96#return; {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:15:12,330 INFO L290 TraceCheckUtils]: 78: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,330 INFO L290 TraceCheckUtils]: 77: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:12,330 INFO L290 TraceCheckUtils]: 76: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:12,330 INFO L272 TraceCheckUtils]: 75: Hoare triple {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:12,331 INFO L290 TraceCheckUtils]: 74: Hoare triple {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} assume !!(#t~post7 < 20);havoc #t~post7; {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:15:12,331 INFO L290 TraceCheckUtils]: 73: Hoare triple {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:15:12,332 INFO L290 TraceCheckUtils]: 72: Hoare triple {126722#(or (not (< 0 main_~r~0)) (<= (+ (* main_~v~0 2) 2) (+ main_~u~0 main_~r~0)))} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {126673#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-08 06:15:12,332 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {126105#true} {126722#(or (not (< 0 main_~r~0)) (<= (+ (* main_~v~0 2) 2) (+ main_~u~0 main_~r~0)))} #96#return; {126722#(or (not (< 0 main_~r~0)) (<= (+ (* main_~v~0 2) 2) (+ main_~u~0 main_~r~0)))} is VALID [2022-04-08 06:15:12,333 INFO L290 TraceCheckUtils]: 70: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,333 INFO L290 TraceCheckUtils]: 69: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:12,333 INFO L290 TraceCheckUtils]: 68: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:12,333 INFO L272 TraceCheckUtils]: 67: Hoare triple {126722#(or (not (< 0 main_~r~0)) (<= (+ (* main_~v~0 2) 2) (+ main_~u~0 main_~r~0)))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:12,333 INFO L290 TraceCheckUtils]: 66: Hoare triple {126722#(or (not (< 0 main_~r~0)) (<= (+ (* main_~v~0 2) 2) (+ main_~u~0 main_~r~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {126722#(or (not (< 0 main_~r~0)) (<= (+ (* main_~v~0 2) 2) (+ main_~u~0 main_~r~0)))} is VALID [2022-04-08 06:15:12,333 INFO L290 TraceCheckUtils]: 65: Hoare triple {126722#(or (not (< 0 main_~r~0)) (<= (+ (* main_~v~0 2) 2) (+ main_~u~0 main_~r~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {126722#(or (not (< 0 main_~r~0)) (<= (+ (* main_~v~0 2) 2) (+ main_~u~0 main_~r~0)))} is VALID [2022-04-08 06:15:12,335 INFO L290 TraceCheckUtils]: 64: Hoare triple {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {126722#(or (not (< 0 main_~r~0)) (<= (+ (* main_~v~0 2) 2) (+ main_~u~0 main_~r~0)))} is VALID [2022-04-08 06:15:12,336 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {126105#true} {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} #96#return; {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-08 06:15:12,336 INFO L290 TraceCheckUtils]: 62: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,336 INFO L290 TraceCheckUtils]: 61: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:12,336 INFO L290 TraceCheckUtils]: 60: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:12,336 INFO L272 TraceCheckUtils]: 59: Hoare triple {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~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)); {126105#true} is VALID [2022-04-08 06:15:12,336 INFO L290 TraceCheckUtils]: 58: Hoare triple {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} assume !!(#t~post7 < 20);havoc #t~post7; {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-08 06:15:12,337 INFO L290 TraceCheckUtils]: 57: Hoare triple {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-08 06:15:12,337 INFO L290 TraceCheckUtils]: 56: Hoare triple {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} assume !!(0 != ~r~0); {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-08 06:15:12,337 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {126105#true} {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} #94#return; {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-08 06:15:12,337 INFO L290 TraceCheckUtils]: 54: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,337 INFO L290 TraceCheckUtils]: 53: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:12,338 INFO L290 TraceCheckUtils]: 52: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:12,338 INFO L272 TraceCheckUtils]: 51: Hoare triple {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~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)); {126105#true} is VALID [2022-04-08 06:15:12,338 INFO L290 TraceCheckUtils]: 50: Hoare triple {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} assume !!(#t~post6 < 20);havoc #t~post6; {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-08 06:15:12,338 INFO L290 TraceCheckUtils]: 49: Hoare triple {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-08 06:15:12,339 INFO L290 TraceCheckUtils]: 48: Hoare triple {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} assume !(~r~0 < 0); {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-08 06:15:12,339 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {126105#true} {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} #98#return; {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-08 06:15:12,339 INFO L290 TraceCheckUtils]: 46: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,339 INFO L290 TraceCheckUtils]: 45: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:12,339 INFO L290 TraceCheckUtils]: 44: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:12,339 INFO L272 TraceCheckUtils]: 43: Hoare triple {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~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)); {126105#true} is VALID [2022-04-08 06:15:12,340 INFO L290 TraceCheckUtils]: 42: Hoare triple {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} assume !!(#t~post8 < 20);havoc #t~post8; {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-08 06:15:12,340 INFO L290 TraceCheckUtils]: 41: Hoare triple {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-08 06:15:12,342 INFO L290 TraceCheckUtils]: 40: Hoare triple {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {126747#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-08 06:15:12,343 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {126105#true} {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} #98#return; {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} is VALID [2022-04-08 06:15:12,343 INFO L290 TraceCheckUtils]: 38: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,343 INFO L290 TraceCheckUtils]: 37: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:12,343 INFO L290 TraceCheckUtils]: 36: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:12,343 INFO L272 TraceCheckUtils]: 35: Hoare triple {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:12,344 INFO L290 TraceCheckUtils]: 34: Hoare triple {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} assume !!(#t~post8 < 20);havoc #t~post8; {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} is VALID [2022-04-08 06:15:12,344 INFO L290 TraceCheckUtils]: 33: Hoare triple {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} is VALID [2022-04-08 06:15:12,344 INFO L290 TraceCheckUtils]: 32: Hoare triple {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} assume !(~r~0 > 0); {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} is VALID [2022-04-08 06:15:12,345 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {126105#true} {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} #96#return; {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} is VALID [2022-04-08 06:15:12,345 INFO L290 TraceCheckUtils]: 30: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,345 INFO L290 TraceCheckUtils]: 29: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:12,345 INFO L290 TraceCheckUtils]: 28: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:12,345 INFO L272 TraceCheckUtils]: 27: Hoare triple {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:12,345 INFO L290 TraceCheckUtils]: 26: Hoare triple {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} assume !!(#t~post7 < 20);havoc #t~post7; {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} is VALID [2022-04-08 06:15:12,346 INFO L290 TraceCheckUtils]: 25: Hoare triple {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} is VALID [2022-04-08 06:15:12,346 INFO L290 TraceCheckUtils]: 24: Hoare triple {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} assume !!(0 != ~r~0); {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} is VALID [2022-04-08 06:15:12,346 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {126105#true} {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} #94#return; {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} is VALID [2022-04-08 06:15:12,347 INFO L290 TraceCheckUtils]: 22: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,347 INFO L290 TraceCheckUtils]: 21: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:12,347 INFO L290 TraceCheckUtils]: 20: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:12,347 INFO L272 TraceCheckUtils]: 19: Hoare triple {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:12,347 INFO L290 TraceCheckUtils]: 18: Hoare triple {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} assume !!(#t~post6 < 20);havoc #t~post6; {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} is VALID [2022-04-08 06:15:12,347 INFO L290 TraceCheckUtils]: 17: Hoare triple {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} is VALID [2022-04-08 06:15:12,349 INFO L290 TraceCheckUtils]: 16: Hoare triple {126893#(forall ((main_~R~0 Int)) (or (<= 2 main_~R~0) (<= (+ (* main_~R~0 main_~R~0) (* main_~R~0 2)) main_~A~0) (not (< (* main_~R~0 main_~R~0) main_~A~0))))} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {126820#(or (<= (+ main_~v~0 1) (div (+ (- 1) main_~u~0) 2)) (not (< main_~r~0 0)) (<= (+ main_~u~0 main_~r~0) main_~v~0))} is VALID [2022-04-08 06:15:12,350 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {126150#(not (= |assume_abort_if_not_#in~cond| 0))} {126105#true} #92#return; {126893#(forall ((main_~R~0 Int)) (or (<= 2 main_~R~0) (<= (+ (* main_~R~0 main_~R~0) (* main_~R~0 2)) main_~A~0) (not (< (* main_~R~0 main_~R~0) main_~A~0))))} is VALID [2022-04-08 06:15:12,350 INFO L290 TraceCheckUtils]: 14: Hoare triple {126150#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {126150#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:15:12,350 INFO L290 TraceCheckUtils]: 13: Hoare triple {126906#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {126150#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:15:12,351 INFO L290 TraceCheckUtils]: 12: Hoare triple {126105#true} ~cond := #in~cond; {126906#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-08 06:15:12,351 INFO L272 TraceCheckUtils]: 11: Hoare triple {126105#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)); {126105#true} is VALID [2022-04-08 06:15:12,351 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {126105#true} {126105#true} #90#return; {126105#true} is VALID [2022-04-08 06:15:12,351 INFO L290 TraceCheckUtils]: 9: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,351 INFO L290 TraceCheckUtils]: 8: Hoare triple {126105#true} assume !(0 == ~cond); {126105#true} is VALID [2022-04-08 06:15:12,351 INFO L290 TraceCheckUtils]: 7: Hoare triple {126105#true} ~cond := #in~cond; {126105#true} is VALID [2022-04-08 06:15:12,351 INFO L272 TraceCheckUtils]: 6: Hoare triple {126105#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {126105#true} is VALID [2022-04-08 06:15:12,351 INFO L290 TraceCheckUtils]: 5: Hoare triple {126105#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; {126105#true} is VALID [2022-04-08 06:15:12,351 INFO L272 TraceCheckUtils]: 4: Hoare triple {126105#true} call #t~ret9 := main(); {126105#true} is VALID [2022-04-08 06:15:12,351 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {126105#true} {126105#true} #102#return; {126105#true} is VALID [2022-04-08 06:15:12,351 INFO L290 TraceCheckUtils]: 2: Hoare triple {126105#true} assume true; {126105#true} is VALID [2022-04-08 06:15:12,351 INFO L290 TraceCheckUtils]: 1: Hoare triple {126105#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {126105#true} is VALID [2022-04-08 06:15:12,352 INFO L272 TraceCheckUtils]: 0: Hoare triple {126105#true} call ULTIMATE.init(); {126105#true} is VALID [2022-04-08 06:15:12,352 INFO L134 CoverageAnalysis]: Checked inductivity of 524 backedges. 67 proven. 92 refuted. 0 times theorem prover too weak. 365 trivial. 0 not checked. [2022-04-08 06:15:12,352 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:15:12,352 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [708732255] [2022-04-08 06:15:12,352 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:15:12,352 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1436823901] [2022-04-08 06:15:12,352 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1436823901] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:15:12,352 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:15:12,353 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 19 [2022-04-08 06:15:12,353 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:15:12,353 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1057976727] [2022-04-08 06:15:12,353 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1057976727] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:15:12,353 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:15:12,353 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 06:15:12,353 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1654447284] [2022-04-08 06:15:12,353 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:15:12,353 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.636363636363637) internal successors, (62), 10 states have internal predecessors, (62), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 8 states have call predecessors, (17), 7 states have call successors, (17) Word has length 137 [2022-04-08 06:15:12,353 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:15:12,354 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 5.636363636363637) internal successors, (62), 10 states have internal predecessors, (62), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 8 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 06:15:18,820 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 97 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:15:18,821 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 06:15:18,821 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:15:18,821 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 06:15:18,821 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=52, Invalid=289, Unknown=1, NotChecked=0, Total=342 [2022-04-08 06:15:18,821 INFO L87 Difference]: Start difference. First operand 755 states and 986 transitions. Second operand has 11 states, 11 states have (on average 5.636363636363637) internal successors, (62), 10 states have internal predecessors, (62), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 8 states have call predecessors, (17), 7 states have call successors, (17)