/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_unwindbound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 05:57:52,590 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 05:57:52,617 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 05:57:52,651 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 05:57:52,651 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 05:57:52,652 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 05:57:52,654 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 05:57:52,656 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 05:57:52,657 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 05:57:52,660 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 05:57:52,661 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 05:57:52,661 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 05:57:52,662 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 05:57:52,663 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 05:57:52,664 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 05:57:52,666 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 05:57:52,666 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 05:57:52,667 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 05:57:52,668 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 05:57:52,672 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 05:57:52,673 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 05:57:52,674 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 05:57:52,674 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 05:57:52,675 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 05:57:52,676 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 05:57:52,680 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 05:57:52,680 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 05:57:52,681 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 05:57:52,681 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 05:57:52,681 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 05:57:52,682 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 05:57:52,682 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 05:57:52,683 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 05:57:52,684 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 05:57:52,684 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 05:57:52,684 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 05:57:52,685 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 05:57:52,685 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 05:57:52,685 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 05:57:52,685 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 05:57:52,686 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 05:57:52,687 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 05:57:52,687 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-28 05:57:52,695 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 05:57:52,696 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 05:57:52,696 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 05:57:52,696 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 05:57:52,697 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 05:57:52,697 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 05:57:52,697 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 05:57:52,697 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 05:57:52,697 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 05:57:52,697 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 05:57:52,698 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 05:57:52,698 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 05:57:52,698 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 05:57:52,698 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 05:57:52,698 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 05:57:52,698 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 05:57:52,698 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 05:57:52,698 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 05:57:52,698 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:57:52,698 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 05:57:52,698 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 05:57:52,699 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 05:57:52,699 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 05:57:52,699 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 05:57:52,699 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 05:57:52,699 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-28 05:57:52,866 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 05:57:52,879 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 05:57:52,880 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 05:57:52,881 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 05:57:52,882 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 05:57:52,882 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_unwindbound50.c [2022-04-28 05:57:52,933 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8613e5244/aae81221939f4886bbcac32f0b075908/FLAGfb7d614d6 [2022-04-28 05:57:53,334 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 05:57:53,334 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_unwindbound50.c [2022-04-28 05:57:53,338 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8613e5244/aae81221939f4886bbcac32f0b075908/FLAGfb7d614d6 [2022-04-28 05:57:53,725 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8613e5244/aae81221939f4886bbcac32f0b075908 [2022-04-28 05:57:53,726 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 05:57:53,727 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 05:57:53,742 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 05:57:53,742 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 05:57:53,748 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 05:57:53,749 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:57:53" (1/1) ... [2022-04-28 05:57:53,749 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7e74c8b4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:57:53, skipping insertion in model container [2022-04-28 05:57:53,750 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:57:53" (1/1) ... [2022-04-28 05:57:53,754 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 05:57:53,762 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 05:57:53,874 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_unwindbound50.c[535,548] [2022-04-28 05:57:53,889 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:57:53,895 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 05:57:53,902 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_unwindbound50.c[535,548] [2022-04-28 05:57:53,911 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:57:53,919 INFO L208 MainTranslator]: Completed translation [2022-04-28 05:57:53,920 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:57:53 WrapperNode [2022-04-28 05:57:53,920 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 05:57:53,921 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 05:57:53,921 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 05:57:53,921 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 05:57:53,927 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:57:53" (1/1) ... [2022-04-28 05:57:53,927 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:57:53" (1/1) ... [2022-04-28 05:57:53,941 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:57:53" (1/1) ... [2022-04-28 05:57:53,941 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:57:53" (1/1) ... [2022-04-28 05:57:53,945 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:57:53" (1/1) ... [2022-04-28 05:57:53,948 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:57:53" (1/1) ... [2022-04-28 05:57:53,949 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:57:53" (1/1) ... [2022-04-28 05:57:53,950 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 05:57:53,951 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 05:57:53,951 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 05:57:53,951 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 05:57:53,956 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:57:53" (1/1) ... [2022-04-28 05:57:53,977 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:57:53,984 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:57:53,992 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-28 05:57:54,023 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-28 05:57:54,032 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 05:57:54,032 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 05:57:54,032 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 05:57:54,032 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 05:57:54,032 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 05:57:54,032 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 05:57:54,032 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 05:57:54,032 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 05:57:54,032 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 05:57:54,033 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 05:57:54,033 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 05:57:54,033 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 05:57:54,033 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 05:57:54,033 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 05:57:54,033 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 05:57:54,033 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 05:57:54,033 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 05:57:54,033 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 05:57:54,033 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 05:57:54,033 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 05:57:54,084 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 05:57:54,085 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 05:57:54,213 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 05:57:54,226 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 05:57:54,226 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-28 05:57:54,227 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:57:54 BoogieIcfgContainer [2022-04-28 05:57:54,227 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 05:57:54,244 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 05:57:54,244 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 05:57:54,247 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 05:57:54,247 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 05:57:53" (1/3) ... [2022-04-28 05:57:54,247 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@49b02974 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:57:54, skipping insertion in model container [2022-04-28 05:57:54,247 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:57:53" (2/3) ... [2022-04-28 05:57:54,248 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@49b02974 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:57:54, skipping insertion in model container [2022-04-28 05:57:54,248 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:57:54" (3/3) ... [2022-04-28 05:57:54,249 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat1-ll_unwindbound50.c [2022-04-28 05:57:54,258 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 05:57:54,259 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 05:57:54,292 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 05:57:54,296 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@5b9bb544, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@795fbac9 [2022-04-28 05:57:54,296 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 05:57:54,303 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-28 05:57:54,307 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-28 05:57:54,308 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:57:54,308 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:57:54,308 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:57:54,312 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:57:54,312 INFO L85 PathProgramCache]: Analyzing trace with hash 928708300, now seen corresponding path program 1 times [2022-04-28 05:57:54,318 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:54,319 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1610944350] [2022-04-28 05:57:54,326 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:57:54,326 INFO L85 PathProgramCache]: Analyzing trace with hash 928708300, now seen corresponding path program 2 times [2022-04-28 05:57:54,328 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:57:54,328 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [196210638] [2022-04-28 05:57:54,329 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:57:54,329 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:57:54,394 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:57:54,394 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [535170246] [2022-04-28 05:57:54,394 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:57:54,395 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:57:54,395 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:57:54,398 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:57:54,419 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-28 05:57:54,488 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 05:57:54,488 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:57:54,491 INFO L263 TraceCheckSpWp]: Trace formula consists of 80 conjuncts, 1 conjunts are in the unsatisfiable core [2022-04-28 05:57:54,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:57:54,502 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:57:54,593 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} call ULTIMATE.init(); {40#true} is VALID [2022-04-28 05:57:54,593 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-28 05:57:54,594 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-28 05:57:54,594 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #102#return; {40#true} is VALID [2022-04-28 05:57:54,594 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret9 := main(); {40#true} is VALID [2022-04-28 05:57:54,594 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-28 05:57:54,594 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-28 05:57:54,595 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 05:57:54,595 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume 0 == ~cond;assume false; {40#true} is VALID [2022-04-28 05:57:54,595 INFO L290 TraceCheckUtils]: 9: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-28 05:57:54,595 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {40#true} {40#true} #90#return; {40#true} is VALID [2022-04-28 05:57:54,595 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-28 05:57:54,595 INFO L290 TraceCheckUtils]: 12: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 05:57:54,596 INFO L290 TraceCheckUtils]: 13: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 05:57:54,596 INFO L290 TraceCheckUtils]: 14: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 05:57:54,596 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41#false} {40#true} #92#return; {41#false} is VALID [2022-04-28 05:57:54,596 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-28 05:57:54,597 INFO L290 TraceCheckUtils]: 17: Hoare triple {41#false} assume !true; {41#false} is VALID [2022-04-28 05:57:54,597 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-28 05:57:54,597 INFO L290 TraceCheckUtils]: 19: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-28 05:57:54,597 INFO L290 TraceCheckUtils]: 20: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-28 05:57:54,597 INFO L290 TraceCheckUtils]: 21: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-28 05:57:54,598 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-28 05:57:54,598 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:57:54,598 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:57:54,598 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [196210638] [2022-04-28 05:57:54,599 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:57:54,599 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [535170246] [2022-04-28 05:57:54,599 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [535170246] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:57:54,599 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:57:54,599 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-04-28 05:57:54,601 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:57:54,602 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1610944350] [2022-04-28 05:57:54,602 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1610944350] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:57:54,602 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:57:54,602 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-04-28 05:57:54,602 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [890838852] [2022-04-28 05:57:54,603 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:57:54,606 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-28 05:57:54,607 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:57:54,609 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-28 05:57:54,640 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:57:54,640 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-04-28 05:57:54,640 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:54,654 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-04-28 05:57:54,654 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-04-28 05:57:54,656 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-28 05:57:54,720 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:54,720 INFO L93 Difference]: Finished difference Result 67 states and 100 transitions. [2022-04-28 05:57:54,720 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-04-28 05:57:54,721 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-28 05:57:54,721 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:57:54,722 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-28 05:57:54,728 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 100 transitions. [2022-04-28 05:57:54,729 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-28 05:57:54,733 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 100 transitions. [2022-04-28 05:57:54,733 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2 states and 100 transitions. [2022-04-28 05:57:54,810 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-28 05:57:54,816 INFO L225 Difference]: With dead ends: 67 [2022-04-28 05:57:54,816 INFO L226 Difference]: Without dead ends: 32 [2022-04-28 05:57:54,818 INFO L412 NwaCegarLoop]: 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-28 05:57:54,820 INFO L413 NwaCegarLoop]: 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-28 05:57:54,820 INFO L414 NwaCegarLoop]: 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-28 05:57:54,830 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-28 05:57:54,839 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-28 05:57:54,840 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:57:54,840 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-28 05:57:54,841 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-28 05:57:54,841 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-28 05:57:54,844 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:54,844 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-28 05:57:54,844 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-28 05:57:54,845 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:54,845 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:54,845 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-28 05:57:54,846 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-28 05:57:54,848 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:54,848 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-28 05:57:54,848 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-28 05:57:54,849 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:54,849 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:54,849 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:57:54,849 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:57:54,850 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-28 05:57:54,851 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 41 transitions. [2022-04-28 05:57:54,852 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 41 transitions. Word has length 22 [2022-04-28 05:57:54,852 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:57:54,853 INFO L495 AbstractCegarLoop]: Abstraction has 32 states and 41 transitions. [2022-04-28 05:57:54,853 INFO L496 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-28 05:57:54,853 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 41 transitions. [2022-04-28 05:57:54,883 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:57:54,884 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-28 05:57:54,884 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-28 05:57:54,884 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:57:54,884 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:57:54,901 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-28 05:57:55,101 WARN L477 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-28 05:57:55,102 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:57:55,102 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:57:55,102 INFO L85 PathProgramCache]: Analyzing trace with hash -155606603, now seen corresponding path program 1 times [2022-04-28 05:57:55,102 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:55,102 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1687834326] [2022-04-28 05:57:55,107 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:57:55,107 INFO L85 PathProgramCache]: Analyzing trace with hash -155606603, now seen corresponding path program 2 times [2022-04-28 05:57:55,107 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:57:55,107 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1066191972] [2022-04-28 05:57:55,107 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:57:55,107 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:57:55,134 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:57:55,134 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1393464671] [2022-04-28 05:57:55,134 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:57:55,134 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:57:55,134 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:57:55,140 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:57:55,159 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-28 05:57:55,189 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 05:57:55,189 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:57:55,189 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 05:57:55,197 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:57:55,198 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:57:55,368 INFO L272 TraceCheckUtils]: 0: Hoare triple {369#true} call ULTIMATE.init(); {369#true} is VALID [2022-04-28 05:57:55,369 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-28 05:57:55,370 INFO L290 TraceCheckUtils]: 2: Hoare triple {377#(<= ~counter~0 0)} assume true; {377#(<= ~counter~0 0)} is VALID [2022-04-28 05:57:55,370 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {377#(<= ~counter~0 0)} {369#true} #102#return; {377#(<= ~counter~0 0)} is VALID [2022-04-28 05:57:55,371 INFO L272 TraceCheckUtils]: 4: Hoare triple {377#(<= ~counter~0 0)} call #t~ret9 := main(); {377#(<= ~counter~0 0)} is VALID [2022-04-28 05:57:55,371 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-28 05:57:55,372 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-28 05:57:55,372 INFO L290 TraceCheckUtils]: 7: Hoare triple {377#(<= ~counter~0 0)} ~cond := #in~cond; {377#(<= ~counter~0 0)} is VALID [2022-04-28 05:57:55,373 INFO L290 TraceCheckUtils]: 8: Hoare triple {377#(<= ~counter~0 0)} assume !(0 == ~cond); {377#(<= ~counter~0 0)} is VALID [2022-04-28 05:57:55,373 INFO L290 TraceCheckUtils]: 9: Hoare triple {377#(<= ~counter~0 0)} assume true; {377#(<= ~counter~0 0)} is VALID [2022-04-28 05:57:55,374 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {377#(<= ~counter~0 0)} {377#(<= ~counter~0 0)} #90#return; {377#(<= ~counter~0 0)} is VALID [2022-04-28 05:57:55,374 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-28 05:57:55,375 INFO L290 TraceCheckUtils]: 12: Hoare triple {377#(<= ~counter~0 0)} ~cond := #in~cond; {377#(<= ~counter~0 0)} is VALID [2022-04-28 05:57:55,376 INFO L290 TraceCheckUtils]: 13: Hoare triple {377#(<= ~counter~0 0)} assume !(0 == ~cond); {377#(<= ~counter~0 0)} is VALID [2022-04-28 05:57:55,376 INFO L290 TraceCheckUtils]: 14: Hoare triple {377#(<= ~counter~0 0)} assume true; {377#(<= ~counter~0 0)} is VALID [2022-04-28 05:57:55,378 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {377#(<= ~counter~0 0)} {377#(<= ~counter~0 0)} #92#return; {377#(<= ~counter~0 0)} is VALID [2022-04-28 05:57:55,378 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-28 05:57:55,379 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-28 05:57:55,379 INFO L290 TraceCheckUtils]: 18: Hoare triple {426#(<= |main_#t~post6| 0)} assume !(#t~post6 < 50);havoc #t~post6; {370#false} is VALID [2022-04-28 05:57:55,380 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-28 05:57:55,380 INFO L290 TraceCheckUtils]: 20: Hoare triple {370#false} ~cond := #in~cond; {370#false} is VALID [2022-04-28 05:57:55,380 INFO L290 TraceCheckUtils]: 21: Hoare triple {370#false} assume 0 == ~cond; {370#false} is VALID [2022-04-28 05:57:55,381 INFO L290 TraceCheckUtils]: 22: Hoare triple {370#false} assume !false; {370#false} is VALID [2022-04-28 05:57:55,381 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:57:55,381 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:57:55,382 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:57:55,382 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1066191972] [2022-04-28 05:57:55,382 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:57:55,382 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1393464671] [2022-04-28 05:57:55,382 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1393464671] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:57:55,383 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:57:55,383 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 05:57:55,384 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:57:55,384 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1687834326] [2022-04-28 05:57:55,385 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1687834326] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:57:55,385 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:57:55,385 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 05:57:55,385 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1217361209] [2022-04-28 05:57:55,385 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:57:55,386 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-28 05:57:55,386 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:57:55,387 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:57:55,402 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:57:55,402 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 05:57:55,402 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:55,404 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 05:57:55,404 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 05:57:55,405 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-28 05:57:55,483 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:55,483 INFO L93 Difference]: Finished difference Result 41 states and 50 transitions. [2022-04-28 05:57:55,483 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 05:57:55,484 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-28 05:57:55,484 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:57:55,485 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:57:55,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2022-04-28 05:57:55,492 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:57:55,494 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2022-04-28 05:57:55,494 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 50 transitions. [2022-04-28 05:57:55,528 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:57:55,532 INFO L225 Difference]: With dead ends: 41 [2022-04-28 05:57:55,532 INFO L226 Difference]: Without dead ends: 34 [2022-04-28 05:57:55,532 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 05:57:55,536 INFO L413 NwaCegarLoop]: 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-28 05:57:55,537 INFO L414 NwaCegarLoop]: 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-28 05:57:55,538 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-28 05:57:55,552 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-28 05:57:55,552 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:57:55,553 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-28 05:57:55,553 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-28 05:57:55,555 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-28 05:57:55,561 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:55,561 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-28 05:57:55,561 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-28 05:57:55,562 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:55,562 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:55,563 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-28 05:57:55,563 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-28 05:57:55,571 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:55,573 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-28 05:57:55,573 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-28 05:57:55,573 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:57:55,573 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:57:55,573 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:57:55,573 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:57:55,574 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-28 05:57:55,575 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 43 transitions. [2022-04-28 05:57:55,575 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 43 transitions. Word has length 23 [2022-04-28 05:57:55,575 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:57:55,575 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 43 transitions. [2022-04-28 05:57:55,575 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:57:55,576 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 43 transitions. [2022-04-28 05:57:55,617 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-28 05:57:55,618 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-28 05:57:55,618 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-28 05:57:55,618 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:57:55,619 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:57:55,637 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-28 05:57:55,832 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable1 [2022-04-28 05:57:55,832 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:57:55,833 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:57:55,833 INFO L85 PathProgramCache]: Analyzing trace with hash -153938307, now seen corresponding path program 1 times [2022-04-28 05:57:55,833 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:55,833 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1410493400] [2022-04-28 05:57:55,834 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:57:55,834 INFO L85 PathProgramCache]: Analyzing trace with hash -153938307, now seen corresponding path program 2 times [2022-04-28 05:57:55,834 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:57:55,834 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2093189711] [2022-04-28 05:57:55,834 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:57:55,834 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:57:55,850 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:57:55,851 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1172477828] [2022-04-28 05:57:55,851 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:57:55,851 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:57:55,851 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:57:55,853 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:57:55,854 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-28 05:57:55,895 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 05:57:55,896 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:57:55,896 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 05:57:55,908 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:57:55,911 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:57:56,234 INFO L272 TraceCheckUtils]: 0: Hoare triple {659#true} call ULTIMATE.init(); {659#true} is VALID [2022-04-28 05:57:56,234 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-28 05:57:56,234 INFO L290 TraceCheckUtils]: 2: Hoare triple {659#true} assume true; {659#true} is VALID [2022-04-28 05:57:56,235 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {659#true} {659#true} #102#return; {659#true} is VALID [2022-04-28 05:57:56,235 INFO L272 TraceCheckUtils]: 4: Hoare triple {659#true} call #t~ret9 := main(); {659#true} is VALID [2022-04-28 05:57:56,235 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-28 05:57:56,235 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-28 05:57:56,235 INFO L290 TraceCheckUtils]: 7: Hoare triple {659#true} ~cond := #in~cond; {659#true} is VALID [2022-04-28 05:57:56,235 INFO L290 TraceCheckUtils]: 8: Hoare triple {659#true} assume !(0 == ~cond); {659#true} is VALID [2022-04-28 05:57:56,236 INFO L290 TraceCheckUtils]: 9: Hoare triple {659#true} assume true; {659#true} is VALID [2022-04-28 05:57:56,236 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {659#true} {659#true} #90#return; {659#true} is VALID [2022-04-28 05:57:56,236 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-28 05:57:56,236 INFO L290 TraceCheckUtils]: 12: Hoare triple {659#true} ~cond := #in~cond; {659#true} is VALID [2022-04-28 05:57:56,236 INFO L290 TraceCheckUtils]: 13: Hoare triple {659#true} assume !(0 == ~cond); {659#true} is VALID [2022-04-28 05:57:56,236 INFO L290 TraceCheckUtils]: 14: Hoare triple {659#true} assume true; {659#true} is VALID [2022-04-28 05:57:56,237 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {659#true} {659#true} #92#return; {659#true} is VALID [2022-04-28 05:57:57,777 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-28 05:57:57,778 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-28 05:57:57,779 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 < 50);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-28 05:57:58,574 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-28 05:57:58,575 INFO L290 TraceCheckUtils]: 20: Hoare triple {722#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {726#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:58,575 INFO L290 TraceCheckUtils]: 21: Hoare triple {726#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {660#false} is VALID [2022-04-28 05:57:58,575 INFO L290 TraceCheckUtils]: 22: Hoare triple {660#false} assume !false; {660#false} is VALID [2022-04-28 05:57:58,575 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:57:58,576 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:57:58,576 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:57:58,576 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2093189711] [2022-04-28 05:57:58,576 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:57:58,576 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1172477828] [2022-04-28 05:57:58,576 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1172477828] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:57:58,576 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:57:58,576 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:57:58,577 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:57:58,577 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1410493400] [2022-04-28 05:57:58,577 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1410493400] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:57:58,577 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:57:58,577 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:57:58,577 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [459931449] [2022-04-28 05:57:58,577 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:57:58,577 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-28 05:57:58,578 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:57:58,578 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-28 05:58:01,912 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-28 05:58:01,912 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:58:01,913 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:01,913 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:58:01,913 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:58:01,913 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-28 05:58:06,770 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 05:58:09,801 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.92s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 05:58:11,067 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.11s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 05:58:13,474 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 05:58:20,859 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:20,859 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-28 05:58:20,859 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:58:20,859 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-28 05:58:20,859 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:58:20,860 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-28 05:58:20,861 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 68 transitions. [2022-04-28 05:58:20,861 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-28 05:58:20,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 68 transitions. [2022-04-28 05:58:20,863 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 68 transitions. [2022-04-28 05:58:26,767 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 66 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:26,768 INFO L225 Difference]: With dead ends: 53 [2022-04-28 05:58:26,768 INFO L226 Difference]: Without dead ends: 51 [2022-04-28 05:58:26,768 INFO L412 NwaCegarLoop]: 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-28 05:58:26,769 INFO L413 NwaCegarLoop]: 34 mSDtfsCounter, 16 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 53 mSolverCounterSat, 2 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 9.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 119 SdHoareTripleChecker+Invalid, 57 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 53 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 9.7s IncrementalHoareTripleChecker+Time [2022-04-28 05:58:26,769 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [19 Valid, 119 Invalid, 57 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 53 Invalid, 2 Unknown, 0 Unchecked, 9.7s Time] [2022-04-28 05:58:26,770 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-28 05:58:26,785 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-28 05:58:26,785 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:58:26,787 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-28 05:58:26,787 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-28 05:58:26,788 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-28 05:58:26,797 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:26,797 INFO L93 Difference]: Finished difference Result 51 states and 68 transitions. [2022-04-28 05:58:26,797 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 68 transitions. [2022-04-28 05:58:26,801 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:26,801 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:26,801 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-28 05:58:26,802 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-28 05:58:26,818 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:26,818 INFO L93 Difference]: Finished difference Result 51 states and 68 transitions. [2022-04-28 05:58:26,818 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 68 transitions. [2022-04-28 05:58:26,822 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:26,822 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:26,822 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:58:26,824 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:58:26,825 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-28 05:58:26,827 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 67 transitions. [2022-04-28 05:58:26,827 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 67 transitions. Word has length 23 [2022-04-28 05:58:26,827 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:58:26,827 INFO L495 AbstractCegarLoop]: Abstraction has 50 states and 67 transitions. [2022-04-28 05:58:26,827 INFO L496 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-28 05:58:26,827 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 50 states and 67 transitions. [2022-04-28 05:58:32,007 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 65 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:32,008 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 67 transitions. [2022-04-28 05:58:32,008 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-28 05:58:32,008 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:58:32,008 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:58:32,024 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-28 05:58:32,209 WARN L477 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-28 05:58:32,209 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:58:32,209 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:58:32,209 INFO L85 PathProgramCache]: Analyzing trace with hash -1676885497, now seen corresponding path program 1 times [2022-04-28 05:58:32,210 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:32,210 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [302475824] [2022-04-28 05:58:32,210 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:58:32,210 INFO L85 PathProgramCache]: Analyzing trace with hash -1676885497, now seen corresponding path program 2 times [2022-04-28 05:58:32,210 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:58:32,210 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [433899200] [2022-04-28 05:58:32,210 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:58:32,211 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:58:32,222 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:58:32,222 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1458020588] [2022-04-28 05:58:32,222 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:58:32,223 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:58:32,223 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:58:32,228 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:58:32,242 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-28 05:58:32,281 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:58:32,282 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:58:32,282 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-28 05:58:32,300 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:58:32,301 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:58:32,446 INFO L272 TraceCheckUtils]: 0: Hoare triple {1042#true} call ULTIMATE.init(); {1042#true} is VALID [2022-04-28 05:58:32,447 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-28 05:58:32,447 INFO L290 TraceCheckUtils]: 2: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-28 05:58:32,447 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1042#true} {1042#true} #102#return; {1042#true} is VALID [2022-04-28 05:58:32,447 INFO L272 TraceCheckUtils]: 4: Hoare triple {1042#true} call #t~ret9 := main(); {1042#true} is VALID [2022-04-28 05:58:32,447 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-28 05:58:32,447 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-28 05:58:32,447 INFO L290 TraceCheckUtils]: 7: Hoare triple {1042#true} ~cond := #in~cond; {1042#true} is VALID [2022-04-28 05:58:32,447 INFO L290 TraceCheckUtils]: 8: Hoare triple {1042#true} assume !(0 == ~cond); {1042#true} is VALID [2022-04-28 05:58:32,448 INFO L290 TraceCheckUtils]: 9: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-28 05:58:32,448 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1042#true} {1042#true} #90#return; {1042#true} is VALID [2022-04-28 05:58:32,448 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-28 05:58:32,448 INFO L290 TraceCheckUtils]: 12: Hoare triple {1042#true} ~cond := #in~cond; {1042#true} is VALID [2022-04-28 05:58:32,448 INFO L290 TraceCheckUtils]: 13: Hoare triple {1042#true} assume !(0 == ~cond); {1042#true} is VALID [2022-04-28 05:58:32,448 INFO L290 TraceCheckUtils]: 14: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-28 05:58:32,449 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1042#true} {1042#true} #92#return; {1042#true} is VALID [2022-04-28 05:58:32,449 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-28 05:58:32,449 INFO L290 TraceCheckUtils]: 17: Hoare triple {1042#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1042#true} is VALID [2022-04-28 05:58:32,449 INFO L290 TraceCheckUtils]: 18: Hoare triple {1042#true} assume !!(#t~post6 < 50);havoc #t~post6; {1042#true} is VALID [2022-04-28 05:58:32,451 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-28 05:58:32,451 INFO L290 TraceCheckUtils]: 20: Hoare triple {1042#true} ~cond := #in~cond; {1107#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:32,452 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-28 05:58:32,452 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-28 05:58:32,453 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-28 05:58:32,453 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-28 05:58:32,454 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-28 05:58:32,454 INFO L290 TraceCheckUtils]: 26: Hoare triple {1126#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1130#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:32,455 INFO L290 TraceCheckUtils]: 27: Hoare triple {1130#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1043#false} is VALID [2022-04-28 05:58:32,455 INFO L290 TraceCheckUtils]: 28: Hoare triple {1043#false} assume !false; {1043#false} is VALID [2022-04-28 05:58:32,455 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-28 05:58:32,455 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:58:32,825 INFO L290 TraceCheckUtils]: 28: Hoare triple {1043#false} assume !false; {1043#false} is VALID [2022-04-28 05:58:32,826 INFO L290 TraceCheckUtils]: 27: Hoare triple {1130#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1043#false} is VALID [2022-04-28 05:58:32,826 INFO L290 TraceCheckUtils]: 26: Hoare triple {1126#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1130#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:32,827 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-28 05:58:32,828 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-28 05:58:32,831 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-28 05:58:32,835 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-28 05:58:32,835 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-28 05:58:32,836 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-28 05:58:32,836 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-28 05:58:32,836 INFO L290 TraceCheckUtils]: 18: Hoare triple {1042#true} assume !!(#t~post6 < 50);havoc #t~post6; {1042#true} is VALID [2022-04-28 05:58:32,836 INFO L290 TraceCheckUtils]: 17: Hoare triple {1042#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1042#true} is VALID [2022-04-28 05:58:32,836 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-28 05:58:32,836 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1042#true} {1042#true} #92#return; {1042#true} is VALID [2022-04-28 05:58:32,836 INFO L290 TraceCheckUtils]: 14: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-28 05:58:32,837 INFO L290 TraceCheckUtils]: 13: Hoare triple {1042#true} assume !(0 == ~cond); {1042#true} is VALID [2022-04-28 05:58:32,837 INFO L290 TraceCheckUtils]: 12: Hoare triple {1042#true} ~cond := #in~cond; {1042#true} is VALID [2022-04-28 05:58:32,837 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-28 05:58:32,837 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1042#true} {1042#true} #90#return; {1042#true} is VALID [2022-04-28 05:58:32,837 INFO L290 TraceCheckUtils]: 9: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-28 05:58:32,837 INFO L290 TraceCheckUtils]: 8: Hoare triple {1042#true} assume !(0 == ~cond); {1042#true} is VALID [2022-04-28 05:58:32,837 INFO L290 TraceCheckUtils]: 7: Hoare triple {1042#true} ~cond := #in~cond; {1042#true} is VALID [2022-04-28 05:58:32,837 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-28 05:58:32,837 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-28 05:58:32,838 INFO L272 TraceCheckUtils]: 4: Hoare triple {1042#true} call #t~ret9 := main(); {1042#true} is VALID [2022-04-28 05:58:32,838 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1042#true} {1042#true} #102#return; {1042#true} is VALID [2022-04-28 05:58:32,838 INFO L290 TraceCheckUtils]: 2: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-28 05:58:32,838 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-28 05:58:32,838 INFO L272 TraceCheckUtils]: 0: Hoare triple {1042#true} call ULTIMATE.init(); {1042#true} is VALID [2022-04-28 05:58:32,838 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-28 05:58:32,838 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:58:32,838 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [433899200] [2022-04-28 05:58:32,839 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:58:32,839 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1458020588] [2022-04-28 05:58:32,839 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1458020588] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:58:32,839 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:58:32,839 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-28 05:58:32,839 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:58:32,839 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [302475824] [2022-04-28 05:58:32,839 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [302475824] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:32,839 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:32,839 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:58:32,839 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [566906023] [2022-04-28 05:58:32,840 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:58:32,840 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-28 05:58:32,840 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:58:32,840 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-28 05:58:32,861 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:32,862 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:58:32,862 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:32,862 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:58:32,862 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-28 05:58:32,863 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-28 05:58:33,301 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:33,301 INFO L93 Difference]: Finished difference Result 57 states and 73 transitions. [2022-04-28 05:58:33,301 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:58:33,301 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-28 05:58:33,301 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:58:33,302 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-28 05:58:33,303 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-28 05:58:33,303 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-28 05:58:33,304 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-28 05:58:33,304 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-28 05:58:33,342 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:33,343 INFO L225 Difference]: With dead ends: 57 [2022-04-28 05:58:33,344 INFO L226 Difference]: Without dead ends: 52 [2022-04-28 05:58:33,345 INFO L412 NwaCegarLoop]: 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-28 05:58:33,345 INFO L413 NwaCegarLoop]: 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-28 05:58:33,345 INFO L414 NwaCegarLoop]: 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-28 05:58:33,346 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-04-28 05:58:33,364 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 52. [2022-04-28 05:58:33,364 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:58:33,365 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-28 05:58:33,365 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-28 05:58:33,365 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-28 05:58:33,367 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:33,367 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-28 05:58:33,367 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 66 transitions. [2022-04-28 05:58:33,367 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:33,367 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:33,368 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-28 05:58:33,368 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-28 05:58:33,369 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:33,369 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-28 05:58:33,370 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 66 transitions. [2022-04-28 05:58:33,370 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:33,370 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:33,370 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:58:33,370 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:58:33,370 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-28 05:58:33,371 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 66 transitions. [2022-04-28 05:58:33,372 INFO L78 Accepts]: Start accepts. Automaton has 52 states and 66 transitions. Word has length 29 [2022-04-28 05:58:33,372 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:58:33,372 INFO L495 AbstractCegarLoop]: Abstraction has 52 states and 66 transitions. [2022-04-28 05:58:33,372 INFO L496 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-28 05:58:33,372 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 52 states and 66 transitions. [2022-04-28 05:58:35,887 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 65 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:35,887 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 66 transitions. [2022-04-28 05:58:35,888 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-28 05:58:35,888 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:58:35,888 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:58:35,906 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-28 05:58:36,088 WARN L477 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-28 05:58:36,088 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:58:36,089 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:58:36,089 INFO L85 PathProgramCache]: Analyzing trace with hash 1154059858, now seen corresponding path program 1 times [2022-04-28 05:58:36,089 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:36,089 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [91423549] [2022-04-28 05:58:36,089 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:58:36,089 INFO L85 PathProgramCache]: Analyzing trace with hash 1154059858, now seen corresponding path program 2 times [2022-04-28 05:58:36,090 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:58:36,090 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1521841182] [2022-04-28 05:58:36,090 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:58:36,090 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:58:36,101 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:58:36,101 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1430839471] [2022-04-28 05:58:36,101 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:58:36,102 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:58:36,102 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:58:36,102 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:58:36,103 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-28 05:58:36,266 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:58:36,267 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:58:36,268 INFO L263 TraceCheckSpWp]: Trace formula consists of 118 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:58:36,280 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:58:36,281 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:58:36,438 INFO L272 TraceCheckUtils]: 0: Hoare triple {1553#true} call ULTIMATE.init(); {1553#true} is VALID [2022-04-28 05:58:36,439 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-28 05:58:36,440 INFO L290 TraceCheckUtils]: 2: Hoare triple {1561#(<= ~counter~0 0)} assume true; {1561#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:36,440 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1561#(<= ~counter~0 0)} {1553#true} #102#return; {1561#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:36,440 INFO L272 TraceCheckUtils]: 4: Hoare triple {1561#(<= ~counter~0 0)} call #t~ret9 := main(); {1561#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:36,441 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-28 05:58:36,441 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-28 05:58:36,442 INFO L290 TraceCheckUtils]: 7: Hoare triple {1561#(<= ~counter~0 0)} ~cond := #in~cond; {1561#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:36,442 INFO L290 TraceCheckUtils]: 8: Hoare triple {1561#(<= ~counter~0 0)} assume !(0 == ~cond); {1561#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:36,442 INFO L290 TraceCheckUtils]: 9: Hoare triple {1561#(<= ~counter~0 0)} assume true; {1561#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:36,443 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1561#(<= ~counter~0 0)} {1561#(<= ~counter~0 0)} #90#return; {1561#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:36,443 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-28 05:58:36,444 INFO L290 TraceCheckUtils]: 12: Hoare triple {1561#(<= ~counter~0 0)} ~cond := #in~cond; {1561#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:36,444 INFO L290 TraceCheckUtils]: 13: Hoare triple {1561#(<= ~counter~0 0)} assume !(0 == ~cond); {1561#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:36,444 INFO L290 TraceCheckUtils]: 14: Hoare triple {1561#(<= ~counter~0 0)} assume true; {1561#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:36,445 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1561#(<= ~counter~0 0)} {1561#(<= ~counter~0 0)} #92#return; {1561#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:36,445 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-28 05:58:36,446 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-28 05:58:36,446 INFO L290 TraceCheckUtils]: 18: Hoare triple {1610#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {1610#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:36,446 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-28 05:58:36,447 INFO L290 TraceCheckUtils]: 20: Hoare triple {1610#(<= ~counter~0 1)} ~cond := #in~cond; {1610#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:36,447 INFO L290 TraceCheckUtils]: 21: Hoare triple {1610#(<= ~counter~0 1)} assume !(0 == ~cond); {1610#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:36,447 INFO L290 TraceCheckUtils]: 22: Hoare triple {1610#(<= ~counter~0 1)} assume true; {1610#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:36,448 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1610#(<= ~counter~0 1)} {1610#(<= ~counter~0 1)} #94#return; {1610#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:36,448 INFO L290 TraceCheckUtils]: 24: Hoare triple {1610#(<= ~counter~0 1)} assume !!(0 != ~r~0); {1610#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:36,449 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-28 05:58:36,449 INFO L290 TraceCheckUtils]: 26: Hoare triple {1635#(<= |main_#t~post7| 1)} assume !(#t~post7 < 50);havoc #t~post7; {1554#false} is VALID [2022-04-28 05:58:36,449 INFO L290 TraceCheckUtils]: 27: Hoare triple {1554#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {1554#false} is VALID [2022-04-28 05:58:36,449 INFO L290 TraceCheckUtils]: 28: Hoare triple {1554#false} assume !(#t~post8 < 50);havoc #t~post8; {1554#false} is VALID [2022-04-28 05:58:36,450 INFO L290 TraceCheckUtils]: 29: Hoare triple {1554#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1554#false} is VALID [2022-04-28 05:58:36,450 INFO L290 TraceCheckUtils]: 30: Hoare triple {1554#false} assume !(#t~post6 < 50);havoc #t~post6; {1554#false} is VALID [2022-04-28 05:58:36,450 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-28 05:58:36,450 INFO L290 TraceCheckUtils]: 32: Hoare triple {1554#false} ~cond := #in~cond; {1554#false} is VALID [2022-04-28 05:58:36,450 INFO L290 TraceCheckUtils]: 33: Hoare triple {1554#false} assume 0 == ~cond; {1554#false} is VALID [2022-04-28 05:58:36,450 INFO L290 TraceCheckUtils]: 34: Hoare triple {1554#false} assume !false; {1554#false} is VALID [2022-04-28 05:58:36,450 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:58:36,450 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:58:36,450 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:58:36,451 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1521841182] [2022-04-28 05:58:36,451 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:58:36,451 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1430839471] [2022-04-28 05:58:36,451 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1430839471] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:36,451 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:36,451 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:58:36,451 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:58:36,451 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [91423549] [2022-04-28 05:58:36,451 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [91423549] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:36,451 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:36,451 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:58:36,451 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [199097933] [2022-04-28 05:58:36,452 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:58:36,452 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-28 05:58:36,452 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:58:36,452 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-28 05:58:36,475 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:36,475 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:58:36,475 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:36,475 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:58:36,476 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:58:36,476 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-28 05:58:36,585 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:36,585 INFO L93 Difference]: Finished difference Result 97 states and 125 transitions. [2022-04-28 05:58:36,585 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:58:36,585 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-28 05:58:36,586 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:58:36,586 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-28 05:58:36,587 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 77 transitions. [2022-04-28 05:58:36,587 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-28 05:58:36,588 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 77 transitions. [2022-04-28 05:58:36,588 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 77 transitions. [2022-04-28 05:58:36,639 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:36,640 INFO L225 Difference]: With dead ends: 97 [2022-04-28 05:58:36,640 INFO L226 Difference]: Without dead ends: 60 [2022-04-28 05:58:36,641 INFO L412 NwaCegarLoop]: 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-28 05:58:36,641 INFO L413 NwaCegarLoop]: 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-28 05:58:36,642 INFO L414 NwaCegarLoop]: 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-28 05:58:36,642 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-04-28 05:58:36,667 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 60. [2022-04-28 05:58:36,667 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:58:36,668 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-28 05:58:36,668 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-28 05:58:36,668 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-28 05:58:36,670 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:36,670 INFO L93 Difference]: Finished difference Result 60 states and 74 transitions. [2022-04-28 05:58:36,670 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 74 transitions. [2022-04-28 05:58:36,670 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:36,670 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:36,671 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-28 05:58:36,671 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-28 05:58:36,672 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:36,672 INFO L93 Difference]: Finished difference Result 60 states and 74 transitions. [2022-04-28 05:58:36,672 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 74 transitions. [2022-04-28 05:58:36,673 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:36,673 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:36,673 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:58:36,673 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:58:36,673 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-28 05:58:36,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 74 transitions. [2022-04-28 05:58:36,675 INFO L78 Accepts]: Start accepts. Automaton has 60 states and 74 transitions. Word has length 35 [2022-04-28 05:58:36,675 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:58:36,675 INFO L495 AbstractCegarLoop]: Abstraction has 60 states and 74 transitions. [2022-04-28 05:58:36,675 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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-28 05:58:36,675 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 60 states and 74 transitions. [2022-04-28 05:58:38,958 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 73 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:38,958 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 74 transitions. [2022-04-28 05:58:38,959 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-28 05:58:38,959 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:58:38,959 INFO L195 NwaCegarLoop]: 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-28 05:58:38,963 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-04-28 05:58:39,159 WARN L477 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-28 05:58:39,159 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:58:39,160 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:58:39,160 INFO L85 PathProgramCache]: Analyzing trace with hash -174895632, now seen corresponding path program 1 times [2022-04-28 05:58:39,160 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:39,160 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [172803840] [2022-04-28 05:58:39,160 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:58:39,160 INFO L85 PathProgramCache]: Analyzing trace with hash -174895632, now seen corresponding path program 2 times [2022-04-28 05:58:39,160 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:58:39,161 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2064591565] [2022-04-28 05:58:39,161 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:58:39,161 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:58:39,179 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:58:39,179 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [650833560] [2022-04-28 05:58:39,179 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:58:39,179 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:58:39,179 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:58:39,191 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:58:39,192 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-28 05:58:39,235 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:58:39,235 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:58:39,235 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:58:39,245 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:58:39,247 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:58:39,443 INFO L272 TraceCheckUtils]: 0: Hoare triple {2096#true} call ULTIMATE.init(); {2096#true} is VALID [2022-04-28 05:58:39,443 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-28 05:58:39,444 INFO L290 TraceCheckUtils]: 2: Hoare triple {2104#(<= ~counter~0 0)} assume true; {2104#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:39,444 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2104#(<= ~counter~0 0)} {2096#true} #102#return; {2104#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:39,444 INFO L272 TraceCheckUtils]: 4: Hoare triple {2104#(<= ~counter~0 0)} call #t~ret9 := main(); {2104#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:39,445 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-28 05:58:39,445 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-28 05:58:39,446 INFO L290 TraceCheckUtils]: 7: Hoare triple {2104#(<= ~counter~0 0)} ~cond := #in~cond; {2104#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:39,446 INFO L290 TraceCheckUtils]: 8: Hoare triple {2104#(<= ~counter~0 0)} assume !(0 == ~cond); {2104#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:39,446 INFO L290 TraceCheckUtils]: 9: Hoare triple {2104#(<= ~counter~0 0)} assume true; {2104#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:39,447 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2104#(<= ~counter~0 0)} {2104#(<= ~counter~0 0)} #90#return; {2104#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:39,447 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-28 05:58:39,448 INFO L290 TraceCheckUtils]: 12: Hoare triple {2104#(<= ~counter~0 0)} ~cond := #in~cond; {2104#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:39,448 INFO L290 TraceCheckUtils]: 13: Hoare triple {2104#(<= ~counter~0 0)} assume !(0 == ~cond); {2104#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:39,448 INFO L290 TraceCheckUtils]: 14: Hoare triple {2104#(<= ~counter~0 0)} assume true; {2104#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:39,449 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2104#(<= ~counter~0 0)} {2104#(<= ~counter~0 0)} #92#return; {2104#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:39,449 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-28 05:58:39,450 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-28 05:58:39,450 INFO L290 TraceCheckUtils]: 18: Hoare triple {2153#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {2153#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:39,451 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-28 05:58:39,451 INFO L290 TraceCheckUtils]: 20: Hoare triple {2153#(<= ~counter~0 1)} ~cond := #in~cond; {2153#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:39,452 INFO L290 TraceCheckUtils]: 21: Hoare triple {2153#(<= ~counter~0 1)} assume !(0 == ~cond); {2153#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:39,452 INFO L290 TraceCheckUtils]: 22: Hoare triple {2153#(<= ~counter~0 1)} assume true; {2153#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:39,453 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2153#(<= ~counter~0 1)} {2153#(<= ~counter~0 1)} #94#return; {2153#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:39,453 INFO L290 TraceCheckUtils]: 24: Hoare triple {2153#(<= ~counter~0 1)} assume !!(0 != ~r~0); {2153#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:39,453 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-28 05:58:39,454 INFO L290 TraceCheckUtils]: 26: Hoare triple {2178#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {2178#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:39,454 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-28 05:58:39,455 INFO L290 TraceCheckUtils]: 28: Hoare triple {2178#(<= ~counter~0 2)} ~cond := #in~cond; {2178#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:39,455 INFO L290 TraceCheckUtils]: 29: Hoare triple {2178#(<= ~counter~0 2)} assume !(0 == ~cond); {2178#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:39,455 INFO L290 TraceCheckUtils]: 30: Hoare triple {2178#(<= ~counter~0 2)} assume true; {2178#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:39,456 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2178#(<= ~counter~0 2)} {2178#(<= ~counter~0 2)} #96#return; {2178#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:39,456 INFO L290 TraceCheckUtils]: 32: Hoare triple {2178#(<= ~counter~0 2)} assume !(~r~0 > 0); {2178#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:39,457 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-28 05:58:39,457 INFO L290 TraceCheckUtils]: 34: Hoare triple {2203#(<= |main_#t~post8| 2)} assume !(#t~post8 < 50);havoc #t~post8; {2097#false} is VALID [2022-04-28 05:58:39,457 INFO L290 TraceCheckUtils]: 35: Hoare triple {2097#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2097#false} is VALID [2022-04-28 05:58:39,457 INFO L290 TraceCheckUtils]: 36: Hoare triple {2097#false} assume !(#t~post6 < 50);havoc #t~post6; {2097#false} is VALID [2022-04-28 05:58:39,458 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-28 05:58:39,458 INFO L290 TraceCheckUtils]: 38: Hoare triple {2097#false} ~cond := #in~cond; {2097#false} is VALID [2022-04-28 05:58:39,458 INFO L290 TraceCheckUtils]: 39: Hoare triple {2097#false} assume 0 == ~cond; {2097#false} is VALID [2022-04-28 05:58:39,458 INFO L290 TraceCheckUtils]: 40: Hoare triple {2097#false} assume !false; {2097#false} is VALID [2022-04-28 05:58:39,458 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-28 05:58:39,458 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:58:39,648 INFO L290 TraceCheckUtils]: 40: Hoare triple {2097#false} assume !false; {2097#false} is VALID [2022-04-28 05:58:39,648 INFO L290 TraceCheckUtils]: 39: Hoare triple {2097#false} assume 0 == ~cond; {2097#false} is VALID [2022-04-28 05:58:39,649 INFO L290 TraceCheckUtils]: 38: Hoare triple {2097#false} ~cond := #in~cond; {2097#false} is VALID [2022-04-28 05:58:39,649 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-28 05:58:39,649 INFO L290 TraceCheckUtils]: 36: Hoare triple {2097#false} assume !(#t~post6 < 50);havoc #t~post6; {2097#false} is VALID [2022-04-28 05:58:39,649 INFO L290 TraceCheckUtils]: 35: Hoare triple {2097#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2097#false} is VALID [2022-04-28 05:58:39,649 INFO L290 TraceCheckUtils]: 34: Hoare triple {2243#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {2097#false} is VALID [2022-04-28 05:58:39,650 INFO L290 TraceCheckUtils]: 33: Hoare triple {2247#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {2243#(< |main_#t~post8| 50)} is VALID [2022-04-28 05:58:39,650 INFO L290 TraceCheckUtils]: 32: Hoare triple {2247#(< ~counter~0 50)} assume !(~r~0 > 0); {2247#(< ~counter~0 50)} is VALID [2022-04-28 05:58:39,650 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2096#true} {2247#(< ~counter~0 50)} #96#return; {2247#(< ~counter~0 50)} is VALID [2022-04-28 05:58:39,651 INFO L290 TraceCheckUtils]: 30: Hoare triple {2096#true} assume true; {2096#true} is VALID [2022-04-28 05:58:39,651 INFO L290 TraceCheckUtils]: 29: Hoare triple {2096#true} assume !(0 == ~cond); {2096#true} is VALID [2022-04-28 05:58:39,651 INFO L290 TraceCheckUtils]: 28: Hoare triple {2096#true} ~cond := #in~cond; {2096#true} is VALID [2022-04-28 05:58:39,651 INFO L272 TraceCheckUtils]: 27: Hoare triple {2247#(< ~counter~0 50)} call __VERIFIER_assert((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-28 05:58:39,651 INFO L290 TraceCheckUtils]: 26: Hoare triple {2247#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {2247#(< ~counter~0 50)} is VALID [2022-04-28 05:58:39,652 INFO L290 TraceCheckUtils]: 25: Hoare triple {2272#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2247#(< ~counter~0 50)} is VALID [2022-04-28 05:58:39,652 INFO L290 TraceCheckUtils]: 24: Hoare triple {2272#(< ~counter~0 49)} assume !!(0 != ~r~0); {2272#(< ~counter~0 49)} is VALID [2022-04-28 05:58:39,652 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2096#true} {2272#(< ~counter~0 49)} #94#return; {2272#(< ~counter~0 49)} is VALID [2022-04-28 05:58:39,652 INFO L290 TraceCheckUtils]: 22: Hoare triple {2096#true} assume true; {2096#true} is VALID [2022-04-28 05:58:39,653 INFO L290 TraceCheckUtils]: 21: Hoare triple {2096#true} assume !(0 == ~cond); {2096#true} is VALID [2022-04-28 05:58:39,653 INFO L290 TraceCheckUtils]: 20: Hoare triple {2096#true} ~cond := #in~cond; {2096#true} is VALID [2022-04-28 05:58:39,653 INFO L272 TraceCheckUtils]: 19: Hoare triple {2272#(< ~counter~0 49)} call __VERIFIER_assert((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-28 05:58:39,653 INFO L290 TraceCheckUtils]: 18: Hoare triple {2272#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {2272#(< ~counter~0 49)} is VALID [2022-04-28 05:58:39,653 INFO L290 TraceCheckUtils]: 17: Hoare triple {2297#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2272#(< ~counter~0 49)} is VALID [2022-04-28 05:58:39,654 INFO L290 TraceCheckUtils]: 16: Hoare triple {2297#(< ~counter~0 48)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {2297#(< ~counter~0 48)} is VALID [2022-04-28 05:58:39,654 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2096#true} {2297#(< ~counter~0 48)} #92#return; {2297#(< ~counter~0 48)} is VALID [2022-04-28 05:58:39,654 INFO L290 TraceCheckUtils]: 14: Hoare triple {2096#true} assume true; {2096#true} is VALID [2022-04-28 05:58:39,654 INFO L290 TraceCheckUtils]: 13: Hoare triple {2096#true} assume !(0 == ~cond); {2096#true} is VALID [2022-04-28 05:58:39,654 INFO L290 TraceCheckUtils]: 12: Hoare triple {2096#true} ~cond := #in~cond; {2096#true} is VALID [2022-04-28 05:58:39,654 INFO L272 TraceCheckUtils]: 11: Hoare triple {2297#(< ~counter~0 48)} 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-28 05:58:39,655 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2096#true} {2297#(< ~counter~0 48)} #90#return; {2297#(< ~counter~0 48)} is VALID [2022-04-28 05:58:39,655 INFO L290 TraceCheckUtils]: 9: Hoare triple {2096#true} assume true; {2096#true} is VALID [2022-04-28 05:58:39,655 INFO L290 TraceCheckUtils]: 8: Hoare triple {2096#true} assume !(0 == ~cond); {2096#true} is VALID [2022-04-28 05:58:39,655 INFO L290 TraceCheckUtils]: 7: Hoare triple {2096#true} ~cond := #in~cond; {2096#true} is VALID [2022-04-28 05:58:39,655 INFO L272 TraceCheckUtils]: 6: Hoare triple {2297#(< ~counter~0 48)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2096#true} is VALID [2022-04-28 05:58:39,656 INFO L290 TraceCheckUtils]: 5: Hoare triple {2297#(< ~counter~0 48)} 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 48)} is VALID [2022-04-28 05:58:39,656 INFO L272 TraceCheckUtils]: 4: Hoare triple {2297#(< ~counter~0 48)} call #t~ret9 := main(); {2297#(< ~counter~0 48)} is VALID [2022-04-28 05:58:39,656 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2297#(< ~counter~0 48)} {2096#true} #102#return; {2297#(< ~counter~0 48)} is VALID [2022-04-28 05:58:39,657 INFO L290 TraceCheckUtils]: 2: Hoare triple {2297#(< ~counter~0 48)} assume true; {2297#(< ~counter~0 48)} is VALID [2022-04-28 05:58:39,657 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 48)} is VALID [2022-04-28 05:58:39,657 INFO L272 TraceCheckUtils]: 0: Hoare triple {2096#true} call ULTIMATE.init(); {2096#true} is VALID [2022-04-28 05:58:39,657 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-28 05:58:39,657 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:58:39,657 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2064591565] [2022-04-28 05:58:39,658 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:58:39,658 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [650833560] [2022-04-28 05:58:39,658 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [650833560] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 05:58:39,658 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:58:39,658 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [6] total 10 [2022-04-28 05:58:39,658 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:58:39,658 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [172803840] [2022-04-28 05:58:39,658 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [172803840] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:39,658 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:39,658 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:58:39,658 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1308605050] [2022-04-28 05:58:39,658 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:58:39,659 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-28 05:58:39,659 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:58:39,659 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-28 05:58:39,680 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:39,681 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:58:39,681 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:39,681 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:58:39,681 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-28 05:58:39,681 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-28 05:58:39,838 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:39,838 INFO L93 Difference]: Finished difference Result 106 states and 135 transitions. [2022-04-28 05:58:39,838 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:58:39,838 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-28 05:58:39,839 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:58:39,839 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-28 05:58:39,840 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 87 transitions. [2022-04-28 05:58:39,854 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-28 05:58:39,855 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 87 transitions. [2022-04-28 05:58:39,855 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 87 transitions. [2022-04-28 05:58:39,911 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-28 05:58:39,913 INFO L225 Difference]: With dead ends: 106 [2022-04-28 05:58:39,913 INFO L226 Difference]: Without dead ends: 69 [2022-04-28 05:58:39,913 INFO L412 NwaCegarLoop]: 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-28 05:58:39,913 INFO L413 NwaCegarLoop]: 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-28 05:58:39,914 INFO L414 NwaCegarLoop]: 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-28 05:58:39,914 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2022-04-28 05:58:39,954 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 68. [2022-04-28 05:58:39,955 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:58:39,955 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-28 05:58:39,955 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-28 05:58:39,955 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-28 05:58:39,957 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:39,957 INFO L93 Difference]: Finished difference Result 69 states and 84 transitions. [2022-04-28 05:58:39,957 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 84 transitions. [2022-04-28 05:58:39,957 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:39,957 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:39,958 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-28 05:58:39,958 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-28 05:58:39,959 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:39,960 INFO L93 Difference]: Finished difference Result 69 states and 84 transitions. [2022-04-28 05:58:39,960 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 84 transitions. [2022-04-28 05:58:39,960 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:39,960 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:39,960 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:58:39,960 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:58:39,960 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-28 05:58:39,962 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 83 transitions. [2022-04-28 05:58:39,962 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 83 transitions. Word has length 41 [2022-04-28 05:58:39,962 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:58:39,962 INFO L495 AbstractCegarLoop]: Abstraction has 68 states and 83 transitions. [2022-04-28 05:58:39,962 INFO L496 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-28 05:58:39,962 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 83 transitions. [2022-04-28 05:58:44,382 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 81 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:44,383 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 83 transitions. [2022-04-28 05:58:44,383 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 05:58:44,383 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:58:44,383 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:58:44,399 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 05:58:44,583 WARN L477 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-28 05:58:44,584 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:58:44,584 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:58:44,584 INFO L85 PathProgramCache]: Analyzing trace with hash -1292932747, now seen corresponding path program 1 times [2022-04-28 05:58:44,584 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:44,584 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1669461343] [2022-04-28 05:58:44,585 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:58:44,585 INFO L85 PathProgramCache]: Analyzing trace with hash -1292932747, now seen corresponding path program 2 times [2022-04-28 05:58:44,585 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:58:44,585 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1037265241] [2022-04-28 05:58:44,585 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:58:44,585 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:58:44,599 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:58:44,599 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [777326281] [2022-04-28 05:58:44,599 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:58:44,599 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:58:44,599 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:58:44,600 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:58:44,601 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-28 05:58:44,642 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:58:44,643 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:58:44,643 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:58:44,657 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:58:44,657 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:58:44,857 INFO L272 TraceCheckUtils]: 0: Hoare triple {2837#true} call ULTIMATE.init(); {2837#true} is VALID [2022-04-28 05:58:44,858 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-28 05:58:44,858 INFO L290 TraceCheckUtils]: 2: Hoare triple {2845#(<= ~counter~0 0)} assume true; {2845#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:44,862 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2845#(<= ~counter~0 0)} {2837#true} #102#return; {2845#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:44,863 INFO L272 TraceCheckUtils]: 4: Hoare triple {2845#(<= ~counter~0 0)} call #t~ret9 := main(); {2845#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:44,868 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-28 05:58:44,869 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-28 05:58:44,870 INFO L290 TraceCheckUtils]: 7: Hoare triple {2845#(<= ~counter~0 0)} ~cond := #in~cond; {2845#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:44,870 INFO L290 TraceCheckUtils]: 8: Hoare triple {2845#(<= ~counter~0 0)} assume !(0 == ~cond); {2845#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:44,871 INFO L290 TraceCheckUtils]: 9: Hoare triple {2845#(<= ~counter~0 0)} assume true; {2845#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:44,874 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2845#(<= ~counter~0 0)} {2845#(<= ~counter~0 0)} #90#return; {2845#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:44,875 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-28 05:58:44,877 INFO L290 TraceCheckUtils]: 12: Hoare triple {2845#(<= ~counter~0 0)} ~cond := #in~cond; {2845#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:44,877 INFO L290 TraceCheckUtils]: 13: Hoare triple {2845#(<= ~counter~0 0)} assume !(0 == ~cond); {2845#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:44,878 INFO L290 TraceCheckUtils]: 14: Hoare triple {2845#(<= ~counter~0 0)} assume true; {2845#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:44,878 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2845#(<= ~counter~0 0)} {2845#(<= ~counter~0 0)} #92#return; {2845#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:44,878 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-28 05:58:44,879 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-28 05:58:44,879 INFO L290 TraceCheckUtils]: 18: Hoare triple {2894#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {2894#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:44,880 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-28 05:58:44,880 INFO L290 TraceCheckUtils]: 20: Hoare triple {2894#(<= ~counter~0 1)} ~cond := #in~cond; {2894#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:44,880 INFO L290 TraceCheckUtils]: 21: Hoare triple {2894#(<= ~counter~0 1)} assume !(0 == ~cond); {2894#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:44,881 INFO L290 TraceCheckUtils]: 22: Hoare triple {2894#(<= ~counter~0 1)} assume true; {2894#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:44,881 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2894#(<= ~counter~0 1)} {2894#(<= ~counter~0 1)} #94#return; {2894#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:44,882 INFO L290 TraceCheckUtils]: 24: Hoare triple {2894#(<= ~counter~0 1)} assume !!(0 != ~r~0); {2894#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:44,882 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-28 05:58:44,882 INFO L290 TraceCheckUtils]: 26: Hoare triple {2919#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {2919#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:44,883 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-28 05:58:44,883 INFO L290 TraceCheckUtils]: 28: Hoare triple {2919#(<= ~counter~0 2)} ~cond := #in~cond; {2919#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:44,883 INFO L290 TraceCheckUtils]: 29: Hoare triple {2919#(<= ~counter~0 2)} assume !(0 == ~cond); {2919#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:44,884 INFO L290 TraceCheckUtils]: 30: Hoare triple {2919#(<= ~counter~0 2)} assume true; {2919#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:44,884 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2919#(<= ~counter~0 2)} {2919#(<= ~counter~0 2)} #96#return; {2919#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:44,885 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-28 05:58:44,885 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-28 05:58:44,885 INFO L290 TraceCheckUtils]: 34: Hoare triple {2944#(<= |main_#t~post7| 2)} assume !(#t~post7 < 50);havoc #t~post7; {2838#false} is VALID [2022-04-28 05:58:44,885 INFO L290 TraceCheckUtils]: 35: Hoare triple {2838#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {2838#false} is VALID [2022-04-28 05:58:44,886 INFO L290 TraceCheckUtils]: 36: Hoare triple {2838#false} assume !(#t~post8 < 50);havoc #t~post8; {2838#false} is VALID [2022-04-28 05:58:44,886 INFO L290 TraceCheckUtils]: 37: Hoare triple {2838#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2838#false} is VALID [2022-04-28 05:58:44,886 INFO L290 TraceCheckUtils]: 38: Hoare triple {2838#false} assume !(#t~post6 < 50);havoc #t~post6; {2838#false} is VALID [2022-04-28 05:58:44,886 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-28 05:58:44,886 INFO L290 TraceCheckUtils]: 40: Hoare triple {2838#false} ~cond := #in~cond; {2838#false} is VALID [2022-04-28 05:58:44,886 INFO L290 TraceCheckUtils]: 41: Hoare triple {2838#false} assume 0 == ~cond; {2838#false} is VALID [2022-04-28 05:58:44,886 INFO L290 TraceCheckUtils]: 42: Hoare triple {2838#false} assume !false; {2838#false} is VALID [2022-04-28 05:58:44,886 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-28 05:58:44,886 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:58:45,091 INFO L290 TraceCheckUtils]: 42: Hoare triple {2838#false} assume !false; {2838#false} is VALID [2022-04-28 05:58:45,092 INFO L290 TraceCheckUtils]: 41: Hoare triple {2838#false} assume 0 == ~cond; {2838#false} is VALID [2022-04-28 05:58:45,092 INFO L290 TraceCheckUtils]: 40: Hoare triple {2838#false} ~cond := #in~cond; {2838#false} is VALID [2022-04-28 05:58:45,092 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-28 05:58:45,092 INFO L290 TraceCheckUtils]: 38: Hoare triple {2838#false} assume !(#t~post6 < 50);havoc #t~post6; {2838#false} is VALID [2022-04-28 05:58:45,092 INFO L290 TraceCheckUtils]: 37: Hoare triple {2838#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2838#false} is VALID [2022-04-28 05:58:45,092 INFO L290 TraceCheckUtils]: 36: Hoare triple {2838#false} assume !(#t~post8 < 50);havoc #t~post8; {2838#false} is VALID [2022-04-28 05:58:45,092 INFO L290 TraceCheckUtils]: 35: Hoare triple {2838#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {2838#false} is VALID [2022-04-28 05:58:45,092 INFO L290 TraceCheckUtils]: 34: Hoare triple {2996#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {2838#false} is VALID [2022-04-28 05:58:45,093 INFO L290 TraceCheckUtils]: 33: Hoare triple {3000#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2996#(< |main_#t~post7| 50)} is VALID [2022-04-28 05:58:45,093 INFO L290 TraceCheckUtils]: 32: Hoare triple {3000#(< ~counter~0 50)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3000#(< ~counter~0 50)} is VALID [2022-04-28 05:58:45,094 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2837#true} {3000#(< ~counter~0 50)} #96#return; {3000#(< ~counter~0 50)} is VALID [2022-04-28 05:58:45,094 INFO L290 TraceCheckUtils]: 30: Hoare triple {2837#true} assume true; {2837#true} is VALID [2022-04-28 05:58:45,094 INFO L290 TraceCheckUtils]: 29: Hoare triple {2837#true} assume !(0 == ~cond); {2837#true} is VALID [2022-04-28 05:58:45,094 INFO L290 TraceCheckUtils]: 28: Hoare triple {2837#true} ~cond := #in~cond; {2837#true} is VALID [2022-04-28 05:58:45,094 INFO L272 TraceCheckUtils]: 27: Hoare triple {3000#(< ~counter~0 50)} call __VERIFIER_assert((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-28 05:58:45,095 INFO L290 TraceCheckUtils]: 26: Hoare triple {3000#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {3000#(< ~counter~0 50)} is VALID [2022-04-28 05:58:45,096 INFO L290 TraceCheckUtils]: 25: Hoare triple {3025#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3000#(< ~counter~0 50)} is VALID [2022-04-28 05:58:45,096 INFO L290 TraceCheckUtils]: 24: Hoare triple {3025#(< ~counter~0 49)} assume !!(0 != ~r~0); {3025#(< ~counter~0 49)} is VALID [2022-04-28 05:58:45,097 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2837#true} {3025#(< ~counter~0 49)} #94#return; {3025#(< ~counter~0 49)} is VALID [2022-04-28 05:58:45,097 INFO L290 TraceCheckUtils]: 22: Hoare triple {2837#true} assume true; {2837#true} is VALID [2022-04-28 05:58:45,097 INFO L290 TraceCheckUtils]: 21: Hoare triple {2837#true} assume !(0 == ~cond); {2837#true} is VALID [2022-04-28 05:58:45,097 INFO L290 TraceCheckUtils]: 20: Hoare triple {2837#true} ~cond := #in~cond; {2837#true} is VALID [2022-04-28 05:58:45,097 INFO L272 TraceCheckUtils]: 19: Hoare triple {3025#(< ~counter~0 49)} call __VERIFIER_assert((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-28 05:58:45,098 INFO L290 TraceCheckUtils]: 18: Hoare triple {3025#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {3025#(< ~counter~0 49)} is VALID [2022-04-28 05:58:45,098 INFO L290 TraceCheckUtils]: 17: Hoare triple {3050#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3025#(< ~counter~0 49)} is VALID [2022-04-28 05:58:45,098 INFO L290 TraceCheckUtils]: 16: Hoare triple {3050#(< ~counter~0 48)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {3050#(< ~counter~0 48)} is VALID [2022-04-28 05:58:45,099 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2837#true} {3050#(< ~counter~0 48)} #92#return; {3050#(< ~counter~0 48)} is VALID [2022-04-28 05:58:45,099 INFO L290 TraceCheckUtils]: 14: Hoare triple {2837#true} assume true; {2837#true} is VALID [2022-04-28 05:58:45,099 INFO L290 TraceCheckUtils]: 13: Hoare triple {2837#true} assume !(0 == ~cond); {2837#true} is VALID [2022-04-28 05:58:45,099 INFO L290 TraceCheckUtils]: 12: Hoare triple {2837#true} ~cond := #in~cond; {2837#true} is VALID [2022-04-28 05:58:45,099 INFO L272 TraceCheckUtils]: 11: Hoare triple {3050#(< ~counter~0 48)} 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-28 05:58:45,100 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2837#true} {3050#(< ~counter~0 48)} #90#return; {3050#(< ~counter~0 48)} is VALID [2022-04-28 05:58:45,100 INFO L290 TraceCheckUtils]: 9: Hoare triple {2837#true} assume true; {2837#true} is VALID [2022-04-28 05:58:45,100 INFO L290 TraceCheckUtils]: 8: Hoare triple {2837#true} assume !(0 == ~cond); {2837#true} is VALID [2022-04-28 05:58:45,100 INFO L290 TraceCheckUtils]: 7: Hoare triple {2837#true} ~cond := #in~cond; {2837#true} is VALID [2022-04-28 05:58:45,100 INFO L272 TraceCheckUtils]: 6: Hoare triple {3050#(< ~counter~0 48)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2837#true} is VALID [2022-04-28 05:58:45,100 INFO L290 TraceCheckUtils]: 5: Hoare triple {3050#(< ~counter~0 48)} 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 48)} is VALID [2022-04-28 05:58:45,100 INFO L272 TraceCheckUtils]: 4: Hoare triple {3050#(< ~counter~0 48)} call #t~ret9 := main(); {3050#(< ~counter~0 48)} is VALID [2022-04-28 05:58:45,101 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3050#(< ~counter~0 48)} {2837#true} #102#return; {3050#(< ~counter~0 48)} is VALID [2022-04-28 05:58:45,101 INFO L290 TraceCheckUtils]: 2: Hoare triple {3050#(< ~counter~0 48)} assume true; {3050#(< ~counter~0 48)} is VALID [2022-04-28 05:58:45,102 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 48)} is VALID [2022-04-28 05:58:45,102 INFO L272 TraceCheckUtils]: 0: Hoare triple {2837#true} call ULTIMATE.init(); {2837#true} is VALID [2022-04-28 05:58:45,102 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-28 05:58:45,102 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:58:45,102 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1037265241] [2022-04-28 05:58:45,102 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:58:45,102 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [777326281] [2022-04-28 05:58:45,102 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [777326281] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:58:45,102 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:58:45,102 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-28 05:58:45,103 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:58:45,103 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1669461343] [2022-04-28 05:58:45,103 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1669461343] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:45,103 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:45,103 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:58:45,103 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [127170123] [2022-04-28 05:58:45,103 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:58:45,103 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-28 05:58:45,104 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:58:45,104 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-28 05:58:45,132 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-28 05:58:45,132 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:58:45,132 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:45,132 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:58:45,133 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-28 05:58:45,133 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-28 05:58:45,292 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:45,293 INFO L93 Difference]: Finished difference Result 91 states and 113 transitions. [2022-04-28 05:58:45,293 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 05:58:45,293 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-28 05:58:45,293 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:58:45,293 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-28 05:58:45,294 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 87 transitions. [2022-04-28 05:58:45,294 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-28 05:58:45,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 87 transitions. [2022-04-28 05:58:45,296 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 87 transitions. [2022-04-28 05:58:45,364 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-28 05:58:45,365 INFO L225 Difference]: With dead ends: 91 [2022-04-28 05:58:45,365 INFO L226 Difference]: Without dead ends: 70 [2022-04-28 05:58:45,365 INFO L412 NwaCegarLoop]: 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-28 05:58:45,366 INFO L413 NwaCegarLoop]: 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-28 05:58:45,366 INFO L414 NwaCegarLoop]: 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-28 05:58:45,366 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-28 05:58:45,410 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-04-28 05:58:45,410 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:58:45,412 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-28 05:58:45,412 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-28 05:58:45,412 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-28 05:58:45,414 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:45,414 INFO L93 Difference]: Finished difference Result 70 states and 85 transitions. [2022-04-28 05:58:45,414 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 85 transitions. [2022-04-28 05:58:45,414 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:45,414 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:45,415 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-28 05:58:45,415 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-28 05:58:45,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:45,418 INFO L93 Difference]: Finished difference Result 70 states and 85 transitions. [2022-04-28 05:58:45,418 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 85 transitions. [2022-04-28 05:58:45,418 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:45,418 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:45,418 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:58:45,418 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:58:45,418 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-28 05:58:45,420 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 85 transitions. [2022-04-28 05:58:45,420 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 85 transitions. Word has length 43 [2022-04-28 05:58:45,420 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:58:45,420 INFO L495 AbstractCegarLoop]: Abstraction has 70 states and 85 transitions. [2022-04-28 05:58:45,420 INFO L496 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-28 05:58:45,420 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 70 states and 85 transitions. [2022-04-28 05:58:46,419 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:46,419 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 85 transitions. [2022-04-28 05:58:46,420 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-28 05:58:46,420 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:58:46,420 INFO L195 NwaCegarLoop]: 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-28 05:58:46,436 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-04-28 05:58:46,624 WARN L477 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-28 05:58:46,625 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:58:46,625 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:58:46,625 INFO L85 PathProgramCache]: Analyzing trace with hash 1407897436, now seen corresponding path program 1 times [2022-04-28 05:58:46,625 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:46,625 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1648833656] [2022-04-28 05:58:46,625 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:58:46,626 INFO L85 PathProgramCache]: Analyzing trace with hash 1407897436, now seen corresponding path program 2 times [2022-04-28 05:58:46,626 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:58:46,626 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1861192388] [2022-04-28 05:58:46,626 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:58:46,626 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:58:46,643 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:58:46,643 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [719119749] [2022-04-28 05:58:46,643 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:58:46,643 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:58:46,644 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:58:46,644 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:58:46,645 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-28 05:58:46,681 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:58:46,681 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:58:46,682 INFO L263 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 3 conjunts are in the unsatisfiable core [2022-04-28 05:58:46,689 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:58:46,690 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:58:46,845 INFO L272 TraceCheckUtils]: 0: Hoare triple {3568#true} call ULTIMATE.init(); {3568#true} is VALID [2022-04-28 05:58:46,845 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-28 05:58:46,846 INFO L290 TraceCheckUtils]: 2: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-28 05:58:46,846 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3568#true} {3568#true} #102#return; {3568#true} is VALID [2022-04-28 05:58:46,846 INFO L272 TraceCheckUtils]: 4: Hoare triple {3568#true} call #t~ret9 := main(); {3568#true} is VALID [2022-04-28 05:58:46,846 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-28 05:58:46,846 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-28 05:58:46,846 INFO L290 TraceCheckUtils]: 7: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-28 05:58:46,846 INFO L290 TraceCheckUtils]: 8: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-28 05:58:46,846 INFO L290 TraceCheckUtils]: 9: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-28 05:58:46,846 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3568#true} {3568#true} #90#return; {3568#true} is VALID [2022-04-28 05:58:46,846 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-28 05:58:46,846 INFO L290 TraceCheckUtils]: 12: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-28 05:58:46,846 INFO L290 TraceCheckUtils]: 13: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-28 05:58:46,847 INFO L290 TraceCheckUtils]: 14: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-28 05:58:46,847 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3568#true} {3568#true} #92#return; {3568#true} is VALID [2022-04-28 05:58:46,847 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-28 05:58:46,847 INFO L290 TraceCheckUtils]: 17: Hoare triple {3568#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3568#true} is VALID [2022-04-28 05:58:46,847 INFO L290 TraceCheckUtils]: 18: Hoare triple {3568#true} assume !!(#t~post6 < 50);havoc #t~post6; {3568#true} is VALID [2022-04-28 05:58:46,847 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-28 05:58:46,847 INFO L290 TraceCheckUtils]: 20: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-28 05:58:46,847 INFO L290 TraceCheckUtils]: 21: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-28 05:58:46,847 INFO L290 TraceCheckUtils]: 22: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-28 05:58:46,847 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3568#true} {3568#true} #94#return; {3568#true} is VALID [2022-04-28 05:58:46,848 INFO L290 TraceCheckUtils]: 24: Hoare triple {3568#true} assume !!(0 != ~r~0); {3645#(not (= main_~r~0 0))} is VALID [2022-04-28 05:58:46,848 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-28 05:58:46,848 INFO L290 TraceCheckUtils]: 26: Hoare triple {3645#(not (= main_~r~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {3645#(not (= main_~r~0 0))} is VALID [2022-04-28 05:58:46,848 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-28 05:58:46,848 INFO L290 TraceCheckUtils]: 28: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-28 05:58:46,848 INFO L290 TraceCheckUtils]: 29: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-28 05:58:46,848 INFO L290 TraceCheckUtils]: 30: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-28 05:58:46,849 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-28 05:58:46,849 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-28 05:58:46,850 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-28 05:58:46,850 INFO L290 TraceCheckUtils]: 34: Hoare triple {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} assume !!(#t~post8 < 50);havoc #t~post8; {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} is VALID [2022-04-28 05:58:46,850 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-28 05:58:46,850 INFO L290 TraceCheckUtils]: 36: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-28 05:58:46,850 INFO L290 TraceCheckUtils]: 37: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-28 05:58:46,851 INFO L290 TraceCheckUtils]: 38: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-28 05:58:46,857 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-28 05:58:46,858 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-28 05:58:46,858 INFO L290 TraceCheckUtils]: 41: Hoare triple {3569#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3569#false} is VALID [2022-04-28 05:58:46,858 INFO L290 TraceCheckUtils]: 42: Hoare triple {3569#false} assume !(#t~post6 < 50);havoc #t~post6; {3569#false} is VALID [2022-04-28 05:58:46,858 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-28 05:58:46,858 INFO L290 TraceCheckUtils]: 44: Hoare triple {3569#false} ~cond := #in~cond; {3569#false} is VALID [2022-04-28 05:58:46,858 INFO L290 TraceCheckUtils]: 45: Hoare triple {3569#false} assume 0 == ~cond; {3569#false} is VALID [2022-04-28 05:58:46,858 INFO L290 TraceCheckUtils]: 46: Hoare triple {3569#false} assume !false; {3569#false} is VALID [2022-04-28 05:58:46,858 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-28 05:58:46,859 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:58:46,859 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:58:46,859 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1861192388] [2022-04-28 05:58:46,859 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:58:46,859 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [719119749] [2022-04-28 05:58:46,859 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [719119749] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:46,859 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:46,859 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 05:58:46,859 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:58:46,859 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1648833656] [2022-04-28 05:58:46,859 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1648833656] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:46,859 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:46,859 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 05:58:46,860 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [59342382] [2022-04-28 05:58:46,860 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:58:46,860 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-28 05:58:46,860 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:58:46,860 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-28 05:58:46,885 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:46,885 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 05:58:46,885 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:46,885 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 05:58:46,886 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-28 05:58:46,886 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-28 05:58:47,068 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:47,068 INFO L93 Difference]: Finished difference Result 153 states and 210 transitions. [2022-04-28 05:58:47,068 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 05:58:47,068 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-28 05:58:47,068 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:58:47,068 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-28 05:58:47,070 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 108 transitions. [2022-04-28 05:58:47,070 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-28 05:58:47,071 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 108 transitions. [2022-04-28 05:58:47,071 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 108 transitions. [2022-04-28 05:58:47,147 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-28 05:58:47,149 INFO L225 Difference]: With dead ends: 153 [2022-04-28 05:58:47,149 INFO L226 Difference]: Without dead ends: 116 [2022-04-28 05:58:47,149 INFO L412 NwaCegarLoop]: 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-28 05:58:47,149 INFO L413 NwaCegarLoop]: 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-28 05:58:47,150 INFO L414 NwaCegarLoop]: 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-28 05:58:47,150 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 116 states. [2022-04-28 05:58:47,216 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 116 to 98. [2022-04-28 05:58:47,217 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:58:47,217 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-28 05:58:47,217 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-28 05:58:47,217 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-28 05:58:47,221 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:47,221 INFO L93 Difference]: Finished difference Result 116 states and 156 transitions. [2022-04-28 05:58:47,221 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 156 transitions. [2022-04-28 05:58:47,222 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:47,222 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:47,222 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-28 05:58:47,222 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-28 05:58:47,226 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:47,226 INFO L93 Difference]: Finished difference Result 116 states and 156 transitions. [2022-04-28 05:58:47,226 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 156 transitions. [2022-04-28 05:58:47,226 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:47,226 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:47,226 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:58:47,226 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:58:47,227 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-28 05:58:47,229 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 98 states to 98 states and 128 transitions. [2022-04-28 05:58:47,230 INFO L78 Accepts]: Start accepts. Automaton has 98 states and 128 transitions. Word has length 47 [2022-04-28 05:58:47,230 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:58:47,230 INFO L495 AbstractCegarLoop]: Abstraction has 98 states and 128 transitions. [2022-04-28 05:58:47,234 INFO L496 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-28 05:58:47,234 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 98 states and 128 transitions. [2022-04-28 05:58:53,540 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 128 edges. 125 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:53,541 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 128 transitions. [2022-04-28 05:58:53,541 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-28 05:58:53,541 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:58:53,541 INFO L195 NwaCegarLoop]: 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-28 05:58:53,557 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-28 05:58:53,749 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable7 [2022-04-28 05:58:53,750 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:58:53,750 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:58:53,750 INFO L85 PathProgramCache]: Analyzing trace with hash 1915058849, now seen corresponding path program 1 times [2022-04-28 05:58:53,750 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:53,751 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1938729698] [2022-04-28 05:58:53,751 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:58:53,751 INFO L85 PathProgramCache]: Analyzing trace with hash 1915058849, now seen corresponding path program 2 times [2022-04-28 05:58:53,751 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:58:53,751 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1249068212] [2022-04-28 05:58:53,751 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:58:53,751 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:58:53,786 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:58:53,786 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1867645101] [2022-04-28 05:58:53,786 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:58:53,786 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:58:53,786 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:58:53,792 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:58:53,793 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-28 05:58:53,834 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:58:53,834 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:58:53,835 INFO L263 TraceCheckSpWp]: Trace formula consists of 147 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 05:58:53,844 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:58:53,845 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:58:54,077 INFO L272 TraceCheckUtils]: 0: Hoare triple {4446#true} call ULTIMATE.init(); {4446#true} is VALID [2022-04-28 05:58:54,078 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-28 05:58:54,078 INFO L290 TraceCheckUtils]: 2: Hoare triple {4454#(<= ~counter~0 0)} assume true; {4454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:54,078 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4454#(<= ~counter~0 0)} {4446#true} #102#return; {4454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:54,079 INFO L272 TraceCheckUtils]: 4: Hoare triple {4454#(<= ~counter~0 0)} call #t~ret9 := main(); {4454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:54,079 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-28 05:58:54,080 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-28 05:58:54,080 INFO L290 TraceCheckUtils]: 7: Hoare triple {4454#(<= ~counter~0 0)} ~cond := #in~cond; {4454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:54,080 INFO L290 TraceCheckUtils]: 8: Hoare triple {4454#(<= ~counter~0 0)} assume !(0 == ~cond); {4454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:54,081 INFO L290 TraceCheckUtils]: 9: Hoare triple {4454#(<= ~counter~0 0)} assume true; {4454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:54,081 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4454#(<= ~counter~0 0)} {4454#(<= ~counter~0 0)} #90#return; {4454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:54,082 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-28 05:58:54,082 INFO L290 TraceCheckUtils]: 12: Hoare triple {4454#(<= ~counter~0 0)} ~cond := #in~cond; {4454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:54,082 INFO L290 TraceCheckUtils]: 13: Hoare triple {4454#(<= ~counter~0 0)} assume !(0 == ~cond); {4454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:54,083 INFO L290 TraceCheckUtils]: 14: Hoare triple {4454#(<= ~counter~0 0)} assume true; {4454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:54,083 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4454#(<= ~counter~0 0)} {4454#(<= ~counter~0 0)} #92#return; {4454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:54,083 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-28 05:58:54,084 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-28 05:58:54,084 INFO L290 TraceCheckUtils]: 18: Hoare triple {4503#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {4503#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:54,085 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-28 05:58:54,085 INFO L290 TraceCheckUtils]: 20: Hoare triple {4503#(<= ~counter~0 1)} ~cond := #in~cond; {4503#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:54,085 INFO L290 TraceCheckUtils]: 21: Hoare triple {4503#(<= ~counter~0 1)} assume !(0 == ~cond); {4503#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:54,086 INFO L290 TraceCheckUtils]: 22: Hoare triple {4503#(<= ~counter~0 1)} assume true; {4503#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:54,086 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4503#(<= ~counter~0 1)} {4503#(<= ~counter~0 1)} #94#return; {4503#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:54,087 INFO L290 TraceCheckUtils]: 24: Hoare triple {4503#(<= ~counter~0 1)} assume !!(0 != ~r~0); {4503#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:54,087 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-28 05:58:54,087 INFO L290 TraceCheckUtils]: 26: Hoare triple {4528#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {4528#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:54,088 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-28 05:58:54,088 INFO L290 TraceCheckUtils]: 28: Hoare triple {4528#(<= ~counter~0 2)} ~cond := #in~cond; {4528#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:54,088 INFO L290 TraceCheckUtils]: 29: Hoare triple {4528#(<= ~counter~0 2)} assume !(0 == ~cond); {4528#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:54,089 INFO L290 TraceCheckUtils]: 30: Hoare triple {4528#(<= ~counter~0 2)} assume true; {4528#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:54,089 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4528#(<= ~counter~0 2)} {4528#(<= ~counter~0 2)} #96#return; {4528#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:54,090 INFO L290 TraceCheckUtils]: 32: Hoare triple {4528#(<= ~counter~0 2)} assume !(~r~0 > 0); {4528#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:54,090 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-28 05:58:54,090 INFO L290 TraceCheckUtils]: 34: Hoare triple {4553#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {4553#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:54,091 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-28 05:58:54,091 INFO L290 TraceCheckUtils]: 36: Hoare triple {4553#(<= ~counter~0 3)} ~cond := #in~cond; {4553#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:54,091 INFO L290 TraceCheckUtils]: 37: Hoare triple {4553#(<= ~counter~0 3)} assume !(0 == ~cond); {4553#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:54,092 INFO L290 TraceCheckUtils]: 38: Hoare triple {4553#(<= ~counter~0 3)} assume true; {4553#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:54,092 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4553#(<= ~counter~0 3)} {4553#(<= ~counter~0 3)} #98#return; {4553#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:54,093 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-28 05:58:54,093 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-28 05:58:54,093 INFO L290 TraceCheckUtils]: 42: Hoare triple {4578#(<= |main_#t~post8| 3)} assume !(#t~post8 < 50);havoc #t~post8; {4447#false} is VALID [2022-04-28 05:58:54,093 INFO L290 TraceCheckUtils]: 43: Hoare triple {4447#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4447#false} is VALID [2022-04-28 05:58:54,093 INFO L290 TraceCheckUtils]: 44: Hoare triple {4447#false} assume !(#t~post6 < 50);havoc #t~post6; {4447#false} is VALID [2022-04-28 05:58:54,094 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-28 05:58:54,094 INFO L290 TraceCheckUtils]: 46: Hoare triple {4447#false} ~cond := #in~cond; {4447#false} is VALID [2022-04-28 05:58:54,094 INFO L290 TraceCheckUtils]: 47: Hoare triple {4447#false} assume 0 == ~cond; {4447#false} is VALID [2022-04-28 05:58:54,094 INFO L290 TraceCheckUtils]: 48: Hoare triple {4447#false} assume !false; {4447#false} is VALID [2022-04-28 05:58:54,094 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-28 05:58:54,094 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:58:54,327 INFO L290 TraceCheckUtils]: 48: Hoare triple {4447#false} assume !false; {4447#false} is VALID [2022-04-28 05:58:54,327 INFO L290 TraceCheckUtils]: 47: Hoare triple {4447#false} assume 0 == ~cond; {4447#false} is VALID [2022-04-28 05:58:54,327 INFO L290 TraceCheckUtils]: 46: Hoare triple {4447#false} ~cond := #in~cond; {4447#false} is VALID [2022-04-28 05:58:54,327 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-28 05:58:54,328 INFO L290 TraceCheckUtils]: 44: Hoare triple {4447#false} assume !(#t~post6 < 50);havoc #t~post6; {4447#false} is VALID [2022-04-28 05:58:54,328 INFO L290 TraceCheckUtils]: 43: Hoare triple {4447#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4447#false} is VALID [2022-04-28 05:58:54,332 INFO L290 TraceCheckUtils]: 42: Hoare triple {4618#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {4447#false} is VALID [2022-04-28 05:58:54,333 INFO L290 TraceCheckUtils]: 41: Hoare triple {4622#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4618#(< |main_#t~post8| 50)} is VALID [2022-04-28 05:58:54,333 INFO L290 TraceCheckUtils]: 40: Hoare triple {4622#(< ~counter~0 50)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {4622#(< ~counter~0 50)} is VALID [2022-04-28 05:58:54,334 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4446#true} {4622#(< ~counter~0 50)} #98#return; {4622#(< ~counter~0 50)} is VALID [2022-04-28 05:58:54,334 INFO L290 TraceCheckUtils]: 38: Hoare triple {4446#true} assume true; {4446#true} is VALID [2022-04-28 05:58:54,334 INFO L290 TraceCheckUtils]: 37: Hoare triple {4446#true} assume !(0 == ~cond); {4446#true} is VALID [2022-04-28 05:58:54,334 INFO L290 TraceCheckUtils]: 36: Hoare triple {4446#true} ~cond := #in~cond; {4446#true} is VALID [2022-04-28 05:58:54,334 INFO L272 TraceCheckUtils]: 35: Hoare triple {4622#(< ~counter~0 50)} call __VERIFIER_assert((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-28 05:58:54,334 INFO L290 TraceCheckUtils]: 34: Hoare triple {4622#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {4622#(< ~counter~0 50)} is VALID [2022-04-28 05:58:54,335 INFO L290 TraceCheckUtils]: 33: Hoare triple {4647#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4622#(< ~counter~0 50)} is VALID [2022-04-28 05:58:54,335 INFO L290 TraceCheckUtils]: 32: Hoare triple {4647#(< ~counter~0 49)} assume !(~r~0 > 0); {4647#(< ~counter~0 49)} is VALID [2022-04-28 05:58:54,335 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4446#true} {4647#(< ~counter~0 49)} #96#return; {4647#(< ~counter~0 49)} is VALID [2022-04-28 05:58:54,335 INFO L290 TraceCheckUtils]: 30: Hoare triple {4446#true} assume true; {4446#true} is VALID [2022-04-28 05:58:54,335 INFO L290 TraceCheckUtils]: 29: Hoare triple {4446#true} assume !(0 == ~cond); {4446#true} is VALID [2022-04-28 05:58:54,335 INFO L290 TraceCheckUtils]: 28: Hoare triple {4446#true} ~cond := #in~cond; {4446#true} is VALID [2022-04-28 05:58:54,336 INFO L272 TraceCheckUtils]: 27: Hoare triple {4647#(< ~counter~0 49)} call __VERIFIER_assert((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-28 05:58:54,336 INFO L290 TraceCheckUtils]: 26: Hoare triple {4647#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {4647#(< ~counter~0 49)} is VALID [2022-04-28 05:58:54,336 INFO L290 TraceCheckUtils]: 25: Hoare triple {4672#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4647#(< ~counter~0 49)} is VALID [2022-04-28 05:58:54,336 INFO L290 TraceCheckUtils]: 24: Hoare triple {4672#(< ~counter~0 48)} assume !!(0 != ~r~0); {4672#(< ~counter~0 48)} is VALID [2022-04-28 05:58:54,337 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4446#true} {4672#(< ~counter~0 48)} #94#return; {4672#(< ~counter~0 48)} is VALID [2022-04-28 05:58:54,337 INFO L290 TraceCheckUtils]: 22: Hoare triple {4446#true} assume true; {4446#true} is VALID [2022-04-28 05:58:54,337 INFO L290 TraceCheckUtils]: 21: Hoare triple {4446#true} assume !(0 == ~cond); {4446#true} is VALID [2022-04-28 05:58:54,337 INFO L290 TraceCheckUtils]: 20: Hoare triple {4446#true} ~cond := #in~cond; {4446#true} is VALID [2022-04-28 05:58:54,337 INFO L272 TraceCheckUtils]: 19: Hoare triple {4672#(< ~counter~0 48)} call __VERIFIER_assert((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-28 05:58:54,337 INFO L290 TraceCheckUtils]: 18: Hoare triple {4672#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {4672#(< ~counter~0 48)} is VALID [2022-04-28 05:58:54,337 INFO L290 TraceCheckUtils]: 17: Hoare triple {4697#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4672#(< ~counter~0 48)} is VALID [2022-04-28 05:58:54,338 INFO L290 TraceCheckUtils]: 16: Hoare triple {4697#(< ~counter~0 47)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {4697#(< ~counter~0 47)} is VALID [2022-04-28 05:58:54,338 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4446#true} {4697#(< ~counter~0 47)} #92#return; {4697#(< ~counter~0 47)} is VALID [2022-04-28 05:58:54,338 INFO L290 TraceCheckUtils]: 14: Hoare triple {4446#true} assume true; {4446#true} is VALID [2022-04-28 05:58:54,338 INFO L290 TraceCheckUtils]: 13: Hoare triple {4446#true} assume !(0 == ~cond); {4446#true} is VALID [2022-04-28 05:58:54,338 INFO L290 TraceCheckUtils]: 12: Hoare triple {4446#true} ~cond := #in~cond; {4446#true} is VALID [2022-04-28 05:58:54,338 INFO L272 TraceCheckUtils]: 11: Hoare triple {4697#(< ~counter~0 47)} 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-28 05:58:54,345 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4446#true} {4697#(< ~counter~0 47)} #90#return; {4697#(< ~counter~0 47)} is VALID [2022-04-28 05:58:54,345 INFO L290 TraceCheckUtils]: 9: Hoare triple {4446#true} assume true; {4446#true} is VALID [2022-04-28 05:58:54,345 INFO L290 TraceCheckUtils]: 8: Hoare triple {4446#true} assume !(0 == ~cond); {4446#true} is VALID [2022-04-28 05:58:54,345 INFO L290 TraceCheckUtils]: 7: Hoare triple {4446#true} ~cond := #in~cond; {4446#true} is VALID [2022-04-28 05:58:54,345 INFO L272 TraceCheckUtils]: 6: Hoare triple {4697#(< ~counter~0 47)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {4446#true} is VALID [2022-04-28 05:58:54,345 INFO L290 TraceCheckUtils]: 5: Hoare triple {4697#(< ~counter~0 47)} 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 47)} is VALID [2022-04-28 05:58:54,346 INFO L272 TraceCheckUtils]: 4: Hoare triple {4697#(< ~counter~0 47)} call #t~ret9 := main(); {4697#(< ~counter~0 47)} is VALID [2022-04-28 05:58:54,346 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4697#(< ~counter~0 47)} {4446#true} #102#return; {4697#(< ~counter~0 47)} is VALID [2022-04-28 05:58:54,346 INFO L290 TraceCheckUtils]: 2: Hoare triple {4697#(< ~counter~0 47)} assume true; {4697#(< ~counter~0 47)} is VALID [2022-04-28 05:58:54,347 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 47)} is VALID [2022-04-28 05:58:54,347 INFO L272 TraceCheckUtils]: 0: Hoare triple {4446#true} call ULTIMATE.init(); {4446#true} is VALID [2022-04-28 05:58:54,347 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-28 05:58:54,347 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:58:54,347 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1249068212] [2022-04-28 05:58:54,347 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:58:54,347 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1867645101] [2022-04-28 05:58:54,347 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1867645101] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:58:54,347 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:58:54,347 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-28 05:58:54,348 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:58:54,348 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1938729698] [2022-04-28 05:58:54,348 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1938729698] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:54,348 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:54,348 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 05:58:54,348 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1260063202] [2022-04-28 05:58:54,348 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:58:54,348 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-28 05:58:54,348 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:58:54,349 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-28 05:58:54,369 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:54,369 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 05:58:54,369 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:54,369 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 05:58:54,369 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:58:54,369 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-28 05:58:54,578 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:54,578 INFO L93 Difference]: Finished difference Result 176 states and 238 transitions. [2022-04-28 05:58:54,578 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:58:54,578 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-28 05:58:54,578 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:58:54,578 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-28 05:58:54,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 101 transitions. [2022-04-28 05:58:54,580 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-28 05:58:54,581 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 101 transitions. [2022-04-28 05:58:54,581 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 101 transitions. [2022-04-28 05:58:54,646 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-28 05:58:54,647 INFO L225 Difference]: With dead ends: 176 [2022-04-28 05:58:54,648 INFO L226 Difference]: Without dead ends: 111 [2022-04-28 05:58:54,648 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 98 GetRequests, 87 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=59, Invalid=97, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:58:54,648 INFO L413 NwaCegarLoop]: 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-28 05:58:54,649 INFO L414 NwaCegarLoop]: 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-28 05:58:54,649 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 111 states. [2022-04-28 05:58:54,714 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 111 to 110. [2022-04-28 05:58:54,714 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:58:54,719 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-28 05:58:54,722 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-28 05:58:54,722 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-28 05:58:54,725 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:54,725 INFO L93 Difference]: Finished difference Result 111 states and 143 transitions. [2022-04-28 05:58:54,725 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 143 transitions. [2022-04-28 05:58:54,725 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:54,725 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:54,726 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-28 05:58:54,726 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-28 05:58:54,728 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:54,728 INFO L93 Difference]: Finished difference Result 111 states and 143 transitions. [2022-04-28 05:58:54,728 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 143 transitions. [2022-04-28 05:58:54,728 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:54,728 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:54,728 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:58:54,728 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:58:54,728 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-28 05:58:54,730 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 110 states to 110 states and 142 transitions. [2022-04-28 05:58:54,730 INFO L78 Accepts]: Start accepts. Automaton has 110 states and 142 transitions. Word has length 49 [2022-04-28 05:58:54,730 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:58:54,731 INFO L495 AbstractCegarLoop]: Abstraction has 110 states and 142 transitions. [2022-04-28 05:58:54,731 INFO L496 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-28 05:58:54,731 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 110 states and 142 transitions. [2022-04-28 05:59:00,305 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-28 05:59:00,306 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 142 transitions. [2022-04-28 05:59:00,306 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-28 05:59:00,306 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:59:00,306 INFO L195 NwaCegarLoop]: 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-28 05:59:00,322 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-28 05:59:00,507 WARN L477 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-28 05:59:00,507 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:59:00,507 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:59:00,507 INFO L85 PathProgramCache]: Analyzing trace with hash -60460648, now seen corresponding path program 3 times [2022-04-28 05:59:00,507 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:00,507 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [438225219] [2022-04-28 05:59:00,508 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:59:00,508 INFO L85 PathProgramCache]: Analyzing trace with hash -60460648, now seen corresponding path program 4 times [2022-04-28 05:59:00,508 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:59:00,508 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [292514692] [2022-04-28 05:59:00,508 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:59:00,508 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:59:00,520 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:59:00,520 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1489821684] [2022-04-28 05:59:00,520 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:59:00,520 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:59:00,520 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:59:00,522 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:59:00,523 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-28 05:59:00,582 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:59:00,582 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:59:00,583 INFO L263 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 05:59:00,593 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:59:00,594 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:59:00,801 INFO L272 TraceCheckUtils]: 0: Hoare triple {5547#true} call ULTIMATE.init(); {5547#true} is VALID [2022-04-28 05:59:00,802 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-28 05:59:00,802 INFO L290 TraceCheckUtils]: 2: Hoare triple {5555#(<= ~counter~0 0)} assume true; {5555#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:00,803 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5555#(<= ~counter~0 0)} {5547#true} #102#return; {5555#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:00,803 INFO L272 TraceCheckUtils]: 4: Hoare triple {5555#(<= ~counter~0 0)} call #t~ret9 := main(); {5555#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:00,803 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-28 05:59:00,804 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-28 05:59:00,804 INFO L290 TraceCheckUtils]: 7: Hoare triple {5555#(<= ~counter~0 0)} ~cond := #in~cond; {5555#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:00,804 INFO L290 TraceCheckUtils]: 8: Hoare triple {5555#(<= ~counter~0 0)} assume !(0 == ~cond); {5555#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:00,804 INFO L290 TraceCheckUtils]: 9: Hoare triple {5555#(<= ~counter~0 0)} assume true; {5555#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:00,805 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5555#(<= ~counter~0 0)} {5555#(<= ~counter~0 0)} #90#return; {5555#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:00,805 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-28 05:59:00,805 INFO L290 TraceCheckUtils]: 12: Hoare triple {5555#(<= ~counter~0 0)} ~cond := #in~cond; {5555#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:00,806 INFO L290 TraceCheckUtils]: 13: Hoare triple {5555#(<= ~counter~0 0)} assume !(0 == ~cond); {5555#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:00,806 INFO L290 TraceCheckUtils]: 14: Hoare triple {5555#(<= ~counter~0 0)} assume true; {5555#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:00,806 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5555#(<= ~counter~0 0)} {5555#(<= ~counter~0 0)} #92#return; {5555#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:00,806 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-28 05:59:00,807 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-28 05:59:00,807 INFO L290 TraceCheckUtils]: 18: Hoare triple {5604#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {5604#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:00,808 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-28 05:59:00,808 INFO L290 TraceCheckUtils]: 20: Hoare triple {5604#(<= ~counter~0 1)} ~cond := #in~cond; {5604#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:00,808 INFO L290 TraceCheckUtils]: 21: Hoare triple {5604#(<= ~counter~0 1)} assume !(0 == ~cond); {5604#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:00,808 INFO L290 TraceCheckUtils]: 22: Hoare triple {5604#(<= ~counter~0 1)} assume true; {5604#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:00,809 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5604#(<= ~counter~0 1)} {5604#(<= ~counter~0 1)} #94#return; {5604#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:00,809 INFO L290 TraceCheckUtils]: 24: Hoare triple {5604#(<= ~counter~0 1)} assume !!(0 != ~r~0); {5604#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:00,809 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-28 05:59:00,810 INFO L290 TraceCheckUtils]: 26: Hoare triple {5629#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {5629#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:00,810 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-28 05:59:00,810 INFO L290 TraceCheckUtils]: 28: Hoare triple {5629#(<= ~counter~0 2)} ~cond := #in~cond; {5629#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:00,811 INFO L290 TraceCheckUtils]: 29: Hoare triple {5629#(<= ~counter~0 2)} assume !(0 == ~cond); {5629#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:00,811 INFO L290 TraceCheckUtils]: 30: Hoare triple {5629#(<= ~counter~0 2)} assume true; {5629#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:00,812 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5629#(<= ~counter~0 2)} {5629#(<= ~counter~0 2)} #96#return; {5629#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:00,812 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-28 05:59:00,813 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-28 05:59:00,813 INFO L290 TraceCheckUtils]: 34: Hoare triple {5654#(<= ~counter~0 3)} assume !!(#t~post7 < 50);havoc #t~post7; {5654#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:00,814 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-28 05:59:00,814 INFO L290 TraceCheckUtils]: 36: Hoare triple {5654#(<= ~counter~0 3)} ~cond := #in~cond; {5654#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:00,814 INFO L290 TraceCheckUtils]: 37: Hoare triple {5654#(<= ~counter~0 3)} assume !(0 == ~cond); {5654#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:00,814 INFO L290 TraceCheckUtils]: 38: Hoare triple {5654#(<= ~counter~0 3)} assume true; {5654#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:00,815 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {5654#(<= ~counter~0 3)} {5654#(<= ~counter~0 3)} #96#return; {5654#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:00,815 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-28 05:59:00,815 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-28 05:59:00,816 INFO L290 TraceCheckUtils]: 42: Hoare triple {5679#(<= |main_#t~post7| 3)} assume !(#t~post7 < 50);havoc #t~post7; {5548#false} is VALID [2022-04-28 05:59:00,816 INFO L290 TraceCheckUtils]: 43: Hoare triple {5548#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {5548#false} is VALID [2022-04-28 05:59:00,816 INFO L290 TraceCheckUtils]: 44: Hoare triple {5548#false} assume !(#t~post8 < 50);havoc #t~post8; {5548#false} is VALID [2022-04-28 05:59:00,816 INFO L290 TraceCheckUtils]: 45: Hoare triple {5548#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5548#false} is VALID [2022-04-28 05:59:00,816 INFO L290 TraceCheckUtils]: 46: Hoare triple {5548#false} assume !(#t~post6 < 50);havoc #t~post6; {5548#false} is VALID [2022-04-28 05:59:00,816 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-28 05:59:00,816 INFO L290 TraceCheckUtils]: 48: Hoare triple {5548#false} ~cond := #in~cond; {5548#false} is VALID [2022-04-28 05:59:00,816 INFO L290 TraceCheckUtils]: 49: Hoare triple {5548#false} assume 0 == ~cond; {5548#false} is VALID [2022-04-28 05:59:00,816 INFO L290 TraceCheckUtils]: 50: Hoare triple {5548#false} assume !false; {5548#false} is VALID [2022-04-28 05:59:00,816 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-28 05:59:00,816 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:59:01,053 INFO L290 TraceCheckUtils]: 50: Hoare triple {5548#false} assume !false; {5548#false} is VALID [2022-04-28 05:59:01,054 INFO L290 TraceCheckUtils]: 49: Hoare triple {5548#false} assume 0 == ~cond; {5548#false} is VALID [2022-04-28 05:59:01,054 INFO L290 TraceCheckUtils]: 48: Hoare triple {5548#false} ~cond := #in~cond; {5548#false} is VALID [2022-04-28 05:59:01,054 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-28 05:59:01,054 INFO L290 TraceCheckUtils]: 46: Hoare triple {5548#false} assume !(#t~post6 < 50);havoc #t~post6; {5548#false} is VALID [2022-04-28 05:59:01,054 INFO L290 TraceCheckUtils]: 45: Hoare triple {5548#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5548#false} is VALID [2022-04-28 05:59:01,054 INFO L290 TraceCheckUtils]: 44: Hoare triple {5548#false} assume !(#t~post8 < 50);havoc #t~post8; {5548#false} is VALID [2022-04-28 05:59:01,054 INFO L290 TraceCheckUtils]: 43: Hoare triple {5548#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {5548#false} is VALID [2022-04-28 05:59:01,054 INFO L290 TraceCheckUtils]: 42: Hoare triple {5731#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {5548#false} is VALID [2022-04-28 05:59:01,055 INFO L290 TraceCheckUtils]: 41: Hoare triple {5735#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5731#(< |main_#t~post7| 50)} is VALID [2022-04-28 05:59:01,055 INFO L290 TraceCheckUtils]: 40: Hoare triple {5735#(< ~counter~0 50)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5735#(< ~counter~0 50)} is VALID [2022-04-28 05:59:01,056 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {5547#true} {5735#(< ~counter~0 50)} #96#return; {5735#(< ~counter~0 50)} is VALID [2022-04-28 05:59:01,056 INFO L290 TraceCheckUtils]: 38: Hoare triple {5547#true} assume true; {5547#true} is VALID [2022-04-28 05:59:01,056 INFO L290 TraceCheckUtils]: 37: Hoare triple {5547#true} assume !(0 == ~cond); {5547#true} is VALID [2022-04-28 05:59:01,056 INFO L290 TraceCheckUtils]: 36: Hoare triple {5547#true} ~cond := #in~cond; {5547#true} is VALID [2022-04-28 05:59:01,056 INFO L272 TraceCheckUtils]: 35: Hoare triple {5735#(< ~counter~0 50)} call __VERIFIER_assert((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-28 05:59:01,056 INFO L290 TraceCheckUtils]: 34: Hoare triple {5735#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {5735#(< ~counter~0 50)} is VALID [2022-04-28 05:59:01,057 INFO L290 TraceCheckUtils]: 33: Hoare triple {5760#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5735#(< ~counter~0 50)} is VALID [2022-04-28 05:59:01,057 INFO L290 TraceCheckUtils]: 32: Hoare triple {5760#(< ~counter~0 49)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5760#(< ~counter~0 49)} is VALID [2022-04-28 05:59:01,057 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5547#true} {5760#(< ~counter~0 49)} #96#return; {5760#(< ~counter~0 49)} is VALID [2022-04-28 05:59:01,058 INFO L290 TraceCheckUtils]: 30: Hoare triple {5547#true} assume true; {5547#true} is VALID [2022-04-28 05:59:01,058 INFO L290 TraceCheckUtils]: 29: Hoare triple {5547#true} assume !(0 == ~cond); {5547#true} is VALID [2022-04-28 05:59:01,058 INFO L290 TraceCheckUtils]: 28: Hoare triple {5547#true} ~cond := #in~cond; {5547#true} is VALID [2022-04-28 05:59:01,058 INFO L272 TraceCheckUtils]: 27: Hoare triple {5760#(< ~counter~0 49)} call __VERIFIER_assert((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-28 05:59:01,058 INFO L290 TraceCheckUtils]: 26: Hoare triple {5760#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {5760#(< ~counter~0 49)} is VALID [2022-04-28 05:59:01,058 INFO L290 TraceCheckUtils]: 25: Hoare triple {5785#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5760#(< ~counter~0 49)} is VALID [2022-04-28 05:59:01,059 INFO L290 TraceCheckUtils]: 24: Hoare triple {5785#(< ~counter~0 48)} assume !!(0 != ~r~0); {5785#(< ~counter~0 48)} is VALID [2022-04-28 05:59:01,059 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5547#true} {5785#(< ~counter~0 48)} #94#return; {5785#(< ~counter~0 48)} is VALID [2022-04-28 05:59:01,059 INFO L290 TraceCheckUtils]: 22: Hoare triple {5547#true} assume true; {5547#true} is VALID [2022-04-28 05:59:01,059 INFO L290 TraceCheckUtils]: 21: Hoare triple {5547#true} assume !(0 == ~cond); {5547#true} is VALID [2022-04-28 05:59:01,060 INFO L290 TraceCheckUtils]: 20: Hoare triple {5547#true} ~cond := #in~cond; {5547#true} is VALID [2022-04-28 05:59:01,060 INFO L272 TraceCheckUtils]: 19: Hoare triple {5785#(< ~counter~0 48)} call __VERIFIER_assert((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-28 05:59:01,060 INFO L290 TraceCheckUtils]: 18: Hoare triple {5785#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {5785#(< ~counter~0 48)} is VALID [2022-04-28 05:59:01,060 INFO L290 TraceCheckUtils]: 17: Hoare triple {5810#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5785#(< ~counter~0 48)} is VALID [2022-04-28 05:59:01,061 INFO L290 TraceCheckUtils]: 16: Hoare triple {5810#(< ~counter~0 47)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {5810#(< ~counter~0 47)} is VALID [2022-04-28 05:59:01,061 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5547#true} {5810#(< ~counter~0 47)} #92#return; {5810#(< ~counter~0 47)} is VALID [2022-04-28 05:59:01,061 INFO L290 TraceCheckUtils]: 14: Hoare triple {5547#true} assume true; {5547#true} is VALID [2022-04-28 05:59:01,061 INFO L290 TraceCheckUtils]: 13: Hoare triple {5547#true} assume !(0 == ~cond); {5547#true} is VALID [2022-04-28 05:59:01,061 INFO L290 TraceCheckUtils]: 12: Hoare triple {5547#true} ~cond := #in~cond; {5547#true} is VALID [2022-04-28 05:59:01,061 INFO L272 TraceCheckUtils]: 11: Hoare triple {5810#(< ~counter~0 47)} 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-28 05:59:01,062 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5547#true} {5810#(< ~counter~0 47)} #90#return; {5810#(< ~counter~0 47)} is VALID [2022-04-28 05:59:01,062 INFO L290 TraceCheckUtils]: 9: Hoare triple {5547#true} assume true; {5547#true} is VALID [2022-04-28 05:59:01,062 INFO L290 TraceCheckUtils]: 8: Hoare triple {5547#true} assume !(0 == ~cond); {5547#true} is VALID [2022-04-28 05:59:01,062 INFO L290 TraceCheckUtils]: 7: Hoare triple {5547#true} ~cond := #in~cond; {5547#true} is VALID [2022-04-28 05:59:01,062 INFO L272 TraceCheckUtils]: 6: Hoare triple {5810#(< ~counter~0 47)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {5547#true} is VALID [2022-04-28 05:59:01,062 INFO L290 TraceCheckUtils]: 5: Hoare triple {5810#(< ~counter~0 47)} 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 47)} is VALID [2022-04-28 05:59:01,063 INFO L272 TraceCheckUtils]: 4: Hoare triple {5810#(< ~counter~0 47)} call #t~ret9 := main(); {5810#(< ~counter~0 47)} is VALID [2022-04-28 05:59:01,063 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5810#(< ~counter~0 47)} {5547#true} #102#return; {5810#(< ~counter~0 47)} is VALID [2022-04-28 05:59:01,063 INFO L290 TraceCheckUtils]: 2: Hoare triple {5810#(< ~counter~0 47)} assume true; {5810#(< ~counter~0 47)} is VALID [2022-04-28 05:59:01,064 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 47)} is VALID [2022-04-28 05:59:01,064 INFO L272 TraceCheckUtils]: 0: Hoare triple {5547#true} call ULTIMATE.init(); {5547#true} is VALID [2022-04-28 05:59:01,064 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-28 05:59:01,064 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:59:01,064 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [292514692] [2022-04-28 05:59:01,064 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:59:01,064 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1489821684] [2022-04-28 05:59:01,064 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1489821684] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:59:01,065 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:59:01,065 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-28 05:59:01,065 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:59:01,065 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [438225219] [2022-04-28 05:59:01,065 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [438225219] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:59:01,065 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:59:01,065 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 05:59:01,065 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [361463786] [2022-04-28 05:59:01,065 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:59:01,065 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-28 05:59:01,066 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:59:01,066 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-28 05:59:01,097 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:01,098 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 05:59:01,098 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:01,098 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 05:59:01,098 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:59:01,098 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-28 05:59:01,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:01,336 INFO L93 Difference]: Finished difference Result 149 states and 197 transitions. [2022-04-28 05:59:01,336 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:59:01,336 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-28 05:59:01,337 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:59:01,337 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-28 05:59:01,338 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 101 transitions. [2022-04-28 05:59:01,338 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-28 05:59:01,339 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 101 transitions. [2022-04-28 05:59:01,339 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 101 transitions. [2022-04-28 05:59:01,405 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-28 05:59:01,407 INFO L225 Difference]: With dead ends: 149 [2022-04-28 05:59:01,407 INFO L226 Difference]: Without dead ends: 112 [2022-04-28 05:59:01,408 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 91 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=70, Invalid=112, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:59:01,408 INFO L413 NwaCegarLoop]: 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-28 05:59:01,408 INFO L414 NwaCegarLoop]: 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-28 05:59:01,409 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2022-04-28 05:59:01,482 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 112. [2022-04-28 05:59:01,482 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:59:01,483 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-28 05:59:01,483 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-28 05:59:01,483 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-28 05:59:01,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:01,485 INFO L93 Difference]: Finished difference Result 112 states and 144 transitions. [2022-04-28 05:59:01,485 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 144 transitions. [2022-04-28 05:59:01,485 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:01,485 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:01,486 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-28 05:59:01,486 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-28 05:59:01,487 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:01,488 INFO L93 Difference]: Finished difference Result 112 states and 144 transitions. [2022-04-28 05:59:01,488 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 144 transitions. [2022-04-28 05:59:01,488 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:01,488 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:01,488 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:59:01,488 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:59:01,488 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-28 05:59:01,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 144 transitions. [2022-04-28 05:59:01,490 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 144 transitions. Word has length 51 [2022-04-28 05:59:01,490 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:59:01,490 INFO L495 AbstractCegarLoop]: Abstraction has 112 states and 144 transitions. [2022-04-28 05:59:01,490 INFO L496 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-28 05:59:01,490 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 112 states and 144 transitions. [2022-04-28 05:59:09,142 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 144 edges. 141 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:09,142 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 144 transitions. [2022-04-28 05:59:09,142 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-28 05:59:09,142 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:59:09,142 INFO L195 NwaCegarLoop]: 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-28 05:59:09,159 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-28 05:59:09,357 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-28 05:59:09,358 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:59:09,358 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:59:09,358 INFO L85 PathProgramCache]: Analyzing trace with hash -1067781299, now seen corresponding path program 1 times [2022-04-28 05:59:09,358 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:09,358 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1264999075] [2022-04-28 05:59:09,359 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:59:09,359 INFO L85 PathProgramCache]: Analyzing trace with hash -1067781299, now seen corresponding path program 2 times [2022-04-28 05:59:09,359 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:59:09,359 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1823435580] [2022-04-28 05:59:09,359 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:59:09,359 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:59:09,367 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:59:09,368 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2051985282] [2022-04-28 05:59:09,368 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:59:09,368 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:59:09,368 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:59:09,369 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:59:09,370 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-28 05:59:09,407 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:59:09,407 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:59:09,408 INFO L263 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 05:59:09,419 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:59:09,420 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:59:09,715 INFO L272 TraceCheckUtils]: 0: Hoare triple {6614#true} call ULTIMATE.init(); {6614#true} is VALID [2022-04-28 05:59:09,715 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-28 05:59:09,716 INFO L290 TraceCheckUtils]: 2: Hoare triple {6622#(<= ~counter~0 0)} assume true; {6622#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:09,716 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6622#(<= ~counter~0 0)} {6614#true} #102#return; {6622#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:09,716 INFO L272 TraceCheckUtils]: 4: Hoare triple {6622#(<= ~counter~0 0)} call #t~ret9 := main(); {6622#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:09,717 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-28 05:59:09,717 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-28 05:59:09,717 INFO L290 TraceCheckUtils]: 7: Hoare triple {6622#(<= ~counter~0 0)} ~cond := #in~cond; {6622#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:09,718 INFO L290 TraceCheckUtils]: 8: Hoare triple {6622#(<= ~counter~0 0)} assume !(0 == ~cond); {6622#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:09,718 INFO L290 TraceCheckUtils]: 9: Hoare triple {6622#(<= ~counter~0 0)} assume true; {6622#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:09,718 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6622#(<= ~counter~0 0)} {6622#(<= ~counter~0 0)} #90#return; {6622#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:09,719 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-28 05:59:09,719 INFO L290 TraceCheckUtils]: 12: Hoare triple {6622#(<= ~counter~0 0)} ~cond := #in~cond; {6622#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:09,719 INFO L290 TraceCheckUtils]: 13: Hoare triple {6622#(<= ~counter~0 0)} assume !(0 == ~cond); {6622#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:09,720 INFO L290 TraceCheckUtils]: 14: Hoare triple {6622#(<= ~counter~0 0)} assume true; {6622#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:09,720 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6622#(<= ~counter~0 0)} {6622#(<= ~counter~0 0)} #92#return; {6622#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:09,720 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-28 05:59:09,721 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-28 05:59:09,721 INFO L290 TraceCheckUtils]: 18: Hoare triple {6671#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {6671#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:09,722 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-28 05:59:09,722 INFO L290 TraceCheckUtils]: 20: Hoare triple {6671#(<= ~counter~0 1)} ~cond := #in~cond; {6671#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:09,722 INFO L290 TraceCheckUtils]: 21: Hoare triple {6671#(<= ~counter~0 1)} assume !(0 == ~cond); {6671#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:09,723 INFO L290 TraceCheckUtils]: 22: Hoare triple {6671#(<= ~counter~0 1)} assume true; {6671#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:09,723 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6671#(<= ~counter~0 1)} {6671#(<= ~counter~0 1)} #94#return; {6671#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:09,723 INFO L290 TraceCheckUtils]: 24: Hoare triple {6671#(<= ~counter~0 1)} assume !!(0 != ~r~0); {6671#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:09,724 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-28 05:59:09,724 INFO L290 TraceCheckUtils]: 26: Hoare triple {6696#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {6696#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:09,725 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-28 05:59:09,725 INFO L290 TraceCheckUtils]: 28: Hoare triple {6696#(<= ~counter~0 2)} ~cond := #in~cond; {6696#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:09,725 INFO L290 TraceCheckUtils]: 29: Hoare triple {6696#(<= ~counter~0 2)} assume !(0 == ~cond); {6696#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:09,726 INFO L290 TraceCheckUtils]: 30: Hoare triple {6696#(<= ~counter~0 2)} assume true; {6696#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:09,726 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6696#(<= ~counter~0 2)} {6696#(<= ~counter~0 2)} #96#return; {6696#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:09,726 INFO L290 TraceCheckUtils]: 32: Hoare triple {6696#(<= ~counter~0 2)} assume !(~r~0 > 0); {6696#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:09,727 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-28 05:59:09,727 INFO L290 TraceCheckUtils]: 34: Hoare triple {6721#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {6721#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:09,728 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-28 05:59:09,728 INFO L290 TraceCheckUtils]: 36: Hoare triple {6721#(<= ~counter~0 3)} ~cond := #in~cond; {6721#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:09,728 INFO L290 TraceCheckUtils]: 37: Hoare triple {6721#(<= ~counter~0 3)} assume !(0 == ~cond); {6721#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:09,729 INFO L290 TraceCheckUtils]: 38: Hoare triple {6721#(<= ~counter~0 3)} assume true; {6721#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:09,729 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {6721#(<= ~counter~0 3)} {6721#(<= ~counter~0 3)} #98#return; {6721#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:09,729 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-28 05:59:09,730 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-28 05:59:09,730 INFO L290 TraceCheckUtils]: 42: Hoare triple {6746#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {6746#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:09,731 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-28 05:59:09,731 INFO L290 TraceCheckUtils]: 44: Hoare triple {6746#(<= ~counter~0 4)} ~cond := #in~cond; {6746#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:09,731 INFO L290 TraceCheckUtils]: 45: Hoare triple {6746#(<= ~counter~0 4)} assume !(0 == ~cond); {6746#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:09,731 INFO L290 TraceCheckUtils]: 46: Hoare triple {6746#(<= ~counter~0 4)} assume true; {6746#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:09,732 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6746#(<= ~counter~0 4)} {6746#(<= ~counter~0 4)} #98#return; {6746#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:09,732 INFO L290 TraceCheckUtils]: 48: Hoare triple {6746#(<= ~counter~0 4)} assume !(~r~0 < 0); {6746#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:09,733 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-28 05:59:09,733 INFO L290 TraceCheckUtils]: 50: Hoare triple {6771#(<= |main_#t~post6| 4)} assume !(#t~post6 < 50);havoc #t~post6; {6615#false} is VALID [2022-04-28 05:59:09,733 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-28 05:59:09,733 INFO L290 TraceCheckUtils]: 52: Hoare triple {6615#false} ~cond := #in~cond; {6615#false} is VALID [2022-04-28 05:59:09,733 INFO L290 TraceCheckUtils]: 53: Hoare triple {6615#false} assume 0 == ~cond; {6615#false} is VALID [2022-04-28 05:59:09,733 INFO L290 TraceCheckUtils]: 54: Hoare triple {6615#false} assume !false; {6615#false} is VALID [2022-04-28 05:59:09,733 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-28 05:59:09,734 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:59:10,045 INFO L290 TraceCheckUtils]: 54: Hoare triple {6615#false} assume !false; {6615#false} is VALID [2022-04-28 05:59:10,046 INFO L290 TraceCheckUtils]: 53: Hoare triple {6615#false} assume 0 == ~cond; {6615#false} is VALID [2022-04-28 05:59:10,046 INFO L290 TraceCheckUtils]: 52: Hoare triple {6615#false} ~cond := #in~cond; {6615#false} is VALID [2022-04-28 05:59:10,046 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-28 05:59:10,046 INFO L290 TraceCheckUtils]: 50: Hoare triple {6799#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {6615#false} is VALID [2022-04-28 05:59:10,047 INFO L290 TraceCheckUtils]: 49: Hoare triple {6803#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6799#(< |main_#t~post6| 50)} is VALID [2022-04-28 05:59:10,047 INFO L290 TraceCheckUtils]: 48: Hoare triple {6803#(< ~counter~0 50)} assume !(~r~0 < 0); {6803#(< ~counter~0 50)} is VALID [2022-04-28 05:59:10,048 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6614#true} {6803#(< ~counter~0 50)} #98#return; {6803#(< ~counter~0 50)} is VALID [2022-04-28 05:59:10,048 INFO L290 TraceCheckUtils]: 46: Hoare triple {6614#true} assume true; {6614#true} is VALID [2022-04-28 05:59:10,048 INFO L290 TraceCheckUtils]: 45: Hoare triple {6614#true} assume !(0 == ~cond); {6614#true} is VALID [2022-04-28 05:59:10,048 INFO L290 TraceCheckUtils]: 44: Hoare triple {6614#true} ~cond := #in~cond; {6614#true} is VALID [2022-04-28 05:59:10,048 INFO L272 TraceCheckUtils]: 43: Hoare triple {6803#(< ~counter~0 50)} call __VERIFIER_assert((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-28 05:59:10,048 INFO L290 TraceCheckUtils]: 42: Hoare triple {6803#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {6803#(< ~counter~0 50)} is VALID [2022-04-28 05:59:10,049 INFO L290 TraceCheckUtils]: 41: Hoare triple {6828#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {6803#(< ~counter~0 50)} is VALID [2022-04-28 05:59:10,049 INFO L290 TraceCheckUtils]: 40: Hoare triple {6828#(< ~counter~0 49)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {6828#(< ~counter~0 49)} is VALID [2022-04-28 05:59:10,050 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {6614#true} {6828#(< ~counter~0 49)} #98#return; {6828#(< ~counter~0 49)} is VALID [2022-04-28 05:59:10,050 INFO L290 TraceCheckUtils]: 38: Hoare triple {6614#true} assume true; {6614#true} is VALID [2022-04-28 05:59:10,050 INFO L290 TraceCheckUtils]: 37: Hoare triple {6614#true} assume !(0 == ~cond); {6614#true} is VALID [2022-04-28 05:59:10,050 INFO L290 TraceCheckUtils]: 36: Hoare triple {6614#true} ~cond := #in~cond; {6614#true} is VALID [2022-04-28 05:59:10,050 INFO L272 TraceCheckUtils]: 35: Hoare triple {6828#(< ~counter~0 49)} call __VERIFIER_assert((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-28 05:59:10,050 INFO L290 TraceCheckUtils]: 34: Hoare triple {6828#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {6828#(< ~counter~0 49)} is VALID [2022-04-28 05:59:10,051 INFO L290 TraceCheckUtils]: 33: Hoare triple {6853#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {6828#(< ~counter~0 49)} is VALID [2022-04-28 05:59:10,051 INFO L290 TraceCheckUtils]: 32: Hoare triple {6853#(< ~counter~0 48)} assume !(~r~0 > 0); {6853#(< ~counter~0 48)} is VALID [2022-04-28 05:59:10,052 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6614#true} {6853#(< ~counter~0 48)} #96#return; {6853#(< ~counter~0 48)} is VALID [2022-04-28 05:59:10,052 INFO L290 TraceCheckUtils]: 30: Hoare triple {6614#true} assume true; {6614#true} is VALID [2022-04-28 05:59:10,052 INFO L290 TraceCheckUtils]: 29: Hoare triple {6614#true} assume !(0 == ~cond); {6614#true} is VALID [2022-04-28 05:59:10,052 INFO L290 TraceCheckUtils]: 28: Hoare triple {6614#true} ~cond := #in~cond; {6614#true} is VALID [2022-04-28 05:59:10,052 INFO L272 TraceCheckUtils]: 27: Hoare triple {6853#(< ~counter~0 48)} call __VERIFIER_assert((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-28 05:59:10,052 INFO L290 TraceCheckUtils]: 26: Hoare triple {6853#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {6853#(< ~counter~0 48)} is VALID [2022-04-28 05:59:10,053 INFO L290 TraceCheckUtils]: 25: Hoare triple {6878#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6853#(< ~counter~0 48)} is VALID [2022-04-28 05:59:10,053 INFO L290 TraceCheckUtils]: 24: Hoare triple {6878#(< ~counter~0 47)} assume !!(0 != ~r~0); {6878#(< ~counter~0 47)} is VALID [2022-04-28 05:59:10,054 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6614#true} {6878#(< ~counter~0 47)} #94#return; {6878#(< ~counter~0 47)} is VALID [2022-04-28 05:59:10,054 INFO L290 TraceCheckUtils]: 22: Hoare triple {6614#true} assume true; {6614#true} is VALID [2022-04-28 05:59:10,054 INFO L290 TraceCheckUtils]: 21: Hoare triple {6614#true} assume !(0 == ~cond); {6614#true} is VALID [2022-04-28 05:59:10,054 INFO L290 TraceCheckUtils]: 20: Hoare triple {6614#true} ~cond := #in~cond; {6614#true} is VALID [2022-04-28 05:59:10,054 INFO L272 TraceCheckUtils]: 19: Hoare triple {6878#(< ~counter~0 47)} call __VERIFIER_assert((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-28 05:59:10,054 INFO L290 TraceCheckUtils]: 18: Hoare triple {6878#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {6878#(< ~counter~0 47)} is VALID [2022-04-28 05:59:10,055 INFO L290 TraceCheckUtils]: 17: Hoare triple {6903#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6878#(< ~counter~0 47)} is VALID [2022-04-28 05:59:10,055 INFO L290 TraceCheckUtils]: 16: Hoare triple {6903#(< ~counter~0 46)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {6903#(< ~counter~0 46)} is VALID [2022-04-28 05:59:10,055 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6614#true} {6903#(< ~counter~0 46)} #92#return; {6903#(< ~counter~0 46)} is VALID [2022-04-28 05:59:10,055 INFO L290 TraceCheckUtils]: 14: Hoare triple {6614#true} assume true; {6614#true} is VALID [2022-04-28 05:59:10,056 INFO L290 TraceCheckUtils]: 13: Hoare triple {6614#true} assume !(0 == ~cond); {6614#true} is VALID [2022-04-28 05:59:10,056 INFO L290 TraceCheckUtils]: 12: Hoare triple {6614#true} ~cond := #in~cond; {6614#true} is VALID [2022-04-28 05:59:10,056 INFO L272 TraceCheckUtils]: 11: Hoare triple {6903#(< ~counter~0 46)} 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-28 05:59:10,056 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6614#true} {6903#(< ~counter~0 46)} #90#return; {6903#(< ~counter~0 46)} is VALID [2022-04-28 05:59:10,056 INFO L290 TraceCheckUtils]: 9: Hoare triple {6614#true} assume true; {6614#true} is VALID [2022-04-28 05:59:10,056 INFO L290 TraceCheckUtils]: 8: Hoare triple {6614#true} assume !(0 == ~cond); {6614#true} is VALID [2022-04-28 05:59:10,056 INFO L290 TraceCheckUtils]: 7: Hoare triple {6614#true} ~cond := #in~cond; {6614#true} is VALID [2022-04-28 05:59:10,056 INFO L272 TraceCheckUtils]: 6: Hoare triple {6903#(< ~counter~0 46)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {6614#true} is VALID [2022-04-28 05:59:10,057 INFO L290 TraceCheckUtils]: 5: Hoare triple {6903#(< ~counter~0 46)} 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 46)} is VALID [2022-04-28 05:59:10,057 INFO L272 TraceCheckUtils]: 4: Hoare triple {6903#(< ~counter~0 46)} call #t~ret9 := main(); {6903#(< ~counter~0 46)} is VALID [2022-04-28 05:59:10,057 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6903#(< ~counter~0 46)} {6614#true} #102#return; {6903#(< ~counter~0 46)} is VALID [2022-04-28 05:59:10,058 INFO L290 TraceCheckUtils]: 2: Hoare triple {6903#(< ~counter~0 46)} assume true; {6903#(< ~counter~0 46)} is VALID [2022-04-28 05:59:10,058 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 46)} is VALID [2022-04-28 05:59:10,058 INFO L272 TraceCheckUtils]: 0: Hoare triple {6614#true} call ULTIMATE.init(); {6614#true} is VALID [2022-04-28 05:59:10,058 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-28 05:59:10,059 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:59:10,059 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1823435580] [2022-04-28 05:59:10,059 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:59:10,059 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2051985282] [2022-04-28 05:59:10,059 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2051985282] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:59:10,059 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:59:10,059 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 05:59:10,059 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:59:10,059 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1264999075] [2022-04-28 05:59:10,059 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1264999075] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:59:10,059 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:59:10,059 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:59:10,059 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [877535076] [2022-04-28 05:59:10,060 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:59:10,060 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-28 05:59:10,060 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:59:10,060 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-28 05:59:10,099 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:10,099 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:59:10,099 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:10,100 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:59:10,100 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:59:10,100 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-28 05:59:10,377 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:10,377 INFO L93 Difference]: Finished difference Result 134 states and 172 transitions. [2022-04-28 05:59:10,377 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:59:10,377 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-28 05:59:10,378 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:59:10,378 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-28 05:59:10,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-04-28 05:59:10,379 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-28 05:59:10,380 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-04-28 05:59:10,380 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 95 transitions. [2022-04-28 05:59:10,443 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:10,445 INFO L225 Difference]: With dead ends: 134 [2022-04-28 05:59:10,445 INFO L226 Difference]: Without dead ends: 129 [2022-04-28 05:59:10,445 INFO L412 NwaCegarLoop]: 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-28 05:59:10,446 INFO L413 NwaCegarLoop]: 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-28 05:59:10,446 INFO L414 NwaCegarLoop]: 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-28 05:59:10,446 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2022-04-28 05:59:10,520 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 125. [2022-04-28 05:59:10,520 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:59:10,520 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-28 05:59:10,521 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-28 05:59:10,521 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-28 05:59:10,527 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:10,527 INFO L93 Difference]: Finished difference Result 129 states and 166 transitions. [2022-04-28 05:59:10,527 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 166 transitions. [2022-04-28 05:59:10,528 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:10,528 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:10,528 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-28 05:59:10,528 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-28 05:59:10,530 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:10,530 INFO L93 Difference]: Finished difference Result 129 states and 166 transitions. [2022-04-28 05:59:10,530 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 166 transitions. [2022-04-28 05:59:10,530 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:10,531 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:10,531 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:59:10,531 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:59:10,531 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-28 05:59:10,533 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 125 states to 125 states and 161 transitions. [2022-04-28 05:59:10,533 INFO L78 Accepts]: Start accepts. Automaton has 125 states and 161 transitions. Word has length 55 [2022-04-28 05:59:10,533 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:59:10,533 INFO L495 AbstractCegarLoop]: Abstraction has 125 states and 161 transitions. [2022-04-28 05:59:10,534 INFO L496 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-28 05:59:10,534 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 125 states and 161 transitions. [2022-04-28 05:59:16,681 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-28 05:59:16,682 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 161 transitions. [2022-04-28 05:59:16,682 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-28 05:59:16,682 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:59:16,682 INFO L195 NwaCegarLoop]: 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-28 05:59:16,701 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-28 05:59:16,882 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-28 05:59:16,883 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:59:16,883 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:59:16,883 INFO L85 PathProgramCache]: Analyzing trace with hash -2095290798, now seen corresponding path program 3 times [2022-04-28 05:59:16,883 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:16,883 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1845602552] [2022-04-28 05:59:16,883 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:59:16,884 INFO L85 PathProgramCache]: Analyzing trace with hash -2095290798, now seen corresponding path program 4 times [2022-04-28 05:59:16,884 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:59:16,884 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [686081464] [2022-04-28 05:59:16,884 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:59:16,884 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:59:16,903 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:59:16,903 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [30197895] [2022-04-28 05:59:16,903 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:59:16,903 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:59:16,903 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:59:16,904 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:59:16,906 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-28 05:59:16,953 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:59:16,954 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:59:16,954 INFO L263 TraceCheckSpWp]: Trace formula consists of 166 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 05:59:16,966 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:59:16,975 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:59:17,260 INFO L272 TraceCheckUtils]: 0: Hoare triple {7735#true} call ULTIMATE.init(); {7735#true} is VALID [2022-04-28 05:59:17,261 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-28 05:59:17,261 INFO L290 TraceCheckUtils]: 2: Hoare triple {7743#(<= ~counter~0 0)} assume true; {7743#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:17,261 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7743#(<= ~counter~0 0)} {7735#true} #102#return; {7743#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:17,262 INFO L272 TraceCheckUtils]: 4: Hoare triple {7743#(<= ~counter~0 0)} call #t~ret9 := main(); {7743#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:17,262 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-28 05:59:17,262 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-28 05:59:17,263 INFO L290 TraceCheckUtils]: 7: Hoare triple {7743#(<= ~counter~0 0)} ~cond := #in~cond; {7743#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:17,263 INFO L290 TraceCheckUtils]: 8: Hoare triple {7743#(<= ~counter~0 0)} assume !(0 == ~cond); {7743#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:17,263 INFO L290 TraceCheckUtils]: 9: Hoare triple {7743#(<= ~counter~0 0)} assume true; {7743#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:17,264 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7743#(<= ~counter~0 0)} {7743#(<= ~counter~0 0)} #90#return; {7743#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:17,264 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-28 05:59:17,264 INFO L290 TraceCheckUtils]: 12: Hoare triple {7743#(<= ~counter~0 0)} ~cond := #in~cond; {7743#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:17,265 INFO L290 TraceCheckUtils]: 13: Hoare triple {7743#(<= ~counter~0 0)} assume !(0 == ~cond); {7743#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:17,265 INFO L290 TraceCheckUtils]: 14: Hoare triple {7743#(<= ~counter~0 0)} assume true; {7743#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:17,265 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7743#(<= ~counter~0 0)} {7743#(<= ~counter~0 0)} #92#return; {7743#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:17,266 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-28 05:59:17,266 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-28 05:59:17,266 INFO L290 TraceCheckUtils]: 18: Hoare triple {7792#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {7792#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:17,267 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-28 05:59:17,267 INFO L290 TraceCheckUtils]: 20: Hoare triple {7792#(<= ~counter~0 1)} ~cond := #in~cond; {7792#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:17,268 INFO L290 TraceCheckUtils]: 21: Hoare triple {7792#(<= ~counter~0 1)} assume !(0 == ~cond); {7792#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:17,268 INFO L290 TraceCheckUtils]: 22: Hoare triple {7792#(<= ~counter~0 1)} assume true; {7792#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:17,268 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7792#(<= ~counter~0 1)} {7792#(<= ~counter~0 1)} #94#return; {7792#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:17,269 INFO L290 TraceCheckUtils]: 24: Hoare triple {7792#(<= ~counter~0 1)} assume !!(0 != ~r~0); {7792#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:17,269 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-28 05:59:17,270 INFO L290 TraceCheckUtils]: 26: Hoare triple {7817#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {7817#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:17,270 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-28 05:59:17,270 INFO L290 TraceCheckUtils]: 28: Hoare triple {7817#(<= ~counter~0 2)} ~cond := #in~cond; {7817#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:17,271 INFO L290 TraceCheckUtils]: 29: Hoare triple {7817#(<= ~counter~0 2)} assume !(0 == ~cond); {7817#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:17,271 INFO L290 TraceCheckUtils]: 30: Hoare triple {7817#(<= ~counter~0 2)} assume true; {7817#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:17,271 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7817#(<= ~counter~0 2)} {7817#(<= ~counter~0 2)} #96#return; {7817#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:17,272 INFO L290 TraceCheckUtils]: 32: Hoare triple {7817#(<= ~counter~0 2)} assume !(~r~0 > 0); {7817#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:17,272 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-28 05:59:17,272 INFO L290 TraceCheckUtils]: 34: Hoare triple {7842#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {7842#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:17,273 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-28 05:59:17,273 INFO L290 TraceCheckUtils]: 36: Hoare triple {7842#(<= ~counter~0 3)} ~cond := #in~cond; {7842#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:17,274 INFO L290 TraceCheckUtils]: 37: Hoare triple {7842#(<= ~counter~0 3)} assume !(0 == ~cond); {7842#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:17,274 INFO L290 TraceCheckUtils]: 38: Hoare triple {7842#(<= ~counter~0 3)} assume true; {7842#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:17,274 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {7842#(<= ~counter~0 3)} {7842#(<= ~counter~0 3)} #98#return; {7842#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:17,275 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-28 05:59:17,275 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-28 05:59:17,275 INFO L290 TraceCheckUtils]: 42: Hoare triple {7867#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {7867#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:17,276 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-28 05:59:17,276 INFO L290 TraceCheckUtils]: 44: Hoare triple {7867#(<= ~counter~0 4)} ~cond := #in~cond; {7867#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:17,276 INFO L290 TraceCheckUtils]: 45: Hoare triple {7867#(<= ~counter~0 4)} assume !(0 == ~cond); {7867#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:17,277 INFO L290 TraceCheckUtils]: 46: Hoare triple {7867#(<= ~counter~0 4)} assume true; {7867#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:17,277 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7867#(<= ~counter~0 4)} {7867#(<= ~counter~0 4)} #98#return; {7867#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:17,278 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-28 05:59:17,278 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-28 05:59:17,278 INFO L290 TraceCheckUtils]: 50: Hoare triple {7892#(<= |main_#t~post8| 4)} assume !(#t~post8 < 50);havoc #t~post8; {7736#false} is VALID [2022-04-28 05:59:17,278 INFO L290 TraceCheckUtils]: 51: Hoare triple {7736#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7736#false} is VALID [2022-04-28 05:59:17,278 INFO L290 TraceCheckUtils]: 52: Hoare triple {7736#false} assume !(#t~post6 < 50);havoc #t~post6; {7736#false} is VALID [2022-04-28 05:59:17,279 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-28 05:59:17,279 INFO L290 TraceCheckUtils]: 54: Hoare triple {7736#false} ~cond := #in~cond; {7736#false} is VALID [2022-04-28 05:59:17,279 INFO L290 TraceCheckUtils]: 55: Hoare triple {7736#false} assume 0 == ~cond; {7736#false} is VALID [2022-04-28 05:59:17,279 INFO L290 TraceCheckUtils]: 56: Hoare triple {7736#false} assume !false; {7736#false} is VALID [2022-04-28 05:59:17,279 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-28 05:59:17,279 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:59:17,541 INFO L290 TraceCheckUtils]: 56: Hoare triple {7736#false} assume !false; {7736#false} is VALID [2022-04-28 05:59:17,541 INFO L290 TraceCheckUtils]: 55: Hoare triple {7736#false} assume 0 == ~cond; {7736#false} is VALID [2022-04-28 05:59:17,541 INFO L290 TraceCheckUtils]: 54: Hoare triple {7736#false} ~cond := #in~cond; {7736#false} is VALID [2022-04-28 05:59:17,541 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-28 05:59:17,541 INFO L290 TraceCheckUtils]: 52: Hoare triple {7736#false} assume !(#t~post6 < 50);havoc #t~post6; {7736#false} is VALID [2022-04-28 05:59:17,541 INFO L290 TraceCheckUtils]: 51: Hoare triple {7736#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7736#false} is VALID [2022-04-28 05:59:17,541 INFO L290 TraceCheckUtils]: 50: Hoare triple {7932#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {7736#false} is VALID [2022-04-28 05:59:17,542 INFO L290 TraceCheckUtils]: 49: Hoare triple {7936#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7932#(< |main_#t~post8| 50)} is VALID [2022-04-28 05:59:17,542 INFO L290 TraceCheckUtils]: 48: Hoare triple {7936#(< ~counter~0 50)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {7936#(< ~counter~0 50)} is VALID [2022-04-28 05:59:17,543 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7735#true} {7936#(< ~counter~0 50)} #98#return; {7936#(< ~counter~0 50)} is VALID [2022-04-28 05:59:17,543 INFO L290 TraceCheckUtils]: 46: Hoare triple {7735#true} assume true; {7735#true} is VALID [2022-04-28 05:59:17,543 INFO L290 TraceCheckUtils]: 45: Hoare triple {7735#true} assume !(0 == ~cond); {7735#true} is VALID [2022-04-28 05:59:17,543 INFO L290 TraceCheckUtils]: 44: Hoare triple {7735#true} ~cond := #in~cond; {7735#true} is VALID [2022-04-28 05:59:17,543 INFO L272 TraceCheckUtils]: 43: Hoare triple {7936#(< ~counter~0 50)} call __VERIFIER_assert((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-28 05:59:17,543 INFO L290 TraceCheckUtils]: 42: Hoare triple {7936#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {7936#(< ~counter~0 50)} is VALID [2022-04-28 05:59:17,544 INFO L290 TraceCheckUtils]: 41: Hoare triple {7961#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7936#(< ~counter~0 50)} is VALID [2022-04-28 05:59:17,544 INFO L290 TraceCheckUtils]: 40: Hoare triple {7961#(< ~counter~0 49)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {7961#(< ~counter~0 49)} is VALID [2022-04-28 05:59:17,545 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {7735#true} {7961#(< ~counter~0 49)} #98#return; {7961#(< ~counter~0 49)} is VALID [2022-04-28 05:59:17,545 INFO L290 TraceCheckUtils]: 38: Hoare triple {7735#true} assume true; {7735#true} is VALID [2022-04-28 05:59:17,545 INFO L290 TraceCheckUtils]: 37: Hoare triple {7735#true} assume !(0 == ~cond); {7735#true} is VALID [2022-04-28 05:59:17,545 INFO L290 TraceCheckUtils]: 36: Hoare triple {7735#true} ~cond := #in~cond; {7735#true} is VALID [2022-04-28 05:59:17,545 INFO L272 TraceCheckUtils]: 35: Hoare triple {7961#(< ~counter~0 49)} call __VERIFIER_assert((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-28 05:59:17,545 INFO L290 TraceCheckUtils]: 34: Hoare triple {7961#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {7961#(< ~counter~0 49)} is VALID [2022-04-28 05:59:17,546 INFO L290 TraceCheckUtils]: 33: Hoare triple {7986#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7961#(< ~counter~0 49)} is VALID [2022-04-28 05:59:17,546 INFO L290 TraceCheckUtils]: 32: Hoare triple {7986#(< ~counter~0 48)} assume !(~r~0 > 0); {7986#(< ~counter~0 48)} is VALID [2022-04-28 05:59:17,547 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7735#true} {7986#(< ~counter~0 48)} #96#return; {7986#(< ~counter~0 48)} is VALID [2022-04-28 05:59:17,547 INFO L290 TraceCheckUtils]: 30: Hoare triple {7735#true} assume true; {7735#true} is VALID [2022-04-28 05:59:17,547 INFO L290 TraceCheckUtils]: 29: Hoare triple {7735#true} assume !(0 == ~cond); {7735#true} is VALID [2022-04-28 05:59:17,547 INFO L290 TraceCheckUtils]: 28: Hoare triple {7735#true} ~cond := #in~cond; {7735#true} is VALID [2022-04-28 05:59:17,547 INFO L272 TraceCheckUtils]: 27: Hoare triple {7986#(< ~counter~0 48)} call __VERIFIER_assert((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-28 05:59:17,547 INFO L290 TraceCheckUtils]: 26: Hoare triple {7986#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {7986#(< ~counter~0 48)} is VALID [2022-04-28 05:59:17,548 INFO L290 TraceCheckUtils]: 25: Hoare triple {8011#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7986#(< ~counter~0 48)} is VALID [2022-04-28 05:59:17,548 INFO L290 TraceCheckUtils]: 24: Hoare triple {8011#(< ~counter~0 47)} assume !!(0 != ~r~0); {8011#(< ~counter~0 47)} is VALID [2022-04-28 05:59:17,549 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7735#true} {8011#(< ~counter~0 47)} #94#return; {8011#(< ~counter~0 47)} is VALID [2022-04-28 05:59:17,549 INFO L290 TraceCheckUtils]: 22: Hoare triple {7735#true} assume true; {7735#true} is VALID [2022-04-28 05:59:17,549 INFO L290 TraceCheckUtils]: 21: Hoare triple {7735#true} assume !(0 == ~cond); {7735#true} is VALID [2022-04-28 05:59:17,549 INFO L290 TraceCheckUtils]: 20: Hoare triple {7735#true} ~cond := #in~cond; {7735#true} is VALID [2022-04-28 05:59:17,549 INFO L272 TraceCheckUtils]: 19: Hoare triple {8011#(< ~counter~0 47)} call __VERIFIER_assert((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-28 05:59:17,549 INFO L290 TraceCheckUtils]: 18: Hoare triple {8011#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {8011#(< ~counter~0 47)} is VALID [2022-04-28 05:59:17,550 INFO L290 TraceCheckUtils]: 17: Hoare triple {8036#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8011#(< ~counter~0 47)} is VALID [2022-04-28 05:59:17,550 INFO L290 TraceCheckUtils]: 16: Hoare triple {8036#(< ~counter~0 46)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {8036#(< ~counter~0 46)} is VALID [2022-04-28 05:59:17,550 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7735#true} {8036#(< ~counter~0 46)} #92#return; {8036#(< ~counter~0 46)} is VALID [2022-04-28 05:59:17,550 INFO L290 TraceCheckUtils]: 14: Hoare triple {7735#true} assume true; {7735#true} is VALID [2022-04-28 05:59:17,550 INFO L290 TraceCheckUtils]: 13: Hoare triple {7735#true} assume !(0 == ~cond); {7735#true} is VALID [2022-04-28 05:59:17,551 INFO L290 TraceCheckUtils]: 12: Hoare triple {7735#true} ~cond := #in~cond; {7735#true} is VALID [2022-04-28 05:59:17,551 INFO L272 TraceCheckUtils]: 11: Hoare triple {8036#(< ~counter~0 46)} 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-28 05:59:17,551 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7735#true} {8036#(< ~counter~0 46)} #90#return; {8036#(< ~counter~0 46)} is VALID [2022-04-28 05:59:17,551 INFO L290 TraceCheckUtils]: 9: Hoare triple {7735#true} assume true; {7735#true} is VALID [2022-04-28 05:59:17,551 INFO L290 TraceCheckUtils]: 8: Hoare triple {7735#true} assume !(0 == ~cond); {7735#true} is VALID [2022-04-28 05:59:17,551 INFO L290 TraceCheckUtils]: 7: Hoare triple {7735#true} ~cond := #in~cond; {7735#true} is VALID [2022-04-28 05:59:17,551 INFO L272 TraceCheckUtils]: 6: Hoare triple {8036#(< ~counter~0 46)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {7735#true} is VALID [2022-04-28 05:59:17,552 INFO L290 TraceCheckUtils]: 5: Hoare triple {8036#(< ~counter~0 46)} 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 46)} is VALID [2022-04-28 05:59:17,552 INFO L272 TraceCheckUtils]: 4: Hoare triple {8036#(< ~counter~0 46)} call #t~ret9 := main(); {8036#(< ~counter~0 46)} is VALID [2022-04-28 05:59:17,552 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8036#(< ~counter~0 46)} {7735#true} #102#return; {8036#(< ~counter~0 46)} is VALID [2022-04-28 05:59:17,553 INFO L290 TraceCheckUtils]: 2: Hoare triple {8036#(< ~counter~0 46)} assume true; {8036#(< ~counter~0 46)} is VALID [2022-04-28 05:59:17,553 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 46)} is VALID [2022-04-28 05:59:17,553 INFO L272 TraceCheckUtils]: 0: Hoare triple {7735#true} call ULTIMATE.init(); {7735#true} is VALID [2022-04-28 05:59:17,553 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-28 05:59:17,553 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:59:17,554 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [686081464] [2022-04-28 05:59:17,554 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:59:17,554 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [30197895] [2022-04-28 05:59:17,554 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [30197895] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:59:17,554 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:59:17,554 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 05:59:17,554 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:59:17,554 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1845602552] [2022-04-28 05:59:17,554 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1845602552] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:59:17,554 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:59:17,554 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:59:17,554 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1390992150] [2022-04-28 05:59:17,554 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:59:17,555 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-28 05:59:17,555 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:59:17,555 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-28 05:59:17,594 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:17,595 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:59:17,595 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:17,595 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:59:17,595 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:59:17,595 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-28 05:59:17,885 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:17,885 INFO L93 Difference]: Finished difference Result 196 states and 263 transitions. [2022-04-28 05:59:17,885 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 05:59:17,885 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-28 05:59:17,885 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:59:17,885 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-28 05:59:17,892 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 117 transitions. [2022-04-28 05:59:17,893 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-28 05:59:17,894 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 117 transitions. [2022-04-28 05:59:17,894 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 117 transitions. [2022-04-28 05:59:17,942 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-28 05:59:17,944 INFO L225 Difference]: With dead ends: 196 [2022-04-28 05:59:17,944 INFO L226 Difference]: Without dead ends: 131 [2022-04-28 05:59:17,945 INFO L412 NwaCegarLoop]: 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-28 05:59:17,945 INFO L413 NwaCegarLoop]: 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-28 05:59:17,945 INFO L414 NwaCegarLoop]: 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-28 05:59:17,946 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2022-04-28 05:59:18,010 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 130. [2022-04-28 05:59:18,010 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:59:18,023 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-28 05:59:18,023 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-28 05:59:18,024 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-28 05:59:18,033 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:18,033 INFO L93 Difference]: Finished difference Result 131 states and 168 transitions. [2022-04-28 05:59:18,033 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 168 transitions. [2022-04-28 05:59:18,034 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:18,034 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:18,034 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-28 05:59:18,034 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-28 05:59:18,036 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:18,036 INFO L93 Difference]: Finished difference Result 131 states and 168 transitions. [2022-04-28 05:59:18,036 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 168 transitions. [2022-04-28 05:59:18,036 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:18,036 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:18,037 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:59:18,037 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:59:18,037 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-28 05:59:18,039 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 167 transitions. [2022-04-28 05:59:18,039 INFO L78 Accepts]: Start accepts. Automaton has 130 states and 167 transitions. Word has length 57 [2022-04-28 05:59:18,039 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:59:18,039 INFO L495 AbstractCegarLoop]: Abstraction has 130 states and 167 transitions. [2022-04-28 05:59:18,039 INFO L496 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-28 05:59:18,039 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 130 states and 167 transitions. [2022-04-28 05:59:25,049 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-28 05:59:25,050 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 167 transitions. [2022-04-28 05:59:25,050 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-04-28 05:59:25,050 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:59:25,051 INFO L195 NwaCegarLoop]: 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-28 05:59:25,067 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-28 05:59:25,261 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-28 05:59:25,262 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:59:25,262 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:59:25,262 INFO L85 PathProgramCache]: Analyzing trace with hash -659642693, now seen corresponding path program 5 times [2022-04-28 05:59:25,263 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:25,263 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [180211942] [2022-04-28 05:59:25,263 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:59:25,263 INFO L85 PathProgramCache]: Analyzing trace with hash -659642693, now seen corresponding path program 6 times [2022-04-28 05:59:25,263 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:59:25,263 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1831565686] [2022-04-28 05:59:25,263 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:59:25,263 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:59:25,281 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:59:25,281 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2122049491] [2022-04-28 05:59:25,281 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:59:25,281 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:59:25,281 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:59:25,285 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:59:25,285 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-28 05:59:25,371 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 05:59:25,371 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:59:25,372 INFO L263 TraceCheckSpWp]: Trace formula consists of 175 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 05:59:25,384 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:59:25,384 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:59:25,642 INFO L272 TraceCheckUtils]: 0: Hoare triple {9008#true} call ULTIMATE.init(); {9008#true} is VALID [2022-04-28 05:59:25,643 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-28 05:59:25,643 INFO L290 TraceCheckUtils]: 2: Hoare triple {9016#(<= ~counter~0 0)} assume true; {9016#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:25,644 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9016#(<= ~counter~0 0)} {9008#true} #102#return; {9016#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:25,644 INFO L272 TraceCheckUtils]: 4: Hoare triple {9016#(<= ~counter~0 0)} call #t~ret9 := main(); {9016#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:25,644 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-28 05:59:25,645 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-28 05:59:25,645 INFO L290 TraceCheckUtils]: 7: Hoare triple {9016#(<= ~counter~0 0)} ~cond := #in~cond; {9016#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:25,645 INFO L290 TraceCheckUtils]: 8: Hoare triple {9016#(<= ~counter~0 0)} assume !(0 == ~cond); {9016#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:25,646 INFO L290 TraceCheckUtils]: 9: Hoare triple {9016#(<= ~counter~0 0)} assume true; {9016#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:25,646 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9016#(<= ~counter~0 0)} {9016#(<= ~counter~0 0)} #90#return; {9016#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:25,647 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-28 05:59:25,647 INFO L290 TraceCheckUtils]: 12: Hoare triple {9016#(<= ~counter~0 0)} ~cond := #in~cond; {9016#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:25,647 INFO L290 TraceCheckUtils]: 13: Hoare triple {9016#(<= ~counter~0 0)} assume !(0 == ~cond); {9016#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:25,647 INFO L290 TraceCheckUtils]: 14: Hoare triple {9016#(<= ~counter~0 0)} assume true; {9016#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:25,648 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {9016#(<= ~counter~0 0)} {9016#(<= ~counter~0 0)} #92#return; {9016#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:25,648 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-28 05:59:25,649 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-28 05:59:25,649 INFO L290 TraceCheckUtils]: 18: Hoare triple {9065#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {9065#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:25,650 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-28 05:59:25,650 INFO L290 TraceCheckUtils]: 20: Hoare triple {9065#(<= ~counter~0 1)} ~cond := #in~cond; {9065#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:25,650 INFO L290 TraceCheckUtils]: 21: Hoare triple {9065#(<= ~counter~0 1)} assume !(0 == ~cond); {9065#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:25,650 INFO L290 TraceCheckUtils]: 22: Hoare triple {9065#(<= ~counter~0 1)} assume true; {9065#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:25,651 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {9065#(<= ~counter~0 1)} {9065#(<= ~counter~0 1)} #94#return; {9065#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:25,651 INFO L290 TraceCheckUtils]: 24: Hoare triple {9065#(<= ~counter~0 1)} assume !!(0 != ~r~0); {9065#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:25,652 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-28 05:59:25,652 INFO L290 TraceCheckUtils]: 26: Hoare triple {9090#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {9090#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:25,653 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-28 05:59:25,653 INFO L290 TraceCheckUtils]: 28: Hoare triple {9090#(<= ~counter~0 2)} ~cond := #in~cond; {9090#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:25,653 INFO L290 TraceCheckUtils]: 29: Hoare triple {9090#(<= ~counter~0 2)} assume !(0 == ~cond); {9090#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:25,653 INFO L290 TraceCheckUtils]: 30: Hoare triple {9090#(<= ~counter~0 2)} assume true; {9090#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:25,654 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {9090#(<= ~counter~0 2)} {9090#(<= ~counter~0 2)} #96#return; {9090#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:25,654 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-28 05:59:25,655 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-28 05:59:25,655 INFO L290 TraceCheckUtils]: 34: Hoare triple {9115#(<= ~counter~0 3)} assume !!(#t~post7 < 50);havoc #t~post7; {9115#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:25,655 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-28 05:59:25,656 INFO L290 TraceCheckUtils]: 36: Hoare triple {9115#(<= ~counter~0 3)} ~cond := #in~cond; {9115#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:25,656 INFO L290 TraceCheckUtils]: 37: Hoare triple {9115#(<= ~counter~0 3)} assume !(0 == ~cond); {9115#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:25,656 INFO L290 TraceCheckUtils]: 38: Hoare triple {9115#(<= ~counter~0 3)} assume true; {9115#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:25,657 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {9115#(<= ~counter~0 3)} {9115#(<= ~counter~0 3)} #96#return; {9115#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:25,657 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-28 05:59:25,657 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-28 05:59:25,658 INFO L290 TraceCheckUtils]: 42: Hoare triple {9140#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {9140#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:25,658 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-28 05:59:25,658 INFO L290 TraceCheckUtils]: 44: Hoare triple {9140#(<= ~counter~0 4)} ~cond := #in~cond; {9140#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:25,658 INFO L290 TraceCheckUtils]: 45: Hoare triple {9140#(<= ~counter~0 4)} assume !(0 == ~cond); {9140#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:25,659 INFO L290 TraceCheckUtils]: 46: Hoare triple {9140#(<= ~counter~0 4)} assume true; {9140#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:25,659 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {9140#(<= ~counter~0 4)} {9140#(<= ~counter~0 4)} #96#return; {9140#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:25,659 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-28 05:59:25,675 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-28 05:59:25,676 INFO L290 TraceCheckUtils]: 50: Hoare triple {9165#(<= |main_#t~post7| 4)} assume !(#t~post7 < 50);havoc #t~post7; {9009#false} is VALID [2022-04-28 05:59:25,676 INFO L290 TraceCheckUtils]: 51: Hoare triple {9009#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {9009#false} is VALID [2022-04-28 05:59:25,676 INFO L290 TraceCheckUtils]: 52: Hoare triple {9009#false} assume !(#t~post8 < 50);havoc #t~post8; {9009#false} is VALID [2022-04-28 05:59:25,676 INFO L290 TraceCheckUtils]: 53: Hoare triple {9009#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9009#false} is VALID [2022-04-28 05:59:25,676 INFO L290 TraceCheckUtils]: 54: Hoare triple {9009#false} assume !(#t~post6 < 50);havoc #t~post6; {9009#false} is VALID [2022-04-28 05:59:25,676 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-28 05:59:25,676 INFO L290 TraceCheckUtils]: 56: Hoare triple {9009#false} ~cond := #in~cond; {9009#false} is VALID [2022-04-28 05:59:25,676 INFO L290 TraceCheckUtils]: 57: Hoare triple {9009#false} assume 0 == ~cond; {9009#false} is VALID [2022-04-28 05:59:25,676 INFO L290 TraceCheckUtils]: 58: Hoare triple {9009#false} assume !false; {9009#false} is VALID [2022-04-28 05:59:25,677 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-28 05:59:25,677 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:59:25,881 INFO L290 TraceCheckUtils]: 58: Hoare triple {9009#false} assume !false; {9009#false} is VALID [2022-04-28 05:59:25,881 INFO L290 TraceCheckUtils]: 57: Hoare triple {9009#false} assume 0 == ~cond; {9009#false} is VALID [2022-04-28 05:59:25,881 INFO L290 TraceCheckUtils]: 56: Hoare triple {9009#false} ~cond := #in~cond; {9009#false} is VALID [2022-04-28 05:59:25,882 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-28 05:59:25,882 INFO L290 TraceCheckUtils]: 54: Hoare triple {9009#false} assume !(#t~post6 < 50);havoc #t~post6; {9009#false} is VALID [2022-04-28 05:59:25,882 INFO L290 TraceCheckUtils]: 53: Hoare triple {9009#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9009#false} is VALID [2022-04-28 05:59:25,882 INFO L290 TraceCheckUtils]: 52: Hoare triple {9009#false} assume !(#t~post8 < 50);havoc #t~post8; {9009#false} is VALID [2022-04-28 05:59:25,882 INFO L290 TraceCheckUtils]: 51: Hoare triple {9009#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {9009#false} is VALID [2022-04-28 05:59:25,882 INFO L290 TraceCheckUtils]: 50: Hoare triple {9217#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {9009#false} is VALID [2022-04-28 05:59:25,882 INFO L290 TraceCheckUtils]: 49: Hoare triple {9221#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9217#(< |main_#t~post7| 50)} is VALID [2022-04-28 05:59:25,882 INFO L290 TraceCheckUtils]: 48: Hoare triple {9221#(< ~counter~0 50)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9221#(< ~counter~0 50)} is VALID [2022-04-28 05:59:25,883 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {9008#true} {9221#(< ~counter~0 50)} #96#return; {9221#(< ~counter~0 50)} is VALID [2022-04-28 05:59:25,883 INFO L290 TraceCheckUtils]: 46: Hoare triple {9008#true} assume true; {9008#true} is VALID [2022-04-28 05:59:25,883 INFO L290 TraceCheckUtils]: 45: Hoare triple {9008#true} assume !(0 == ~cond); {9008#true} is VALID [2022-04-28 05:59:25,883 INFO L290 TraceCheckUtils]: 44: Hoare triple {9008#true} ~cond := #in~cond; {9008#true} is VALID [2022-04-28 05:59:25,883 INFO L272 TraceCheckUtils]: 43: Hoare triple {9221#(< ~counter~0 50)} call __VERIFIER_assert((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-28 05:59:25,883 INFO L290 TraceCheckUtils]: 42: Hoare triple {9221#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {9221#(< ~counter~0 50)} is VALID [2022-04-28 05:59:25,884 INFO L290 TraceCheckUtils]: 41: Hoare triple {9246#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9221#(< ~counter~0 50)} is VALID [2022-04-28 05:59:25,884 INFO L290 TraceCheckUtils]: 40: Hoare triple {9246#(< ~counter~0 49)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9246#(< ~counter~0 49)} is VALID [2022-04-28 05:59:25,884 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {9008#true} {9246#(< ~counter~0 49)} #96#return; {9246#(< ~counter~0 49)} is VALID [2022-04-28 05:59:25,884 INFO L290 TraceCheckUtils]: 38: Hoare triple {9008#true} assume true; {9008#true} is VALID [2022-04-28 05:59:25,884 INFO L290 TraceCheckUtils]: 37: Hoare triple {9008#true} assume !(0 == ~cond); {9008#true} is VALID [2022-04-28 05:59:25,884 INFO L290 TraceCheckUtils]: 36: Hoare triple {9008#true} ~cond := #in~cond; {9008#true} is VALID [2022-04-28 05:59:25,884 INFO L272 TraceCheckUtils]: 35: Hoare triple {9246#(< ~counter~0 49)} call __VERIFIER_assert((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-28 05:59:25,885 INFO L290 TraceCheckUtils]: 34: Hoare triple {9246#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {9246#(< ~counter~0 49)} is VALID [2022-04-28 05:59:25,897 INFO L290 TraceCheckUtils]: 33: Hoare triple {9271#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9246#(< ~counter~0 49)} is VALID [2022-04-28 05:59:25,897 INFO L290 TraceCheckUtils]: 32: Hoare triple {9271#(< ~counter~0 48)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {9271#(< ~counter~0 48)} is VALID [2022-04-28 05:59:25,898 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {9008#true} {9271#(< ~counter~0 48)} #96#return; {9271#(< ~counter~0 48)} is VALID [2022-04-28 05:59:25,898 INFO L290 TraceCheckUtils]: 30: Hoare triple {9008#true} assume true; {9008#true} is VALID [2022-04-28 05:59:25,898 INFO L290 TraceCheckUtils]: 29: Hoare triple {9008#true} assume !(0 == ~cond); {9008#true} is VALID [2022-04-28 05:59:25,898 INFO L290 TraceCheckUtils]: 28: Hoare triple {9008#true} ~cond := #in~cond; {9008#true} is VALID [2022-04-28 05:59:25,898 INFO L272 TraceCheckUtils]: 27: Hoare triple {9271#(< ~counter~0 48)} call __VERIFIER_assert((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-28 05:59:25,898 INFO L290 TraceCheckUtils]: 26: Hoare triple {9271#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {9271#(< ~counter~0 48)} is VALID [2022-04-28 05:59:25,899 INFO L290 TraceCheckUtils]: 25: Hoare triple {9296#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9271#(< ~counter~0 48)} is VALID [2022-04-28 05:59:25,899 INFO L290 TraceCheckUtils]: 24: Hoare triple {9296#(< ~counter~0 47)} assume !!(0 != ~r~0); {9296#(< ~counter~0 47)} is VALID [2022-04-28 05:59:25,900 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {9008#true} {9296#(< ~counter~0 47)} #94#return; {9296#(< ~counter~0 47)} is VALID [2022-04-28 05:59:25,900 INFO L290 TraceCheckUtils]: 22: Hoare triple {9008#true} assume true; {9008#true} is VALID [2022-04-28 05:59:25,900 INFO L290 TraceCheckUtils]: 21: Hoare triple {9008#true} assume !(0 == ~cond); {9008#true} is VALID [2022-04-28 05:59:25,900 INFO L290 TraceCheckUtils]: 20: Hoare triple {9008#true} ~cond := #in~cond; {9008#true} is VALID [2022-04-28 05:59:25,900 INFO L272 TraceCheckUtils]: 19: Hoare triple {9296#(< ~counter~0 47)} call __VERIFIER_assert((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-28 05:59:25,900 INFO L290 TraceCheckUtils]: 18: Hoare triple {9296#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {9296#(< ~counter~0 47)} is VALID [2022-04-28 05:59:25,901 INFO L290 TraceCheckUtils]: 17: Hoare triple {9321#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9296#(< ~counter~0 47)} is VALID [2022-04-28 05:59:25,901 INFO L290 TraceCheckUtils]: 16: Hoare triple {9321#(< ~counter~0 46)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {9321#(< ~counter~0 46)} is VALID [2022-04-28 05:59:25,902 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {9008#true} {9321#(< ~counter~0 46)} #92#return; {9321#(< ~counter~0 46)} is VALID [2022-04-28 05:59:25,902 INFO L290 TraceCheckUtils]: 14: Hoare triple {9008#true} assume true; {9008#true} is VALID [2022-04-28 05:59:25,902 INFO L290 TraceCheckUtils]: 13: Hoare triple {9008#true} assume !(0 == ~cond); {9008#true} is VALID [2022-04-28 05:59:25,902 INFO L290 TraceCheckUtils]: 12: Hoare triple {9008#true} ~cond := #in~cond; {9008#true} is VALID [2022-04-28 05:59:25,902 INFO L272 TraceCheckUtils]: 11: Hoare triple {9321#(< ~counter~0 46)} 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-28 05:59:25,902 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9008#true} {9321#(< ~counter~0 46)} #90#return; {9321#(< ~counter~0 46)} is VALID [2022-04-28 05:59:25,903 INFO L290 TraceCheckUtils]: 9: Hoare triple {9008#true} assume true; {9008#true} is VALID [2022-04-28 05:59:25,903 INFO L290 TraceCheckUtils]: 8: Hoare triple {9008#true} assume !(0 == ~cond); {9008#true} is VALID [2022-04-28 05:59:25,903 INFO L290 TraceCheckUtils]: 7: Hoare triple {9008#true} ~cond := #in~cond; {9008#true} is VALID [2022-04-28 05:59:25,903 INFO L272 TraceCheckUtils]: 6: Hoare triple {9321#(< ~counter~0 46)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {9008#true} is VALID [2022-04-28 05:59:25,903 INFO L290 TraceCheckUtils]: 5: Hoare triple {9321#(< ~counter~0 46)} 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 46)} is VALID [2022-04-28 05:59:25,903 INFO L272 TraceCheckUtils]: 4: Hoare triple {9321#(< ~counter~0 46)} call #t~ret9 := main(); {9321#(< ~counter~0 46)} is VALID [2022-04-28 05:59:25,904 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9321#(< ~counter~0 46)} {9008#true} #102#return; {9321#(< ~counter~0 46)} is VALID [2022-04-28 05:59:25,904 INFO L290 TraceCheckUtils]: 2: Hoare triple {9321#(< ~counter~0 46)} assume true; {9321#(< ~counter~0 46)} is VALID [2022-04-28 05:59:25,905 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 46)} is VALID [2022-04-28 05:59:25,905 INFO L272 TraceCheckUtils]: 0: Hoare triple {9008#true} call ULTIMATE.init(); {9008#true} is VALID [2022-04-28 05:59:25,905 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-28 05:59:25,905 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:59:25,905 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1831565686] [2022-04-28 05:59:25,905 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:59:25,905 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2122049491] [2022-04-28 05:59:25,905 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2122049491] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:59:25,905 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:59:25,905 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 05:59:25,906 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:59:25,906 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [180211942] [2022-04-28 05:59:25,906 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [180211942] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:59:25,906 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:59:25,906 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:59:25,906 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [658118815] [2022-04-28 05:59:25,906 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:59:25,906 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-28 05:59:25,906 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:59:25,906 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-28 05:59:25,946 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:25,946 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:59:25,946 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:25,947 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:59:25,947 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:59:25,947 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-28 05:59:26,203 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:26,203 INFO L93 Difference]: Finished difference Result 169 states and 222 transitions. [2022-04-28 05:59:26,203 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 05:59:26,204 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-28 05:59:26,204 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:59:26,204 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-28 05:59:26,205 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 117 transitions. [2022-04-28 05:59:26,205 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-28 05:59:26,206 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 117 transitions. [2022-04-28 05:59:26,206 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 117 transitions. [2022-04-28 05:59:26,282 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-28 05:59:26,283 INFO L225 Difference]: With dead ends: 169 [2022-04-28 05:59:26,283 INFO L226 Difference]: Without dead ends: 132 [2022-04-28 05:59:26,284 INFO L412 NwaCegarLoop]: 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-28 05:59:26,284 INFO L413 NwaCegarLoop]: 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-28 05:59:26,284 INFO L414 NwaCegarLoop]: 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-28 05:59:26,285 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2022-04-28 05:59:26,364 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 132. [2022-04-28 05:59:26,364 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:59:26,364 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-28 05:59:26,364 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-28 05:59:26,364 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-28 05:59:26,366 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:26,366 INFO L93 Difference]: Finished difference Result 132 states and 169 transitions. [2022-04-28 05:59:26,366 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 169 transitions. [2022-04-28 05:59:26,367 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:26,367 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:26,367 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-28 05:59:26,367 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-28 05:59:26,369 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:26,369 INFO L93 Difference]: Finished difference Result 132 states and 169 transitions. [2022-04-28 05:59:26,369 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 169 transitions. [2022-04-28 05:59:26,369 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:26,370 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:26,370 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:59:26,370 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:59:26,370 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-28 05:59:26,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 132 states to 132 states and 169 transitions. [2022-04-28 05:59:26,372 INFO L78 Accepts]: Start accepts. Automaton has 132 states and 169 transitions. Word has length 59 [2022-04-28 05:59:26,372 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:59:26,372 INFO L495 AbstractCegarLoop]: Abstraction has 132 states and 169 transitions. [2022-04-28 05:59:26,372 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 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-28 05:59:26,372 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 132 states and 169 transitions. [2022-04-28 05:59:30,541 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 169 edges. 169 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:30,542 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 169 transitions. [2022-04-28 05:59:30,542 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-28 05:59:30,542 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:59:30,542 INFO L195 NwaCegarLoop]: 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-28 05:59:30,548 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-28 05:59:30,746 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-28 05:59:30,746 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:59:30,747 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:59:30,747 INFO L85 PathProgramCache]: Analyzing trace with hash -1402694082, now seen corresponding path program 3 times [2022-04-28 05:59:30,747 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:30,747 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [382115938] [2022-04-28 05:59:30,747 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:59:30,747 INFO L85 PathProgramCache]: Analyzing trace with hash -1402694082, now seen corresponding path program 4 times [2022-04-28 05:59:30,747 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:59:30,748 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [817313757] [2022-04-28 05:59:30,748 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:59:30,748 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:59:30,771 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:59:30,772 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1606610954] [2022-04-28 05:59:30,772 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:59:30,772 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:59:30,772 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:59:30,773 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:59:30,773 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-28 05:59:30,825 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:59:30,825 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:59:30,826 INFO L263 TraceCheckSpWp]: Trace formula consists of 176 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 05:59:30,841 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:59:30,842 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:59:31,127 INFO L272 TraceCheckUtils]: 0: Hoare triple {10247#true} call ULTIMATE.init(); {10247#true} is VALID [2022-04-28 05:59:31,128 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-28 05:59:31,128 INFO L290 TraceCheckUtils]: 2: Hoare triple {10255#(<= ~counter~0 0)} assume true; {10255#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:31,129 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10255#(<= ~counter~0 0)} {10247#true} #102#return; {10255#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:31,129 INFO L272 TraceCheckUtils]: 4: Hoare triple {10255#(<= ~counter~0 0)} call #t~ret9 := main(); {10255#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:31,129 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-28 05:59:31,130 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-28 05:59:31,130 INFO L290 TraceCheckUtils]: 7: Hoare triple {10255#(<= ~counter~0 0)} ~cond := #in~cond; {10255#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:31,130 INFO L290 TraceCheckUtils]: 8: Hoare triple {10255#(<= ~counter~0 0)} assume !(0 == ~cond); {10255#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:31,131 INFO L290 TraceCheckUtils]: 9: Hoare triple {10255#(<= ~counter~0 0)} assume true; {10255#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:31,131 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10255#(<= ~counter~0 0)} {10255#(<= ~counter~0 0)} #90#return; {10255#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:31,132 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-28 05:59:31,132 INFO L290 TraceCheckUtils]: 12: Hoare triple {10255#(<= ~counter~0 0)} ~cond := #in~cond; {10255#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:31,132 INFO L290 TraceCheckUtils]: 13: Hoare triple {10255#(<= ~counter~0 0)} assume !(0 == ~cond); {10255#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:31,132 INFO L290 TraceCheckUtils]: 14: Hoare triple {10255#(<= ~counter~0 0)} assume true; {10255#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:31,133 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10255#(<= ~counter~0 0)} {10255#(<= ~counter~0 0)} #92#return; {10255#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:31,133 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-28 05:59:31,134 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-28 05:59:31,134 INFO L290 TraceCheckUtils]: 18: Hoare triple {10304#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {10304#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:31,134 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-28 05:59:31,135 INFO L290 TraceCheckUtils]: 20: Hoare triple {10304#(<= ~counter~0 1)} ~cond := #in~cond; {10304#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:31,135 INFO L290 TraceCheckUtils]: 21: Hoare triple {10304#(<= ~counter~0 1)} assume !(0 == ~cond); {10304#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:31,135 INFO L290 TraceCheckUtils]: 22: Hoare triple {10304#(<= ~counter~0 1)} assume true; {10304#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:31,136 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10304#(<= ~counter~0 1)} {10304#(<= ~counter~0 1)} #94#return; {10304#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:31,136 INFO L290 TraceCheckUtils]: 24: Hoare triple {10304#(<= ~counter~0 1)} assume !!(0 != ~r~0); {10304#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:31,136 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-28 05:59:31,137 INFO L290 TraceCheckUtils]: 26: Hoare triple {10329#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {10329#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:31,137 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-28 05:59:31,138 INFO L290 TraceCheckUtils]: 28: Hoare triple {10329#(<= ~counter~0 2)} ~cond := #in~cond; {10329#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:31,138 INFO L290 TraceCheckUtils]: 29: Hoare triple {10329#(<= ~counter~0 2)} assume !(0 == ~cond); {10329#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:31,138 INFO L290 TraceCheckUtils]: 30: Hoare triple {10329#(<= ~counter~0 2)} assume true; {10329#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:31,139 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {10329#(<= ~counter~0 2)} {10329#(<= ~counter~0 2)} #96#return; {10329#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:31,139 INFO L290 TraceCheckUtils]: 32: Hoare triple {10329#(<= ~counter~0 2)} assume !(~r~0 > 0); {10329#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:31,139 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-28 05:59:31,140 INFO L290 TraceCheckUtils]: 34: Hoare triple {10354#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {10354#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:31,140 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-28 05:59:31,140 INFO L290 TraceCheckUtils]: 36: Hoare triple {10354#(<= ~counter~0 3)} ~cond := #in~cond; {10354#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:31,141 INFO L290 TraceCheckUtils]: 37: Hoare triple {10354#(<= ~counter~0 3)} assume !(0 == ~cond); {10354#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:31,141 INFO L290 TraceCheckUtils]: 38: Hoare triple {10354#(<= ~counter~0 3)} assume true; {10354#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:31,141 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {10354#(<= ~counter~0 3)} {10354#(<= ~counter~0 3)} #98#return; {10354#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:31,142 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-28 05:59:31,142 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-28 05:59:31,142 INFO L290 TraceCheckUtils]: 42: Hoare triple {10379#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {10379#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:31,143 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-28 05:59:31,143 INFO L290 TraceCheckUtils]: 44: Hoare triple {10379#(<= ~counter~0 4)} ~cond := #in~cond; {10379#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:31,143 INFO L290 TraceCheckUtils]: 45: Hoare triple {10379#(<= ~counter~0 4)} assume !(0 == ~cond); {10379#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:31,144 INFO L290 TraceCheckUtils]: 46: Hoare triple {10379#(<= ~counter~0 4)} assume true; {10379#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:31,144 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10379#(<= ~counter~0 4)} {10379#(<= ~counter~0 4)} #98#return; {10379#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:31,145 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-28 05:59:31,145 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-28 05:59:31,145 INFO L290 TraceCheckUtils]: 50: Hoare triple {10404#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {10404#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:31,146 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-28 05:59:31,146 INFO L290 TraceCheckUtils]: 52: Hoare triple {10404#(<= ~counter~0 5)} ~cond := #in~cond; {10404#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:31,146 INFO L290 TraceCheckUtils]: 53: Hoare triple {10404#(<= ~counter~0 5)} assume !(0 == ~cond); {10404#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:31,147 INFO L290 TraceCheckUtils]: 54: Hoare triple {10404#(<= ~counter~0 5)} assume true; {10404#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:31,147 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {10404#(<= ~counter~0 5)} {10404#(<= ~counter~0 5)} #98#return; {10404#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:31,147 INFO L290 TraceCheckUtils]: 56: Hoare triple {10404#(<= ~counter~0 5)} assume !(~r~0 < 0); {10404#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:31,148 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-28 05:59:31,148 INFO L290 TraceCheckUtils]: 58: Hoare triple {10429#(<= |main_#t~post6| 5)} assume !(#t~post6 < 50);havoc #t~post6; {10248#false} is VALID [2022-04-28 05:59:31,148 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-28 05:59:31,148 INFO L290 TraceCheckUtils]: 60: Hoare triple {10248#false} ~cond := #in~cond; {10248#false} is VALID [2022-04-28 05:59:31,148 INFO L290 TraceCheckUtils]: 61: Hoare triple {10248#false} assume 0 == ~cond; {10248#false} is VALID [2022-04-28 05:59:31,148 INFO L290 TraceCheckUtils]: 62: Hoare triple {10248#false} assume !false; {10248#false} is VALID [2022-04-28 05:59:31,149 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-28 05:59:31,149 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:59:31,422 INFO L290 TraceCheckUtils]: 62: Hoare triple {10248#false} assume !false; {10248#false} is VALID [2022-04-28 05:59:31,422 INFO L290 TraceCheckUtils]: 61: Hoare triple {10248#false} assume 0 == ~cond; {10248#false} is VALID [2022-04-28 05:59:31,422 INFO L290 TraceCheckUtils]: 60: Hoare triple {10248#false} ~cond := #in~cond; {10248#false} is VALID [2022-04-28 05:59:31,422 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-28 05:59:31,422 INFO L290 TraceCheckUtils]: 58: Hoare triple {10457#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {10248#false} is VALID [2022-04-28 05:59:31,422 INFO L290 TraceCheckUtils]: 57: Hoare triple {10461#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10457#(< |main_#t~post6| 50)} is VALID [2022-04-28 05:59:31,423 INFO L290 TraceCheckUtils]: 56: Hoare triple {10461#(< ~counter~0 50)} assume !(~r~0 < 0); {10461#(< ~counter~0 50)} is VALID [2022-04-28 05:59:31,423 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {10247#true} {10461#(< ~counter~0 50)} #98#return; {10461#(< ~counter~0 50)} is VALID [2022-04-28 05:59:31,423 INFO L290 TraceCheckUtils]: 54: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-28 05:59:31,423 INFO L290 TraceCheckUtils]: 53: Hoare triple {10247#true} assume !(0 == ~cond); {10247#true} is VALID [2022-04-28 05:59:31,423 INFO L290 TraceCheckUtils]: 52: Hoare triple {10247#true} ~cond := #in~cond; {10247#true} is VALID [2022-04-28 05:59:31,423 INFO L272 TraceCheckUtils]: 51: Hoare triple {10461#(< ~counter~0 50)} call __VERIFIER_assert((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-28 05:59:31,423 INFO L290 TraceCheckUtils]: 50: Hoare triple {10461#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {10461#(< ~counter~0 50)} is VALID [2022-04-28 05:59:31,424 INFO L290 TraceCheckUtils]: 49: Hoare triple {10486#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10461#(< ~counter~0 50)} is VALID [2022-04-28 05:59:31,424 INFO L290 TraceCheckUtils]: 48: Hoare triple {10486#(< ~counter~0 49)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {10486#(< ~counter~0 49)} is VALID [2022-04-28 05:59:31,424 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10247#true} {10486#(< ~counter~0 49)} #98#return; {10486#(< ~counter~0 49)} is VALID [2022-04-28 05:59:31,424 INFO L290 TraceCheckUtils]: 46: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-28 05:59:31,425 INFO L290 TraceCheckUtils]: 45: Hoare triple {10247#true} assume !(0 == ~cond); {10247#true} is VALID [2022-04-28 05:59:31,425 INFO L290 TraceCheckUtils]: 44: Hoare triple {10247#true} ~cond := #in~cond; {10247#true} is VALID [2022-04-28 05:59:31,425 INFO L272 TraceCheckUtils]: 43: Hoare triple {10486#(< ~counter~0 49)} call __VERIFIER_assert((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-28 05:59:31,425 INFO L290 TraceCheckUtils]: 42: Hoare triple {10486#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {10486#(< ~counter~0 49)} is VALID [2022-04-28 05:59:31,425 INFO L290 TraceCheckUtils]: 41: Hoare triple {10511#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10486#(< ~counter~0 49)} is VALID [2022-04-28 05:59:31,425 INFO L290 TraceCheckUtils]: 40: Hoare triple {10511#(< ~counter~0 48)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {10511#(< ~counter~0 48)} is VALID [2022-04-28 05:59:31,426 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {10247#true} {10511#(< ~counter~0 48)} #98#return; {10511#(< ~counter~0 48)} is VALID [2022-04-28 05:59:31,426 INFO L290 TraceCheckUtils]: 38: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-28 05:59:31,426 INFO L290 TraceCheckUtils]: 37: Hoare triple {10247#true} assume !(0 == ~cond); {10247#true} is VALID [2022-04-28 05:59:31,426 INFO L290 TraceCheckUtils]: 36: Hoare triple {10247#true} ~cond := #in~cond; {10247#true} is VALID [2022-04-28 05:59:31,426 INFO L272 TraceCheckUtils]: 35: Hoare triple {10511#(< ~counter~0 48)} call __VERIFIER_assert((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-28 05:59:31,426 INFO L290 TraceCheckUtils]: 34: Hoare triple {10511#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {10511#(< ~counter~0 48)} is VALID [2022-04-28 05:59:31,426 INFO L290 TraceCheckUtils]: 33: Hoare triple {10536#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10511#(< ~counter~0 48)} is VALID [2022-04-28 05:59:31,427 INFO L290 TraceCheckUtils]: 32: Hoare triple {10536#(< ~counter~0 47)} assume !(~r~0 > 0); {10536#(< ~counter~0 47)} is VALID [2022-04-28 05:59:31,427 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {10247#true} {10536#(< ~counter~0 47)} #96#return; {10536#(< ~counter~0 47)} is VALID [2022-04-28 05:59:31,427 INFO L290 TraceCheckUtils]: 30: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-28 05:59:31,427 INFO L290 TraceCheckUtils]: 29: Hoare triple {10247#true} assume !(0 == ~cond); {10247#true} is VALID [2022-04-28 05:59:31,427 INFO L290 TraceCheckUtils]: 28: Hoare triple {10247#true} ~cond := #in~cond; {10247#true} is VALID [2022-04-28 05:59:31,427 INFO L272 TraceCheckUtils]: 27: Hoare triple {10536#(< ~counter~0 47)} call __VERIFIER_assert((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-28 05:59:31,427 INFO L290 TraceCheckUtils]: 26: Hoare triple {10536#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {10536#(< ~counter~0 47)} is VALID [2022-04-28 05:59:31,428 INFO L290 TraceCheckUtils]: 25: Hoare triple {10561#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10536#(< ~counter~0 47)} is VALID [2022-04-28 05:59:31,428 INFO L290 TraceCheckUtils]: 24: Hoare triple {10561#(< ~counter~0 46)} assume !!(0 != ~r~0); {10561#(< ~counter~0 46)} is VALID [2022-04-28 05:59:31,428 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10247#true} {10561#(< ~counter~0 46)} #94#return; {10561#(< ~counter~0 46)} is VALID [2022-04-28 05:59:31,428 INFO L290 TraceCheckUtils]: 22: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-28 05:59:31,428 INFO L290 TraceCheckUtils]: 21: Hoare triple {10247#true} assume !(0 == ~cond); {10247#true} is VALID [2022-04-28 05:59:31,428 INFO L290 TraceCheckUtils]: 20: Hoare triple {10247#true} ~cond := #in~cond; {10247#true} is VALID [2022-04-28 05:59:31,429 INFO L272 TraceCheckUtils]: 19: Hoare triple {10561#(< ~counter~0 46)} call __VERIFIER_assert((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-28 05:59:31,429 INFO L290 TraceCheckUtils]: 18: Hoare triple {10561#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {10561#(< ~counter~0 46)} is VALID [2022-04-28 05:59:31,429 INFO L290 TraceCheckUtils]: 17: Hoare triple {10586#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10561#(< ~counter~0 46)} is VALID [2022-04-28 05:59:31,429 INFO L290 TraceCheckUtils]: 16: Hoare triple {10586#(< ~counter~0 45)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {10586#(< ~counter~0 45)} is VALID [2022-04-28 05:59:31,430 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10247#true} {10586#(< ~counter~0 45)} #92#return; {10586#(< ~counter~0 45)} is VALID [2022-04-28 05:59:31,430 INFO L290 TraceCheckUtils]: 14: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-28 05:59:31,430 INFO L290 TraceCheckUtils]: 13: Hoare triple {10247#true} assume !(0 == ~cond); {10247#true} is VALID [2022-04-28 05:59:31,430 INFO L290 TraceCheckUtils]: 12: Hoare triple {10247#true} ~cond := #in~cond; {10247#true} is VALID [2022-04-28 05:59:31,430 INFO L272 TraceCheckUtils]: 11: Hoare triple {10586#(< ~counter~0 45)} 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-28 05:59:31,430 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10247#true} {10586#(< ~counter~0 45)} #90#return; {10586#(< ~counter~0 45)} is VALID [2022-04-28 05:59:31,430 INFO L290 TraceCheckUtils]: 9: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-28 05:59:31,430 INFO L290 TraceCheckUtils]: 8: Hoare triple {10247#true} assume !(0 == ~cond); {10247#true} is VALID [2022-04-28 05:59:31,430 INFO L290 TraceCheckUtils]: 7: Hoare triple {10247#true} ~cond := #in~cond; {10247#true} is VALID [2022-04-28 05:59:31,430 INFO L272 TraceCheckUtils]: 6: Hoare triple {10586#(< ~counter~0 45)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {10247#true} is VALID [2022-04-28 05:59:31,431 INFO L290 TraceCheckUtils]: 5: Hoare triple {10586#(< ~counter~0 45)} 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 45)} is VALID [2022-04-28 05:59:31,431 INFO L272 TraceCheckUtils]: 4: Hoare triple {10586#(< ~counter~0 45)} call #t~ret9 := main(); {10586#(< ~counter~0 45)} is VALID [2022-04-28 05:59:31,431 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10586#(< ~counter~0 45)} {10247#true} #102#return; {10586#(< ~counter~0 45)} is VALID [2022-04-28 05:59:31,431 INFO L290 TraceCheckUtils]: 2: Hoare triple {10586#(< ~counter~0 45)} assume true; {10586#(< ~counter~0 45)} is VALID [2022-04-28 05:59:31,431 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 45)} is VALID [2022-04-28 05:59:31,432 INFO L272 TraceCheckUtils]: 0: Hoare triple {10247#true} call ULTIMATE.init(); {10247#true} is VALID [2022-04-28 05:59:31,432 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-28 05:59:31,432 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:59:31,432 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [817313757] [2022-04-28 05:59:31,432 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:59:31,432 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1606610954] [2022-04-28 05:59:31,432 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1606610954] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:59:31,432 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:59:31,432 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-28 05:59:31,433 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:59:31,433 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [382115938] [2022-04-28 05:59:31,433 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [382115938] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:59:31,433 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:59:31,433 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:59:31,433 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1592172256] [2022-04-28 05:59:31,433 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:59:31,434 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-28 05:59:31,435 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:59:31,435 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-28 05:59:31,459 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:31,459 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:59:31,459 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:31,459 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:59:31,460 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:59:31,460 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-28 05:59:31,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:31,724 INFO L93 Difference]: Finished difference Result 164 states and 208 transitions. [2022-04-28 05:59:31,724 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 05:59:31,725 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-28 05:59:31,725 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:59:31,725 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-28 05:59:31,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-28 05:59:31,726 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-28 05:59:31,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-28 05:59:31,727 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 115 transitions. [2022-04-28 05:59:31,800 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:31,802 INFO L225 Difference]: With dead ends: 164 [2022-04-28 05:59:31,803 INFO L226 Difference]: Without dead ends: 159 [2022-04-28 05:59:31,803 INFO L412 NwaCegarLoop]: 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-28 05:59:31,804 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 46 mSDsluCounter, 120 mSDsCounter, 0 mSdLazyCounter, 59 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s 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.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:59:31,804 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [46 Valid, 165 Invalid, 94 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 59 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:59:31,804 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 159 states. [2022-04-28 05:59:31,888 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 159 to 151. [2022-04-28 05:59:31,888 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:59:31,889 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-28 05:59:31,889 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-28 05:59:31,889 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-28 05:59:31,891 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:31,891 INFO L93 Difference]: Finished difference Result 159 states and 202 transitions. [2022-04-28 05:59:31,891 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 202 transitions. [2022-04-28 05:59:31,892 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:31,892 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:31,892 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-28 05:59:31,892 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-28 05:59:31,894 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:31,894 INFO L93 Difference]: Finished difference Result 159 states and 202 transitions. [2022-04-28 05:59:31,895 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 202 transitions. [2022-04-28 05:59:31,895 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:31,897 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:31,897 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:59:31,897 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:59:31,897 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-28 05:59:31,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 151 states to 151 states and 193 transitions. [2022-04-28 05:59:31,900 INFO L78 Accepts]: Start accepts. Automaton has 151 states and 193 transitions. Word has length 63 [2022-04-28 05:59:31,900 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:59:31,900 INFO L495 AbstractCegarLoop]: Abstraction has 151 states and 193 transitions. [2022-04-28 05:59:31,900 INFO L496 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-28 05:59:31,900 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 151 states and 193 transitions. [2022-04-28 05:59:41,519 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 193 edges. 190 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:41,519 INFO L276 IsEmpty]: Start isEmpty. Operand 151 states and 193 transitions. [2022-04-28 05:59:41,519 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-28 05:59:41,519 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:59:41,520 INFO L195 NwaCegarLoop]: 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-28 05:59:41,535 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-28 05:59:41,727 WARN L477 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-28 05:59:41,727 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:59:41,727 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:59:41,728 INFO L85 PathProgramCache]: Analyzing trace with hash -1823928061, now seen corresponding path program 5 times [2022-04-28 05:59:41,728 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:41,728 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2087368919] [2022-04-28 05:59:41,728 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:59:41,728 INFO L85 PathProgramCache]: Analyzing trace with hash -1823928061, now seen corresponding path program 6 times [2022-04-28 05:59:41,728 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:59:41,728 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1486163231] [2022-04-28 05:59:41,728 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:59:41,728 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:59:41,739 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:59:41,739 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [417992047] [2022-04-28 05:59:41,739 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:59:41,740 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:59:41,740 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:59:41,741 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:59:41,742 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-04-28 05:59:41,800 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-04-28 05:59:41,800 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:59:41,801 INFO L263 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 05:59:41,814 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:59:41,815 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:59:42,149 INFO L272 TraceCheckUtils]: 0: Hoare triple {11592#true} call ULTIMATE.init(); {11592#true} is VALID [2022-04-28 05:59:42,150 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-28 05:59:42,150 INFO L290 TraceCheckUtils]: 2: Hoare triple {11600#(<= ~counter~0 0)} assume true; {11600#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:42,150 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11600#(<= ~counter~0 0)} {11592#true} #102#return; {11600#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:42,151 INFO L272 TraceCheckUtils]: 4: Hoare triple {11600#(<= ~counter~0 0)} call #t~ret9 := main(); {11600#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:42,151 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-28 05:59:42,152 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-28 05:59:42,152 INFO L290 TraceCheckUtils]: 7: Hoare triple {11600#(<= ~counter~0 0)} ~cond := #in~cond; {11600#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:42,152 INFO L290 TraceCheckUtils]: 8: Hoare triple {11600#(<= ~counter~0 0)} assume !(0 == ~cond); {11600#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:42,153 INFO L290 TraceCheckUtils]: 9: Hoare triple {11600#(<= ~counter~0 0)} assume true; {11600#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:42,153 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11600#(<= ~counter~0 0)} {11600#(<= ~counter~0 0)} #90#return; {11600#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:42,154 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-28 05:59:42,154 INFO L290 TraceCheckUtils]: 12: Hoare triple {11600#(<= ~counter~0 0)} ~cond := #in~cond; {11600#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:42,154 INFO L290 TraceCheckUtils]: 13: Hoare triple {11600#(<= ~counter~0 0)} assume !(0 == ~cond); {11600#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:42,155 INFO L290 TraceCheckUtils]: 14: Hoare triple {11600#(<= ~counter~0 0)} assume true; {11600#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:42,155 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11600#(<= ~counter~0 0)} {11600#(<= ~counter~0 0)} #92#return; {11600#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:42,155 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-28 05:59:42,156 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-28 05:59:42,156 INFO L290 TraceCheckUtils]: 18: Hoare triple {11649#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {11649#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:42,157 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-28 05:59:42,157 INFO L290 TraceCheckUtils]: 20: Hoare triple {11649#(<= ~counter~0 1)} ~cond := #in~cond; {11649#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:42,158 INFO L290 TraceCheckUtils]: 21: Hoare triple {11649#(<= ~counter~0 1)} assume !(0 == ~cond); {11649#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:42,158 INFO L290 TraceCheckUtils]: 22: Hoare triple {11649#(<= ~counter~0 1)} assume true; {11649#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:42,158 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11649#(<= ~counter~0 1)} {11649#(<= ~counter~0 1)} #94#return; {11649#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:42,159 INFO L290 TraceCheckUtils]: 24: Hoare triple {11649#(<= ~counter~0 1)} assume !!(0 != ~r~0); {11649#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:42,159 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-28 05:59:42,160 INFO L290 TraceCheckUtils]: 26: Hoare triple {11674#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {11674#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:42,160 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-28 05:59:42,160 INFO L290 TraceCheckUtils]: 28: Hoare triple {11674#(<= ~counter~0 2)} ~cond := #in~cond; {11674#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:42,161 INFO L290 TraceCheckUtils]: 29: Hoare triple {11674#(<= ~counter~0 2)} assume !(0 == ~cond); {11674#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:42,161 INFO L290 TraceCheckUtils]: 30: Hoare triple {11674#(<= ~counter~0 2)} assume true; {11674#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:42,162 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11674#(<= ~counter~0 2)} {11674#(<= ~counter~0 2)} #96#return; {11674#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:42,162 INFO L290 TraceCheckUtils]: 32: Hoare triple {11674#(<= ~counter~0 2)} assume !(~r~0 > 0); {11674#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:42,162 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-28 05:59:42,163 INFO L290 TraceCheckUtils]: 34: Hoare triple {11699#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {11699#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:42,163 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-28 05:59:42,164 INFO L290 TraceCheckUtils]: 36: Hoare triple {11699#(<= ~counter~0 3)} ~cond := #in~cond; {11699#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:42,164 INFO L290 TraceCheckUtils]: 37: Hoare triple {11699#(<= ~counter~0 3)} assume !(0 == ~cond); {11699#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:42,164 INFO L290 TraceCheckUtils]: 38: Hoare triple {11699#(<= ~counter~0 3)} assume true; {11699#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:42,165 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {11699#(<= ~counter~0 3)} {11699#(<= ~counter~0 3)} #98#return; {11699#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:42,165 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-28 05:59:42,166 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-28 05:59:42,166 INFO L290 TraceCheckUtils]: 42: Hoare triple {11724#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {11724#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:42,166 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-28 05:59:42,167 INFO L290 TraceCheckUtils]: 44: Hoare triple {11724#(<= ~counter~0 4)} ~cond := #in~cond; {11724#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:42,167 INFO L290 TraceCheckUtils]: 45: Hoare triple {11724#(<= ~counter~0 4)} assume !(0 == ~cond); {11724#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:42,167 INFO L290 TraceCheckUtils]: 46: Hoare triple {11724#(<= ~counter~0 4)} assume true; {11724#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:42,168 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {11724#(<= ~counter~0 4)} {11724#(<= ~counter~0 4)} #98#return; {11724#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:42,168 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-28 05:59:42,169 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-28 05:59:42,169 INFO L290 TraceCheckUtils]: 50: Hoare triple {11749#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {11749#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:42,170 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-28 05:59:42,170 INFO L290 TraceCheckUtils]: 52: Hoare triple {11749#(<= ~counter~0 5)} ~cond := #in~cond; {11749#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:42,170 INFO L290 TraceCheckUtils]: 53: Hoare triple {11749#(<= ~counter~0 5)} assume !(0 == ~cond); {11749#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:42,170 INFO L290 TraceCheckUtils]: 54: Hoare triple {11749#(<= ~counter~0 5)} assume true; {11749#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:42,171 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11749#(<= ~counter~0 5)} {11749#(<= ~counter~0 5)} #98#return; {11749#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:42,171 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-28 05:59:42,172 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-28 05:59:42,172 INFO L290 TraceCheckUtils]: 58: Hoare triple {11774#(<= |main_#t~post8| 5)} assume !(#t~post8 < 50);havoc #t~post8; {11593#false} is VALID [2022-04-28 05:59:42,172 INFO L290 TraceCheckUtils]: 59: Hoare triple {11593#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11593#false} is VALID [2022-04-28 05:59:42,172 INFO L290 TraceCheckUtils]: 60: Hoare triple {11593#false} assume !(#t~post6 < 50);havoc #t~post6; {11593#false} is VALID [2022-04-28 05:59:42,172 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-28 05:59:42,172 INFO L290 TraceCheckUtils]: 62: Hoare triple {11593#false} ~cond := #in~cond; {11593#false} is VALID [2022-04-28 05:59:42,172 INFO L290 TraceCheckUtils]: 63: Hoare triple {11593#false} assume 0 == ~cond; {11593#false} is VALID [2022-04-28 05:59:42,173 INFO L290 TraceCheckUtils]: 64: Hoare triple {11593#false} assume !false; {11593#false} is VALID [2022-04-28 05:59:42,173 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-28 05:59:42,173 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:59:42,550 INFO L290 TraceCheckUtils]: 64: Hoare triple {11593#false} assume !false; {11593#false} is VALID [2022-04-28 05:59:42,550 INFO L290 TraceCheckUtils]: 63: Hoare triple {11593#false} assume 0 == ~cond; {11593#false} is VALID [2022-04-28 05:59:42,550 INFO L290 TraceCheckUtils]: 62: Hoare triple {11593#false} ~cond := #in~cond; {11593#false} is VALID [2022-04-28 05:59:42,550 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-28 05:59:42,550 INFO L290 TraceCheckUtils]: 60: Hoare triple {11593#false} assume !(#t~post6 < 50);havoc #t~post6; {11593#false} is VALID [2022-04-28 05:59:42,550 INFO L290 TraceCheckUtils]: 59: Hoare triple {11593#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11593#false} is VALID [2022-04-28 05:59:42,551 INFO L290 TraceCheckUtils]: 58: Hoare triple {11814#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {11593#false} is VALID [2022-04-28 05:59:42,551 INFO L290 TraceCheckUtils]: 57: Hoare triple {11818#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11814#(< |main_#t~post8| 50)} is VALID [2022-04-28 05:59:42,551 INFO L290 TraceCheckUtils]: 56: Hoare triple {11818#(< ~counter~0 50)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {11818#(< ~counter~0 50)} is VALID [2022-04-28 05:59:42,552 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11592#true} {11818#(< ~counter~0 50)} #98#return; {11818#(< ~counter~0 50)} is VALID [2022-04-28 05:59:42,552 INFO L290 TraceCheckUtils]: 54: Hoare triple {11592#true} assume true; {11592#true} is VALID [2022-04-28 05:59:42,552 INFO L290 TraceCheckUtils]: 53: Hoare triple {11592#true} assume !(0 == ~cond); {11592#true} is VALID [2022-04-28 05:59:42,552 INFO L290 TraceCheckUtils]: 52: Hoare triple {11592#true} ~cond := #in~cond; {11592#true} is VALID [2022-04-28 05:59:42,552 INFO L272 TraceCheckUtils]: 51: Hoare triple {11818#(< ~counter~0 50)} call __VERIFIER_assert((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-28 05:59:42,552 INFO L290 TraceCheckUtils]: 50: Hoare triple {11818#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {11818#(< ~counter~0 50)} is VALID [2022-04-28 05:59:42,553 INFO L290 TraceCheckUtils]: 49: Hoare triple {11843#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11818#(< ~counter~0 50)} is VALID [2022-04-28 05:59:42,553 INFO L290 TraceCheckUtils]: 48: Hoare triple {11843#(< ~counter~0 49)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {11843#(< ~counter~0 49)} is VALID [2022-04-28 05:59:42,554 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {11592#true} {11843#(< ~counter~0 49)} #98#return; {11843#(< ~counter~0 49)} is VALID [2022-04-28 05:59:42,554 INFO L290 TraceCheckUtils]: 46: Hoare triple {11592#true} assume true; {11592#true} is VALID [2022-04-28 05:59:42,554 INFO L290 TraceCheckUtils]: 45: Hoare triple {11592#true} assume !(0 == ~cond); {11592#true} is VALID [2022-04-28 05:59:42,554 INFO L290 TraceCheckUtils]: 44: Hoare triple {11592#true} ~cond := #in~cond; {11592#true} is VALID [2022-04-28 05:59:42,554 INFO L272 TraceCheckUtils]: 43: Hoare triple {11843#(< ~counter~0 49)} call __VERIFIER_assert((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-28 05:59:42,554 INFO L290 TraceCheckUtils]: 42: Hoare triple {11843#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {11843#(< ~counter~0 49)} is VALID [2022-04-28 05:59:42,555 INFO L290 TraceCheckUtils]: 41: Hoare triple {11868#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11843#(< ~counter~0 49)} is VALID [2022-04-28 05:59:42,555 INFO L290 TraceCheckUtils]: 40: Hoare triple {11868#(< ~counter~0 48)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {11868#(< ~counter~0 48)} is VALID [2022-04-28 05:59:42,556 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {11592#true} {11868#(< ~counter~0 48)} #98#return; {11868#(< ~counter~0 48)} is VALID [2022-04-28 05:59:42,556 INFO L290 TraceCheckUtils]: 38: Hoare triple {11592#true} assume true; {11592#true} is VALID [2022-04-28 05:59:42,556 INFO L290 TraceCheckUtils]: 37: Hoare triple {11592#true} assume !(0 == ~cond); {11592#true} is VALID [2022-04-28 05:59:42,556 INFO L290 TraceCheckUtils]: 36: Hoare triple {11592#true} ~cond := #in~cond; {11592#true} is VALID [2022-04-28 05:59:42,556 INFO L272 TraceCheckUtils]: 35: Hoare triple {11868#(< ~counter~0 48)} call __VERIFIER_assert((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-28 05:59:42,556 INFO L290 TraceCheckUtils]: 34: Hoare triple {11868#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {11868#(< ~counter~0 48)} is VALID [2022-04-28 05:59:42,557 INFO L290 TraceCheckUtils]: 33: Hoare triple {11893#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11868#(< ~counter~0 48)} is VALID [2022-04-28 05:59:42,557 INFO L290 TraceCheckUtils]: 32: Hoare triple {11893#(< ~counter~0 47)} assume !(~r~0 > 0); {11893#(< ~counter~0 47)} is VALID [2022-04-28 05:59:42,557 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11592#true} {11893#(< ~counter~0 47)} #96#return; {11893#(< ~counter~0 47)} is VALID [2022-04-28 05:59:42,558 INFO L290 TraceCheckUtils]: 30: Hoare triple {11592#true} assume true; {11592#true} is VALID [2022-04-28 05:59:42,558 INFO L290 TraceCheckUtils]: 29: Hoare triple {11592#true} assume !(0 == ~cond); {11592#true} is VALID [2022-04-28 05:59:42,558 INFO L290 TraceCheckUtils]: 28: Hoare triple {11592#true} ~cond := #in~cond; {11592#true} is VALID [2022-04-28 05:59:42,558 INFO L272 TraceCheckUtils]: 27: Hoare triple {11893#(< ~counter~0 47)} call __VERIFIER_assert((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-28 05:59:42,558 INFO L290 TraceCheckUtils]: 26: Hoare triple {11893#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {11893#(< ~counter~0 47)} is VALID [2022-04-28 05:59:42,558 INFO L290 TraceCheckUtils]: 25: Hoare triple {11918#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11893#(< ~counter~0 47)} is VALID [2022-04-28 05:59:42,559 INFO L290 TraceCheckUtils]: 24: Hoare triple {11918#(< ~counter~0 46)} assume !!(0 != ~r~0); {11918#(< ~counter~0 46)} is VALID [2022-04-28 05:59:42,559 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11592#true} {11918#(< ~counter~0 46)} #94#return; {11918#(< ~counter~0 46)} is VALID [2022-04-28 05:59:42,559 INFO L290 TraceCheckUtils]: 22: Hoare triple {11592#true} assume true; {11592#true} is VALID [2022-04-28 05:59:42,559 INFO L290 TraceCheckUtils]: 21: Hoare triple {11592#true} assume !(0 == ~cond); {11592#true} is VALID [2022-04-28 05:59:42,560 INFO L290 TraceCheckUtils]: 20: Hoare triple {11592#true} ~cond := #in~cond; {11592#true} is VALID [2022-04-28 05:59:42,560 INFO L272 TraceCheckUtils]: 19: Hoare triple {11918#(< ~counter~0 46)} call __VERIFIER_assert((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-28 05:59:42,560 INFO L290 TraceCheckUtils]: 18: Hoare triple {11918#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {11918#(< ~counter~0 46)} is VALID [2022-04-28 05:59:42,561 INFO L290 TraceCheckUtils]: 17: Hoare triple {11943#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11918#(< ~counter~0 46)} is VALID [2022-04-28 05:59:42,561 INFO L290 TraceCheckUtils]: 16: Hoare triple {11943#(< ~counter~0 45)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {11943#(< ~counter~0 45)} is VALID [2022-04-28 05:59:42,561 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11592#true} {11943#(< ~counter~0 45)} #92#return; {11943#(< ~counter~0 45)} is VALID [2022-04-28 05:59:42,561 INFO L290 TraceCheckUtils]: 14: Hoare triple {11592#true} assume true; {11592#true} is VALID [2022-04-28 05:59:42,562 INFO L290 TraceCheckUtils]: 13: Hoare triple {11592#true} assume !(0 == ~cond); {11592#true} is VALID [2022-04-28 05:59:42,562 INFO L290 TraceCheckUtils]: 12: Hoare triple {11592#true} ~cond := #in~cond; {11592#true} is VALID [2022-04-28 05:59:42,562 INFO L272 TraceCheckUtils]: 11: Hoare triple {11943#(< ~counter~0 45)} 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-28 05:59:42,562 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11592#true} {11943#(< ~counter~0 45)} #90#return; {11943#(< ~counter~0 45)} is VALID [2022-04-28 05:59:42,562 INFO L290 TraceCheckUtils]: 9: Hoare triple {11592#true} assume true; {11592#true} is VALID [2022-04-28 05:59:42,562 INFO L290 TraceCheckUtils]: 8: Hoare triple {11592#true} assume !(0 == ~cond); {11592#true} is VALID [2022-04-28 05:59:42,562 INFO L290 TraceCheckUtils]: 7: Hoare triple {11592#true} ~cond := #in~cond; {11592#true} is VALID [2022-04-28 05:59:42,562 INFO L272 TraceCheckUtils]: 6: Hoare triple {11943#(< ~counter~0 45)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {11592#true} is VALID [2022-04-28 05:59:42,563 INFO L290 TraceCheckUtils]: 5: Hoare triple {11943#(< ~counter~0 45)} 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 45)} is VALID [2022-04-28 05:59:42,563 INFO L272 TraceCheckUtils]: 4: Hoare triple {11943#(< ~counter~0 45)} call #t~ret9 := main(); {11943#(< ~counter~0 45)} is VALID [2022-04-28 05:59:42,563 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11943#(< ~counter~0 45)} {11592#true} #102#return; {11943#(< ~counter~0 45)} is VALID [2022-04-28 05:59:42,564 INFO L290 TraceCheckUtils]: 2: Hoare triple {11943#(< ~counter~0 45)} assume true; {11943#(< ~counter~0 45)} is VALID [2022-04-28 05:59:42,564 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 45)} is VALID [2022-04-28 05:59:42,564 INFO L272 TraceCheckUtils]: 0: Hoare triple {11592#true} call ULTIMATE.init(); {11592#true} is VALID [2022-04-28 05:59:42,564 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-28 05:59:42,564 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:59:42,565 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1486163231] [2022-04-28 05:59:42,565 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:59:42,565 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [417992047] [2022-04-28 05:59:42,565 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [417992047] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:59:42,565 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:59:42,565 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-28 05:59:42,565 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:59:42,565 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2087368919] [2022-04-28 05:59:42,565 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2087368919] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:59:42,565 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:59:42,565 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:59:42,565 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1728970765] [2022-04-28 05:59:42,565 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:59:42,568 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-28 05:59:42,568 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:59:42,568 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-28 05:59:42,610 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:42,610 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:59:42,610 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:42,611 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:59:42,611 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:59:42,611 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-28 05:59:43,012 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:43,012 INFO L93 Difference]: Finished difference Result 226 states and 299 transitions. [2022-04-28 05:59:43,012 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:59:43,013 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-28 05:59:43,013 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:59:43,013 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-28 05:59:43,014 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 137 transitions. [2022-04-28 05:59:43,014 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-28 05:59:43,015 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 137 transitions. [2022-04-28 05:59:43,015 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 137 transitions. [2022-04-28 05:59:43,119 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-28 05:59:43,121 INFO L225 Difference]: With dead ends: 226 [2022-04-28 05:59:43,121 INFO L226 Difference]: Without dead ends: 161 [2022-04-28 05:59:43,122 INFO L412 NwaCegarLoop]: 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-28 05:59:43,122 INFO L413 NwaCegarLoop]: 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-28 05:59:43,122 INFO L414 NwaCegarLoop]: 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-28 05:59:43,122 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 161 states. [2022-04-28 05:59:43,199 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 161 to 156. [2022-04-28 05:59:43,199 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:59:43,200 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-28 05:59:43,200 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-28 05:59:43,200 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-28 05:59:43,203 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:43,203 INFO L93 Difference]: Finished difference Result 161 states and 204 transitions. [2022-04-28 05:59:43,203 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 204 transitions. [2022-04-28 05:59:43,203 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:43,203 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:43,204 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-28 05:59:43,204 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-28 05:59:43,206 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:43,206 INFO L93 Difference]: Finished difference Result 161 states and 204 transitions. [2022-04-28 05:59:43,206 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 204 transitions. [2022-04-28 05:59:43,207 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:43,207 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:43,207 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:59:43,207 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:59:43,208 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-28 05:59:43,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 156 states to 156 states and 199 transitions. [2022-04-28 05:59:43,211 INFO L78 Accepts]: Start accepts. Automaton has 156 states and 199 transitions. Word has length 65 [2022-04-28 05:59:43,211 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:59:43,211 INFO L495 AbstractCegarLoop]: Abstraction has 156 states and 199 transitions. [2022-04-28 05:59:43,211 INFO L496 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-28 05:59:43,211 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 156 states and 199 transitions. [2022-04-28 05:59:52,096 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 199 edges. 197 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:52,097 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 199 transitions. [2022-04-28 05:59:52,097 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-04-28 05:59:52,097 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:59:52,097 INFO L195 NwaCegarLoop]: 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-28 05:59:52,115 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-28 05:59:52,298 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable14 [2022-04-28 05:59:52,298 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:59:52,298 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:59:52,298 INFO L85 PathProgramCache]: Analyzing trace with hash -1211810838, now seen corresponding path program 1 times [2022-04-28 05:59:52,298 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:52,298 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1314462254] [2022-04-28 05:59:52,299 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:59:52,299 INFO L85 PathProgramCache]: Analyzing trace with hash -1211810838, now seen corresponding path program 2 times [2022-04-28 05:59:52,299 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:59:52,299 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1817069567] [2022-04-28 05:59:52,299 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:59:52,299 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:59:52,312 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:59:52,312 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [585933495] [2022-04-28 05:59:52,312 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:59:52,312 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:59:52,312 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:59:52,318 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:59:52,319 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-28 05:59:52,370 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:59:52,370 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:59:52,371 INFO L263 TraceCheckSpWp]: Trace formula consists of 182 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 05:59:52,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:59:52,388 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:59:52,758 INFO L272 TraceCheckUtils]: 0: Hoare triple {13089#true} call ULTIMATE.init(); {13089#true} is VALID [2022-04-28 05:59:52,759 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-28 05:59:52,759 INFO L290 TraceCheckUtils]: 2: Hoare triple {13097#(<= ~counter~0 0)} assume true; {13097#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:52,759 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13097#(<= ~counter~0 0)} {13089#true} #102#return; {13097#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:52,759 INFO L272 TraceCheckUtils]: 4: Hoare triple {13097#(<= ~counter~0 0)} call #t~ret9 := main(); {13097#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:52,760 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-28 05:59:52,760 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-28 05:59:52,760 INFO L290 TraceCheckUtils]: 7: Hoare triple {13097#(<= ~counter~0 0)} ~cond := #in~cond; {13097#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:52,760 INFO L290 TraceCheckUtils]: 8: Hoare triple {13097#(<= ~counter~0 0)} assume !(0 == ~cond); {13097#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:52,761 INFO L290 TraceCheckUtils]: 9: Hoare triple {13097#(<= ~counter~0 0)} assume true; {13097#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:52,761 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13097#(<= ~counter~0 0)} {13097#(<= ~counter~0 0)} #90#return; {13097#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:52,761 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-28 05:59:52,761 INFO L290 TraceCheckUtils]: 12: Hoare triple {13097#(<= ~counter~0 0)} ~cond := #in~cond; {13097#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:52,762 INFO L290 TraceCheckUtils]: 13: Hoare triple {13097#(<= ~counter~0 0)} assume !(0 == ~cond); {13097#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:52,762 INFO L290 TraceCheckUtils]: 14: Hoare triple {13097#(<= ~counter~0 0)} assume true; {13097#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:52,762 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13097#(<= ~counter~0 0)} {13097#(<= ~counter~0 0)} #92#return; {13097#(<= ~counter~0 0)} is VALID [2022-04-28 05:59:52,762 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-28 05:59:52,763 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-28 05:59:52,763 INFO L290 TraceCheckUtils]: 18: Hoare triple {13146#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {13146#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:52,763 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-28 05:59:52,764 INFO L290 TraceCheckUtils]: 20: Hoare triple {13146#(<= ~counter~0 1)} ~cond := #in~cond; {13146#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:52,764 INFO L290 TraceCheckUtils]: 21: Hoare triple {13146#(<= ~counter~0 1)} assume !(0 == ~cond); {13146#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:52,764 INFO L290 TraceCheckUtils]: 22: Hoare triple {13146#(<= ~counter~0 1)} assume true; {13146#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:52,765 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {13146#(<= ~counter~0 1)} {13146#(<= ~counter~0 1)} #94#return; {13146#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:52,765 INFO L290 TraceCheckUtils]: 24: Hoare triple {13146#(<= ~counter~0 1)} assume !!(0 != ~r~0); {13146#(<= ~counter~0 1)} is VALID [2022-04-28 05:59:52,765 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-28 05:59:52,765 INFO L290 TraceCheckUtils]: 26: Hoare triple {13171#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {13171#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:52,766 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-28 05:59:52,766 INFO L290 TraceCheckUtils]: 28: Hoare triple {13171#(<= ~counter~0 2)} ~cond := #in~cond; {13171#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:52,766 INFO L290 TraceCheckUtils]: 29: Hoare triple {13171#(<= ~counter~0 2)} assume !(0 == ~cond); {13171#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:52,766 INFO L290 TraceCheckUtils]: 30: Hoare triple {13171#(<= ~counter~0 2)} assume true; {13171#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:52,767 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {13171#(<= ~counter~0 2)} {13171#(<= ~counter~0 2)} #96#return; {13171#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:52,767 INFO L290 TraceCheckUtils]: 32: Hoare triple {13171#(<= ~counter~0 2)} assume !(~r~0 > 0); {13171#(<= ~counter~0 2)} is VALID [2022-04-28 05:59:52,767 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-28 05:59:52,768 INFO L290 TraceCheckUtils]: 34: Hoare triple {13196#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {13196#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:52,768 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-28 05:59:52,768 INFO L290 TraceCheckUtils]: 36: Hoare triple {13196#(<= ~counter~0 3)} ~cond := #in~cond; {13196#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:52,768 INFO L290 TraceCheckUtils]: 37: Hoare triple {13196#(<= ~counter~0 3)} assume !(0 == ~cond); {13196#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:52,769 INFO L290 TraceCheckUtils]: 38: Hoare triple {13196#(<= ~counter~0 3)} assume true; {13196#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:52,769 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {13196#(<= ~counter~0 3)} {13196#(<= ~counter~0 3)} #98#return; {13196#(<= ~counter~0 3)} is VALID [2022-04-28 05:59:52,769 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-28 05:59:52,770 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-28 05:59:52,770 INFO L290 TraceCheckUtils]: 42: Hoare triple {13221#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {13221#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:52,770 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-28 05:59:52,770 INFO L290 TraceCheckUtils]: 44: Hoare triple {13221#(<= ~counter~0 4)} ~cond := #in~cond; {13221#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:52,771 INFO L290 TraceCheckUtils]: 45: Hoare triple {13221#(<= ~counter~0 4)} assume !(0 == ~cond); {13221#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:52,771 INFO L290 TraceCheckUtils]: 46: Hoare triple {13221#(<= ~counter~0 4)} assume true; {13221#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:52,771 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {13221#(<= ~counter~0 4)} {13221#(<= ~counter~0 4)} #98#return; {13221#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:52,771 INFO L290 TraceCheckUtils]: 48: Hoare triple {13221#(<= ~counter~0 4)} assume !(~r~0 < 0); {13221#(<= ~counter~0 4)} is VALID [2022-04-28 05:59:52,772 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-28 05:59:52,772 INFO L290 TraceCheckUtils]: 50: Hoare triple {13246#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {13246#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:52,772 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-28 05:59:52,773 INFO L290 TraceCheckUtils]: 52: Hoare triple {13246#(<= ~counter~0 5)} ~cond := #in~cond; {13246#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:52,773 INFO L290 TraceCheckUtils]: 53: Hoare triple {13246#(<= ~counter~0 5)} assume !(0 == ~cond); {13246#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:52,773 INFO L290 TraceCheckUtils]: 54: Hoare triple {13246#(<= ~counter~0 5)} assume true; {13246#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:52,773 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {13246#(<= ~counter~0 5)} {13246#(<= ~counter~0 5)} #94#return; {13246#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:52,774 INFO L290 TraceCheckUtils]: 56: Hoare triple {13246#(<= ~counter~0 5)} assume !!(0 != ~r~0); {13246#(<= ~counter~0 5)} is VALID [2022-04-28 05:59:52,774 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-28 05:59:52,774 INFO L290 TraceCheckUtils]: 58: Hoare triple {13271#(<= |main_#t~post7| 5)} assume !(#t~post7 < 50);havoc #t~post7; {13090#false} is VALID [2022-04-28 05:59:52,774 INFO L290 TraceCheckUtils]: 59: Hoare triple {13090#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {13090#false} is VALID [2022-04-28 05:59:52,774 INFO L290 TraceCheckUtils]: 60: Hoare triple {13090#false} assume !(#t~post8 < 50);havoc #t~post8; {13090#false} is VALID [2022-04-28 05:59:52,775 INFO L290 TraceCheckUtils]: 61: Hoare triple {13090#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13090#false} is VALID [2022-04-28 05:59:52,775 INFO L290 TraceCheckUtils]: 62: Hoare triple {13090#false} assume !(#t~post6 < 50);havoc #t~post6; {13090#false} is VALID [2022-04-28 05:59:52,775 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-28 05:59:52,775 INFO L290 TraceCheckUtils]: 64: Hoare triple {13090#false} ~cond := #in~cond; {13090#false} is VALID [2022-04-28 05:59:52,775 INFO L290 TraceCheckUtils]: 65: Hoare triple {13090#false} assume 0 == ~cond; {13090#false} is VALID [2022-04-28 05:59:52,775 INFO L290 TraceCheckUtils]: 66: Hoare triple {13090#false} assume !false; {13090#false} is VALID [2022-04-28 05:59:52,775 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-28 05:59:52,775 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:59:53,074 INFO L290 TraceCheckUtils]: 66: Hoare triple {13090#false} assume !false; {13090#false} is VALID [2022-04-28 05:59:53,074 INFO L290 TraceCheckUtils]: 65: Hoare triple {13090#false} assume 0 == ~cond; {13090#false} is VALID [2022-04-28 05:59:53,074 INFO L290 TraceCheckUtils]: 64: Hoare triple {13090#false} ~cond := #in~cond; {13090#false} is VALID [2022-04-28 05:59:53,074 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-28 05:59:53,074 INFO L290 TraceCheckUtils]: 62: Hoare triple {13090#false} assume !(#t~post6 < 50);havoc #t~post6; {13090#false} is VALID [2022-04-28 05:59:53,074 INFO L290 TraceCheckUtils]: 61: Hoare triple {13090#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13090#false} is VALID [2022-04-28 05:59:53,075 INFO L290 TraceCheckUtils]: 60: Hoare triple {13090#false} assume !(#t~post8 < 50);havoc #t~post8; {13090#false} is VALID [2022-04-28 05:59:53,075 INFO L290 TraceCheckUtils]: 59: Hoare triple {13090#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {13090#false} is VALID [2022-04-28 05:59:53,075 INFO L290 TraceCheckUtils]: 58: Hoare triple {13323#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {13090#false} is VALID [2022-04-28 05:59:53,075 INFO L290 TraceCheckUtils]: 57: Hoare triple {13327#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13323#(< |main_#t~post7| 50)} is VALID [2022-04-28 05:59:53,075 INFO L290 TraceCheckUtils]: 56: Hoare triple {13327#(< ~counter~0 50)} assume !!(0 != ~r~0); {13327#(< ~counter~0 50)} is VALID [2022-04-28 05:59:53,076 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {13089#true} {13327#(< ~counter~0 50)} #94#return; {13327#(< ~counter~0 50)} is VALID [2022-04-28 05:59:53,076 INFO L290 TraceCheckUtils]: 54: Hoare triple {13089#true} assume true; {13089#true} is VALID [2022-04-28 05:59:53,076 INFO L290 TraceCheckUtils]: 53: Hoare triple {13089#true} assume !(0 == ~cond); {13089#true} is VALID [2022-04-28 05:59:53,076 INFO L290 TraceCheckUtils]: 52: Hoare triple {13089#true} ~cond := #in~cond; {13089#true} is VALID [2022-04-28 05:59:53,076 INFO L272 TraceCheckUtils]: 51: Hoare triple {13327#(< ~counter~0 50)} call __VERIFIER_assert((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-28 05:59:53,076 INFO L290 TraceCheckUtils]: 50: Hoare triple {13327#(< ~counter~0 50)} assume !!(#t~post6 < 50);havoc #t~post6; {13327#(< ~counter~0 50)} is VALID [2022-04-28 05:59:53,077 INFO L290 TraceCheckUtils]: 49: Hoare triple {13352#(< ~counter~0 49)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13327#(< ~counter~0 50)} is VALID [2022-04-28 05:59:53,077 INFO L290 TraceCheckUtils]: 48: Hoare triple {13352#(< ~counter~0 49)} assume !(~r~0 < 0); {13352#(< ~counter~0 49)} is VALID [2022-04-28 05:59:53,077 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {13089#true} {13352#(< ~counter~0 49)} #98#return; {13352#(< ~counter~0 49)} is VALID [2022-04-28 05:59:53,077 INFO L290 TraceCheckUtils]: 46: Hoare triple {13089#true} assume true; {13089#true} is VALID [2022-04-28 05:59:53,077 INFO L290 TraceCheckUtils]: 45: Hoare triple {13089#true} assume !(0 == ~cond); {13089#true} is VALID [2022-04-28 05:59:53,077 INFO L290 TraceCheckUtils]: 44: Hoare triple {13089#true} ~cond := #in~cond; {13089#true} is VALID [2022-04-28 05:59:53,077 INFO L272 TraceCheckUtils]: 43: Hoare triple {13352#(< ~counter~0 49)} call __VERIFIER_assert((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-28 05:59:53,078 INFO L290 TraceCheckUtils]: 42: Hoare triple {13352#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {13352#(< ~counter~0 49)} is VALID [2022-04-28 05:59:53,078 INFO L290 TraceCheckUtils]: 41: Hoare triple {13377#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {13352#(< ~counter~0 49)} is VALID [2022-04-28 05:59:53,078 INFO L290 TraceCheckUtils]: 40: Hoare triple {13377#(< ~counter~0 48)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {13377#(< ~counter~0 48)} is VALID [2022-04-28 05:59:53,078 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {13089#true} {13377#(< ~counter~0 48)} #98#return; {13377#(< ~counter~0 48)} is VALID [2022-04-28 05:59:53,078 INFO L290 TraceCheckUtils]: 38: Hoare triple {13089#true} assume true; {13089#true} is VALID [2022-04-28 05:59:53,079 INFO L290 TraceCheckUtils]: 37: Hoare triple {13089#true} assume !(0 == ~cond); {13089#true} is VALID [2022-04-28 05:59:53,079 INFO L290 TraceCheckUtils]: 36: Hoare triple {13089#true} ~cond := #in~cond; {13089#true} is VALID [2022-04-28 05:59:53,079 INFO L272 TraceCheckUtils]: 35: Hoare triple {13377#(< ~counter~0 48)} call __VERIFIER_assert((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-28 05:59:53,079 INFO L290 TraceCheckUtils]: 34: Hoare triple {13377#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {13377#(< ~counter~0 48)} is VALID [2022-04-28 05:59:53,080 INFO L290 TraceCheckUtils]: 33: Hoare triple {13402#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {13377#(< ~counter~0 48)} is VALID [2022-04-28 05:59:53,080 INFO L290 TraceCheckUtils]: 32: Hoare triple {13402#(< ~counter~0 47)} assume !(~r~0 > 0); {13402#(< ~counter~0 47)} is VALID [2022-04-28 05:59:53,080 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {13089#true} {13402#(< ~counter~0 47)} #96#return; {13402#(< ~counter~0 47)} is VALID [2022-04-28 05:59:53,080 INFO L290 TraceCheckUtils]: 30: Hoare triple {13089#true} assume true; {13089#true} is VALID [2022-04-28 05:59:53,080 INFO L290 TraceCheckUtils]: 29: Hoare triple {13089#true} assume !(0 == ~cond); {13089#true} is VALID [2022-04-28 05:59:53,080 INFO L290 TraceCheckUtils]: 28: Hoare triple {13089#true} ~cond := #in~cond; {13089#true} is VALID [2022-04-28 05:59:53,080 INFO L272 TraceCheckUtils]: 27: Hoare triple {13402#(< ~counter~0 47)} call __VERIFIER_assert((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-28 05:59:53,081 INFO L290 TraceCheckUtils]: 26: Hoare triple {13402#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {13402#(< ~counter~0 47)} is VALID [2022-04-28 05:59:53,081 INFO L290 TraceCheckUtils]: 25: Hoare triple {13427#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13402#(< ~counter~0 47)} is VALID [2022-04-28 05:59:53,081 INFO L290 TraceCheckUtils]: 24: Hoare triple {13427#(< ~counter~0 46)} assume !!(0 != ~r~0); {13427#(< ~counter~0 46)} is VALID [2022-04-28 05:59:53,081 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {13089#true} {13427#(< ~counter~0 46)} #94#return; {13427#(< ~counter~0 46)} is VALID [2022-04-28 05:59:53,081 INFO L290 TraceCheckUtils]: 22: Hoare triple {13089#true} assume true; {13089#true} is VALID [2022-04-28 05:59:53,081 INFO L290 TraceCheckUtils]: 21: Hoare triple {13089#true} assume !(0 == ~cond); {13089#true} is VALID [2022-04-28 05:59:53,082 INFO L290 TraceCheckUtils]: 20: Hoare triple {13089#true} ~cond := #in~cond; {13089#true} is VALID [2022-04-28 05:59:53,082 INFO L272 TraceCheckUtils]: 19: Hoare triple {13427#(< ~counter~0 46)} call __VERIFIER_assert((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-28 05:59:53,082 INFO L290 TraceCheckUtils]: 18: Hoare triple {13427#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {13427#(< ~counter~0 46)} is VALID [2022-04-28 05:59:53,082 INFO L290 TraceCheckUtils]: 17: Hoare triple {13452#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13427#(< ~counter~0 46)} is VALID [2022-04-28 05:59:53,082 INFO L290 TraceCheckUtils]: 16: Hoare triple {13452#(< ~counter~0 45)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {13452#(< ~counter~0 45)} is VALID [2022-04-28 05:59:53,083 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13089#true} {13452#(< ~counter~0 45)} #92#return; {13452#(< ~counter~0 45)} is VALID [2022-04-28 05:59:53,083 INFO L290 TraceCheckUtils]: 14: Hoare triple {13089#true} assume true; {13089#true} is VALID [2022-04-28 05:59:53,083 INFO L290 TraceCheckUtils]: 13: Hoare triple {13089#true} assume !(0 == ~cond); {13089#true} is VALID [2022-04-28 05:59:53,083 INFO L290 TraceCheckUtils]: 12: Hoare triple {13089#true} ~cond := #in~cond; {13089#true} is VALID [2022-04-28 05:59:53,083 INFO L272 TraceCheckUtils]: 11: Hoare triple {13452#(< ~counter~0 45)} 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-28 05:59:53,083 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13089#true} {13452#(< ~counter~0 45)} #90#return; {13452#(< ~counter~0 45)} is VALID [2022-04-28 05:59:53,083 INFO L290 TraceCheckUtils]: 9: Hoare triple {13089#true} assume true; {13089#true} is VALID [2022-04-28 05:59:53,083 INFO L290 TraceCheckUtils]: 8: Hoare triple {13089#true} assume !(0 == ~cond); {13089#true} is VALID [2022-04-28 05:59:53,083 INFO L290 TraceCheckUtils]: 7: Hoare triple {13089#true} ~cond := #in~cond; {13089#true} is VALID [2022-04-28 05:59:53,084 INFO L272 TraceCheckUtils]: 6: Hoare triple {13452#(< ~counter~0 45)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {13089#true} is VALID [2022-04-28 05:59:53,084 INFO L290 TraceCheckUtils]: 5: Hoare triple {13452#(< ~counter~0 45)} 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 45)} is VALID [2022-04-28 05:59:53,084 INFO L272 TraceCheckUtils]: 4: Hoare triple {13452#(< ~counter~0 45)} call #t~ret9 := main(); {13452#(< ~counter~0 45)} is VALID [2022-04-28 05:59:53,084 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13452#(< ~counter~0 45)} {13089#true} #102#return; {13452#(< ~counter~0 45)} is VALID [2022-04-28 05:59:53,084 INFO L290 TraceCheckUtils]: 2: Hoare triple {13452#(< ~counter~0 45)} assume true; {13452#(< ~counter~0 45)} is VALID [2022-04-28 05:59:53,085 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 45)} is VALID [2022-04-28 05:59:53,085 INFO L272 TraceCheckUtils]: 0: Hoare triple {13089#true} call ULTIMATE.init(); {13089#true} is VALID [2022-04-28 05:59:53,085 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-28 05:59:53,085 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:59:53,085 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1817069567] [2022-04-28 05:59:53,085 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:59:53,085 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [585933495] [2022-04-28 05:59:53,086 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [585933495] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:59:53,086 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:59:53,086 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-28 05:59:53,086 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:59:53,086 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1314462254] [2022-04-28 05:59:53,086 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1314462254] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:59:53,087 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:59:53,087 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:59:53,087 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [64797251] [2022-04-28 05:59:53,087 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:59:53,087 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-28 05:59:53,089 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:59:53,089 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-28 05:59:53,123 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:53,123 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:59:53,123 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:53,124 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:59:53,124 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:59:53,125 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-28 05:59:53,436 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:53,436 INFO L93 Difference]: Finished difference Result 229 states and 303 transitions. [2022-04-28 05:59:53,436 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 05:59:53,437 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-28 05:59:53,437 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:59:53,437 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-28 05:59:53,438 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 137 transitions. [2022-04-28 05:59:53,438 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-28 05:59:53,439 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 137 transitions. [2022-04-28 05:59:53,439 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 137 transitions. [2022-04-28 05:59:53,534 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-28 05:59:53,538 INFO L225 Difference]: With dead ends: 229 [2022-04-28 05:59:53,538 INFO L226 Difference]: Without dead ends: 164 [2022-04-28 05:59:53,538 INFO L412 NwaCegarLoop]: 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-28 05:59:53,539 INFO L413 NwaCegarLoop]: 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-28 05:59:53,539 INFO L414 NwaCegarLoop]: 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-28 05:59:53,541 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states. [2022-04-28 05:59:53,652 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 164. [2022-04-28 05:59:53,652 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:59:53,652 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-28 05:59:53,652 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-28 05:59:53,653 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-28 05:59:53,656 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:53,656 INFO L93 Difference]: Finished difference Result 164 states and 207 transitions. [2022-04-28 05:59:53,656 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 207 transitions. [2022-04-28 05:59:53,656 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:53,656 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:53,657 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-28 05:59:53,657 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-28 05:59:53,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:59:53,659 INFO L93 Difference]: Finished difference Result 164 states and 207 transitions. [2022-04-28 05:59:53,659 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 207 transitions. [2022-04-28 05:59:53,659 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:59:53,659 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:59:53,659 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:59:53,660 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:59:53,660 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-28 05:59:53,662 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 164 states to 164 states and 207 transitions. [2022-04-28 05:59:53,662 INFO L78 Accepts]: Start accepts. Automaton has 164 states and 207 transitions. Word has length 67 [2022-04-28 05:59:53,662 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:59:53,662 INFO L495 AbstractCegarLoop]: Abstraction has 164 states and 207 transitions. [2022-04-28 05:59:53,663 INFO L496 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-28 05:59:53,663 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 164 states and 207 transitions. [2022-04-28 05:59:59,896 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 207 edges. 207 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:59,897 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 207 transitions. [2022-04-28 05:59:59,897 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 72 [2022-04-28 05:59:59,897 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:59:59,897 INFO L195 NwaCegarLoop]: 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-28 05:59:59,915 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-04-28 06:00:00,098 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-28 06:00:00,098 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:00:00,098 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:00:00,098 INFO L85 PathProgramCache]: Analyzing trace with hash 1645787183, now seen corresponding path program 5 times [2022-04-28 06:00:00,098 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:00,099 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2029347478] [2022-04-28 06:00:00,099 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:00:00,099 INFO L85 PathProgramCache]: Analyzing trace with hash 1645787183, now seen corresponding path program 6 times [2022-04-28 06:00:00,099 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:00:00,099 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [857979718] [2022-04-28 06:00:00,099 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:00:00,099 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:00:00,115 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:00:00,115 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [373727135] [2022-04-28 06:00:00,115 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 06:00:00,115 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:00:00,115 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:00:00,117 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:00:00,119 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-28 06:00:00,185 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 06:00:00,186 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:00:00,186 INFO L263 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 06:00:00,200 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:00:00,201 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:00:00,549 INFO L272 TraceCheckUtils]: 0: Hoare triple {14628#true} call ULTIMATE.init(); {14628#true} is VALID [2022-04-28 06:00:00,550 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-28 06:00:00,550 INFO L290 TraceCheckUtils]: 2: Hoare triple {14636#(<= ~counter~0 0)} assume true; {14636#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:00,550 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14636#(<= ~counter~0 0)} {14628#true} #102#return; {14636#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:00,551 INFO L272 TraceCheckUtils]: 4: Hoare triple {14636#(<= ~counter~0 0)} call #t~ret9 := main(); {14636#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:00,551 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-28 06:00:00,551 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-28 06:00:00,552 INFO L290 TraceCheckUtils]: 7: Hoare triple {14636#(<= ~counter~0 0)} ~cond := #in~cond; {14636#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:00,552 INFO L290 TraceCheckUtils]: 8: Hoare triple {14636#(<= ~counter~0 0)} assume !(0 == ~cond); {14636#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:00,552 INFO L290 TraceCheckUtils]: 9: Hoare triple {14636#(<= ~counter~0 0)} assume true; {14636#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:00,553 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14636#(<= ~counter~0 0)} {14636#(<= ~counter~0 0)} #90#return; {14636#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:00,553 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-28 06:00:00,553 INFO L290 TraceCheckUtils]: 12: Hoare triple {14636#(<= ~counter~0 0)} ~cond := #in~cond; {14636#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:00,554 INFO L290 TraceCheckUtils]: 13: Hoare triple {14636#(<= ~counter~0 0)} assume !(0 == ~cond); {14636#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:00,554 INFO L290 TraceCheckUtils]: 14: Hoare triple {14636#(<= ~counter~0 0)} assume true; {14636#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:00,554 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14636#(<= ~counter~0 0)} {14636#(<= ~counter~0 0)} #92#return; {14636#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:00,555 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-28 06:00:00,555 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-28 06:00:00,555 INFO L290 TraceCheckUtils]: 18: Hoare triple {14685#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {14685#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:00,556 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-28 06:00:00,556 INFO L290 TraceCheckUtils]: 20: Hoare triple {14685#(<= ~counter~0 1)} ~cond := #in~cond; {14685#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:00,557 INFO L290 TraceCheckUtils]: 21: Hoare triple {14685#(<= ~counter~0 1)} assume !(0 == ~cond); {14685#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:00,557 INFO L290 TraceCheckUtils]: 22: Hoare triple {14685#(<= ~counter~0 1)} assume true; {14685#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:00,557 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {14685#(<= ~counter~0 1)} {14685#(<= ~counter~0 1)} #94#return; {14685#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:00,558 INFO L290 TraceCheckUtils]: 24: Hoare triple {14685#(<= ~counter~0 1)} assume !!(0 != ~r~0); {14685#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:00,558 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-28 06:00:00,558 INFO L290 TraceCheckUtils]: 26: Hoare triple {14710#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {14710#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:00,559 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-28 06:00:00,559 INFO L290 TraceCheckUtils]: 28: Hoare triple {14710#(<= ~counter~0 2)} ~cond := #in~cond; {14710#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:00,559 INFO L290 TraceCheckUtils]: 29: Hoare triple {14710#(<= ~counter~0 2)} assume !(0 == ~cond); {14710#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:00,560 INFO L290 TraceCheckUtils]: 30: Hoare triple {14710#(<= ~counter~0 2)} assume true; {14710#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:00,560 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {14710#(<= ~counter~0 2)} {14710#(<= ~counter~0 2)} #96#return; {14710#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:00,560 INFO L290 TraceCheckUtils]: 32: Hoare triple {14710#(<= ~counter~0 2)} assume !(~r~0 > 0); {14710#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:00,561 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-28 06:00:00,561 INFO L290 TraceCheckUtils]: 34: Hoare triple {14735#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {14735#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:00,562 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-28 06:00:00,562 INFO L290 TraceCheckUtils]: 36: Hoare triple {14735#(<= ~counter~0 3)} ~cond := #in~cond; {14735#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:00,562 INFO L290 TraceCheckUtils]: 37: Hoare triple {14735#(<= ~counter~0 3)} assume !(0 == ~cond); {14735#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:00,563 INFO L290 TraceCheckUtils]: 38: Hoare triple {14735#(<= ~counter~0 3)} assume true; {14735#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:00,563 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {14735#(<= ~counter~0 3)} {14735#(<= ~counter~0 3)} #98#return; {14735#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:00,563 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-28 06:00:00,564 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-28 06:00:00,564 INFO L290 TraceCheckUtils]: 42: Hoare triple {14760#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {14760#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:00,565 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-28 06:00:00,565 INFO L290 TraceCheckUtils]: 44: Hoare triple {14760#(<= ~counter~0 4)} ~cond := #in~cond; {14760#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:00,565 INFO L290 TraceCheckUtils]: 45: Hoare triple {14760#(<= ~counter~0 4)} assume !(0 == ~cond); {14760#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:00,565 INFO L290 TraceCheckUtils]: 46: Hoare triple {14760#(<= ~counter~0 4)} assume true; {14760#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:00,566 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {14760#(<= ~counter~0 4)} {14760#(<= ~counter~0 4)} #98#return; {14760#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:00,566 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-28 06:00:00,567 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-28 06:00:00,567 INFO L290 TraceCheckUtils]: 50: Hoare triple {14785#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {14785#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:00,567 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-28 06:00:00,568 INFO L290 TraceCheckUtils]: 52: Hoare triple {14785#(<= ~counter~0 5)} ~cond := #in~cond; {14785#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:00,568 INFO L290 TraceCheckUtils]: 53: Hoare triple {14785#(<= ~counter~0 5)} assume !(0 == ~cond); {14785#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:00,568 INFO L290 TraceCheckUtils]: 54: Hoare triple {14785#(<= ~counter~0 5)} assume true; {14785#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:00,569 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14785#(<= ~counter~0 5)} {14785#(<= ~counter~0 5)} #98#return; {14785#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:00,569 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-28 06:00:00,570 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-28 06:00:00,570 INFO L290 TraceCheckUtils]: 58: Hoare triple {14810#(<= ~counter~0 6)} assume !!(#t~post8 < 50);havoc #t~post8; {14810#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:00,570 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-28 06:00:00,571 INFO L290 TraceCheckUtils]: 60: Hoare triple {14810#(<= ~counter~0 6)} ~cond := #in~cond; {14810#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:00,571 INFO L290 TraceCheckUtils]: 61: Hoare triple {14810#(<= ~counter~0 6)} assume !(0 == ~cond); {14810#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:00,571 INFO L290 TraceCheckUtils]: 62: Hoare triple {14810#(<= ~counter~0 6)} assume true; {14810#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:00,572 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {14810#(<= ~counter~0 6)} {14810#(<= ~counter~0 6)} #98#return; {14810#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:00,572 INFO L290 TraceCheckUtils]: 64: Hoare triple {14810#(<= ~counter~0 6)} assume !(~r~0 < 0); {14810#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:00,572 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-28 06:00:00,573 INFO L290 TraceCheckUtils]: 66: Hoare triple {14835#(<= |main_#t~post6| 6)} assume !(#t~post6 < 50);havoc #t~post6; {14629#false} is VALID [2022-04-28 06:00:00,573 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-28 06:00:00,573 INFO L290 TraceCheckUtils]: 68: Hoare triple {14629#false} ~cond := #in~cond; {14629#false} is VALID [2022-04-28 06:00:00,573 INFO L290 TraceCheckUtils]: 69: Hoare triple {14629#false} assume 0 == ~cond; {14629#false} is VALID [2022-04-28 06:00:00,573 INFO L290 TraceCheckUtils]: 70: Hoare triple {14629#false} assume !false; {14629#false} is VALID [2022-04-28 06:00:00,573 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-28 06:00:00,573 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:00:00,923 INFO L290 TraceCheckUtils]: 70: Hoare triple {14629#false} assume !false; {14629#false} is VALID [2022-04-28 06:00:00,924 INFO L290 TraceCheckUtils]: 69: Hoare triple {14629#false} assume 0 == ~cond; {14629#false} is VALID [2022-04-28 06:00:00,924 INFO L290 TraceCheckUtils]: 68: Hoare triple {14629#false} ~cond := #in~cond; {14629#false} is VALID [2022-04-28 06:00:00,924 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-28 06:00:00,924 INFO L290 TraceCheckUtils]: 66: Hoare triple {14863#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {14629#false} is VALID [2022-04-28 06:00:00,924 INFO L290 TraceCheckUtils]: 65: Hoare triple {14867#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14863#(< |main_#t~post6| 50)} is VALID [2022-04-28 06:00:00,925 INFO L290 TraceCheckUtils]: 64: Hoare triple {14867#(< ~counter~0 50)} assume !(~r~0 < 0); {14867#(< ~counter~0 50)} is VALID [2022-04-28 06:00:00,925 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {14628#true} {14867#(< ~counter~0 50)} #98#return; {14867#(< ~counter~0 50)} is VALID [2022-04-28 06:00:00,925 INFO L290 TraceCheckUtils]: 62: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-28 06:00:00,925 INFO L290 TraceCheckUtils]: 61: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-28 06:00:00,925 INFO L290 TraceCheckUtils]: 60: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-28 06:00:00,925 INFO L272 TraceCheckUtils]: 59: Hoare triple {14867#(< ~counter~0 50)} call __VERIFIER_assert((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-28 06:00:00,926 INFO L290 TraceCheckUtils]: 58: Hoare triple {14867#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {14867#(< ~counter~0 50)} is VALID [2022-04-28 06:00:00,926 INFO L290 TraceCheckUtils]: 57: Hoare triple {14892#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14867#(< ~counter~0 50)} is VALID [2022-04-28 06:00:00,927 INFO L290 TraceCheckUtils]: 56: Hoare triple {14892#(< ~counter~0 49)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {14892#(< ~counter~0 49)} is VALID [2022-04-28 06:00:00,927 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14628#true} {14892#(< ~counter~0 49)} #98#return; {14892#(< ~counter~0 49)} is VALID [2022-04-28 06:00:00,927 INFO L290 TraceCheckUtils]: 54: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-28 06:00:00,927 INFO L290 TraceCheckUtils]: 53: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-28 06:00:00,927 INFO L290 TraceCheckUtils]: 52: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-28 06:00:00,927 INFO L272 TraceCheckUtils]: 51: Hoare triple {14892#(< ~counter~0 49)} call __VERIFIER_assert((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-28 06:00:00,928 INFO L290 TraceCheckUtils]: 50: Hoare triple {14892#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {14892#(< ~counter~0 49)} is VALID [2022-04-28 06:00:00,928 INFO L290 TraceCheckUtils]: 49: Hoare triple {14917#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14892#(< ~counter~0 49)} is VALID [2022-04-28 06:00:00,928 INFO L290 TraceCheckUtils]: 48: Hoare triple {14917#(< ~counter~0 48)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {14917#(< ~counter~0 48)} is VALID [2022-04-28 06:00:00,929 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {14628#true} {14917#(< ~counter~0 48)} #98#return; {14917#(< ~counter~0 48)} is VALID [2022-04-28 06:00:00,929 INFO L290 TraceCheckUtils]: 46: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-28 06:00:00,929 INFO L290 TraceCheckUtils]: 45: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-28 06:00:00,929 INFO L290 TraceCheckUtils]: 44: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-28 06:00:00,929 INFO L272 TraceCheckUtils]: 43: Hoare triple {14917#(< ~counter~0 48)} call __VERIFIER_assert((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-28 06:00:00,930 INFO L290 TraceCheckUtils]: 42: Hoare triple {14917#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {14917#(< ~counter~0 48)} is VALID [2022-04-28 06:00:00,930 INFO L290 TraceCheckUtils]: 41: Hoare triple {14942#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14917#(< ~counter~0 48)} is VALID [2022-04-28 06:00:00,930 INFO L290 TraceCheckUtils]: 40: Hoare triple {14942#(< ~counter~0 47)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {14942#(< ~counter~0 47)} is VALID [2022-04-28 06:00:00,931 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {14628#true} {14942#(< ~counter~0 47)} #98#return; {14942#(< ~counter~0 47)} is VALID [2022-04-28 06:00:00,931 INFO L290 TraceCheckUtils]: 38: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-28 06:00:00,931 INFO L290 TraceCheckUtils]: 37: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-28 06:00:00,931 INFO L290 TraceCheckUtils]: 36: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-28 06:00:00,931 INFO L272 TraceCheckUtils]: 35: Hoare triple {14942#(< ~counter~0 47)} call __VERIFIER_assert((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-28 06:00:00,931 INFO L290 TraceCheckUtils]: 34: Hoare triple {14942#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {14942#(< ~counter~0 47)} is VALID [2022-04-28 06:00:00,932 INFO L290 TraceCheckUtils]: 33: Hoare triple {14967#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14942#(< ~counter~0 47)} is VALID [2022-04-28 06:00:00,932 INFO L290 TraceCheckUtils]: 32: Hoare triple {14967#(< ~counter~0 46)} assume !(~r~0 > 0); {14967#(< ~counter~0 46)} is VALID [2022-04-28 06:00:00,933 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {14628#true} {14967#(< ~counter~0 46)} #96#return; {14967#(< ~counter~0 46)} is VALID [2022-04-28 06:00:00,933 INFO L290 TraceCheckUtils]: 30: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-28 06:00:00,933 INFO L290 TraceCheckUtils]: 29: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-28 06:00:00,933 INFO L290 TraceCheckUtils]: 28: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-28 06:00:00,933 INFO L272 TraceCheckUtils]: 27: Hoare triple {14967#(< ~counter~0 46)} call __VERIFIER_assert((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-28 06:00:00,933 INFO L290 TraceCheckUtils]: 26: Hoare triple {14967#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {14967#(< ~counter~0 46)} is VALID [2022-04-28 06:00:00,934 INFO L290 TraceCheckUtils]: 25: Hoare triple {14992#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14967#(< ~counter~0 46)} is VALID [2022-04-28 06:00:00,934 INFO L290 TraceCheckUtils]: 24: Hoare triple {14992#(< ~counter~0 45)} assume !!(0 != ~r~0); {14992#(< ~counter~0 45)} is VALID [2022-04-28 06:00:00,934 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {14628#true} {14992#(< ~counter~0 45)} #94#return; {14992#(< ~counter~0 45)} is VALID [2022-04-28 06:00:00,935 INFO L290 TraceCheckUtils]: 22: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-28 06:00:00,935 INFO L290 TraceCheckUtils]: 21: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-28 06:00:00,935 INFO L290 TraceCheckUtils]: 20: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-28 06:00:00,935 INFO L272 TraceCheckUtils]: 19: Hoare triple {14992#(< ~counter~0 45)} call __VERIFIER_assert((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-28 06:00:00,935 INFO L290 TraceCheckUtils]: 18: Hoare triple {14992#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {14992#(< ~counter~0 45)} is VALID [2022-04-28 06:00:00,935 INFO L290 TraceCheckUtils]: 17: Hoare triple {15017#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14992#(< ~counter~0 45)} is VALID [2022-04-28 06:00:00,936 INFO L290 TraceCheckUtils]: 16: Hoare triple {15017#(< ~counter~0 44)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {15017#(< ~counter~0 44)} is VALID [2022-04-28 06:00:00,936 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14628#true} {15017#(< ~counter~0 44)} #92#return; {15017#(< ~counter~0 44)} is VALID [2022-04-28 06:00:00,936 INFO L290 TraceCheckUtils]: 14: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-28 06:00:00,936 INFO L290 TraceCheckUtils]: 13: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-28 06:00:00,936 INFO L290 TraceCheckUtils]: 12: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-28 06:00:00,936 INFO L272 TraceCheckUtils]: 11: Hoare triple {15017#(< ~counter~0 44)} 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-28 06:00:00,937 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14628#true} {15017#(< ~counter~0 44)} #90#return; {15017#(< ~counter~0 44)} is VALID [2022-04-28 06:00:00,937 INFO L290 TraceCheckUtils]: 9: Hoare triple {14628#true} assume true; {14628#true} is VALID [2022-04-28 06:00:00,937 INFO L290 TraceCheckUtils]: 8: Hoare triple {14628#true} assume !(0 == ~cond); {14628#true} is VALID [2022-04-28 06:00:00,937 INFO L290 TraceCheckUtils]: 7: Hoare triple {14628#true} ~cond := #in~cond; {14628#true} is VALID [2022-04-28 06:00:00,937 INFO L272 TraceCheckUtils]: 6: Hoare triple {15017#(< ~counter~0 44)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {14628#true} is VALID [2022-04-28 06:00:00,937 INFO L290 TraceCheckUtils]: 5: Hoare triple {15017#(< ~counter~0 44)} 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 44)} is VALID [2022-04-28 06:00:00,938 INFO L272 TraceCheckUtils]: 4: Hoare triple {15017#(< ~counter~0 44)} call #t~ret9 := main(); {15017#(< ~counter~0 44)} is VALID [2022-04-28 06:00:00,938 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15017#(< ~counter~0 44)} {14628#true} #102#return; {15017#(< ~counter~0 44)} is VALID [2022-04-28 06:00:00,938 INFO L290 TraceCheckUtils]: 2: Hoare triple {15017#(< ~counter~0 44)} assume true; {15017#(< ~counter~0 44)} is VALID [2022-04-28 06:00:00,939 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 44)} is VALID [2022-04-28 06:00:00,939 INFO L272 TraceCheckUtils]: 0: Hoare triple {14628#true} call ULTIMATE.init(); {14628#true} is VALID [2022-04-28 06:00:00,939 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-28 06:00:00,939 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:00:00,939 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [857979718] [2022-04-28 06:00:00,939 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:00:00,939 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [373727135] [2022-04-28 06:00:00,939 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [373727135] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:00:00,940 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:00:00,940 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-28 06:00:00,940 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:00:00,940 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2029347478] [2022-04-28 06:00:00,940 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2029347478] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:00:00,940 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:00:00,940 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 06:00:00,940 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [800781814] [2022-04-28 06:00:00,940 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:00:00,940 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-28 06:00:00,941 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:00:00,941 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-28 06:00:00,987 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:00,987 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 06:00:00,987 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:00,987 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 06:00:00,987 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-28 06:00:00,988 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-28 06:00:01,381 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:01,381 INFO L93 Difference]: Finished difference Result 202 states and 256 transitions. [2022-04-28 06:00:01,381 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 06:00:01,381 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-28 06:00:01,381 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:00:01,381 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-28 06:00:01,383 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 135 transitions. [2022-04-28 06:00:01,383 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-28 06:00:01,384 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 135 transitions. [2022-04-28 06:00:01,384 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 135 transitions. [2022-04-28 06:00:01,486 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:01,488 INFO L225 Difference]: With dead ends: 202 [2022-04-28 06:00:01,488 INFO L226 Difference]: Without dead ends: 197 [2022-04-28 06:00:01,505 INFO L412 NwaCegarLoop]: 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-28 06:00:01,506 INFO L413 NwaCegarLoop]: 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-28 06:00:01,506 INFO L414 NwaCegarLoop]: 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-28 06:00:01,506 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-28 06:00:01,617 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 185. [2022-04-28 06:00:01,617 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:00:01,617 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-28 06:00:01,618 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-28 06:00:01,618 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-28 06:00:01,621 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:01,621 INFO L93 Difference]: Finished difference Result 197 states and 250 transitions. [2022-04-28 06:00:01,621 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 250 transitions. [2022-04-28 06:00:01,621 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:01,622 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:01,622 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-28 06:00:01,622 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-28 06:00:01,625 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:01,625 INFO L93 Difference]: Finished difference Result 197 states and 250 transitions. [2022-04-28 06:00:01,625 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 250 transitions. [2022-04-28 06:00:01,625 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:01,625 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:01,625 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:00:01,625 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:00:01,626 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-28 06:00:01,629 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 185 states to 185 states and 235 transitions. [2022-04-28 06:00:01,629 INFO L78 Accepts]: Start accepts. Automaton has 185 states and 235 transitions. Word has length 71 [2022-04-28 06:00:01,629 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:00:01,629 INFO L495 AbstractCegarLoop]: Abstraction has 185 states and 235 transitions. [2022-04-28 06:00:01,630 INFO L496 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-28 06:00:01,630 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 185 states and 235 transitions. [2022-04-28 06:00:13,733 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-28 06:00:13,733 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 235 transitions. [2022-04-28 06:00:13,734 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2022-04-28 06:00:13,734 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:00:13,734 INFO L195 NwaCegarLoop]: 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-28 06:00:13,757 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-04-28 06:00:13,936 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-28 06:00:13,936 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:00:13,936 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:00:13,937 INFO L85 PathProgramCache]: Analyzing trace with hash -15963768, now seen corresponding path program 1 times [2022-04-28 06:00:13,937 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:13,937 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [124698556] [2022-04-28 06:00:13,937 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:00:13,937 INFO L85 PathProgramCache]: Analyzing trace with hash -15963768, now seen corresponding path program 2 times [2022-04-28 06:00:13,937 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:00:13,937 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1637343533] [2022-04-28 06:00:13,937 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:00:13,937 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:00:13,954 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:00:13,955 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1925141327] [2022-04-28 06:00:13,955 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:00:13,955 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:00:13,955 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:00:13,956 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:00:13,959 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-28 06:00:14,004 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:00:14,005 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:00:14,005 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 3 conjunts are in the unsatisfiable core [2022-04-28 06:00:14,014 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:00:14,031 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:00:14,254 INFO L272 TraceCheckUtils]: 0: Hoare triple {16245#true} call ULTIMATE.init(); {16245#true} is VALID [2022-04-28 06:00:14,254 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-28 06:00:14,254 INFO L290 TraceCheckUtils]: 2: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-28 06:00:14,254 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16245#true} {16245#true} #102#return; {16245#true} is VALID [2022-04-28 06:00:14,254 INFO L272 TraceCheckUtils]: 4: Hoare triple {16245#true} call #t~ret9 := main(); {16245#true} is VALID [2022-04-28 06:00:14,254 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-28 06:00:14,254 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-28 06:00:14,254 INFO L290 TraceCheckUtils]: 7: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-28 06:00:14,254 INFO L290 TraceCheckUtils]: 8: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-28 06:00:14,254 INFO L290 TraceCheckUtils]: 9: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-28 06:00:14,255 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16245#true} {16245#true} #90#return; {16245#true} is VALID [2022-04-28 06:00:14,255 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-28 06:00:14,255 INFO L290 TraceCheckUtils]: 12: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-28 06:00:14,255 INFO L290 TraceCheckUtils]: 13: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-28 06:00:14,255 INFO L290 TraceCheckUtils]: 14: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-28 06:00:14,255 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16245#true} {16245#true} #92#return; {16245#true} is VALID [2022-04-28 06:00:14,255 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-28 06:00:14,255 INFO L290 TraceCheckUtils]: 17: Hoare triple {16245#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16245#true} is VALID [2022-04-28 06:00:14,255 INFO L290 TraceCheckUtils]: 18: Hoare triple {16245#true} assume !!(#t~post6 < 50);havoc #t~post6; {16245#true} is VALID [2022-04-28 06:00:14,255 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-28 06:00:14,255 INFO L290 TraceCheckUtils]: 20: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-28 06:00:14,255 INFO L290 TraceCheckUtils]: 21: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-28 06:00:14,255 INFO L290 TraceCheckUtils]: 22: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-28 06:00:14,255 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {16245#true} {16245#true} #94#return; {16245#true} is VALID [2022-04-28 06:00:14,255 INFO L290 TraceCheckUtils]: 24: Hoare triple {16245#true} assume !!(0 != ~r~0); {16245#true} is VALID [2022-04-28 06:00:14,256 INFO L290 TraceCheckUtils]: 25: Hoare triple {16245#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16245#true} is VALID [2022-04-28 06:00:14,256 INFO L290 TraceCheckUtils]: 26: Hoare triple {16245#true} assume !!(#t~post7 < 50);havoc #t~post7; {16245#true} is VALID [2022-04-28 06:00:14,256 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-28 06:00:14,256 INFO L290 TraceCheckUtils]: 28: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-28 06:00:14,256 INFO L290 TraceCheckUtils]: 29: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-28 06:00:14,256 INFO L290 TraceCheckUtils]: 30: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-28 06:00:14,256 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {16245#true} {16245#true} #96#return; {16245#true} is VALID [2022-04-28 06:00:14,256 INFO L290 TraceCheckUtils]: 32: Hoare triple {16245#true} assume !(~r~0 > 0); {16245#true} is VALID [2022-04-28 06:00:14,256 INFO L290 TraceCheckUtils]: 33: Hoare triple {16245#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16245#true} is VALID [2022-04-28 06:00:14,256 INFO L290 TraceCheckUtils]: 34: Hoare triple {16245#true} assume !!(#t~post8 < 50);havoc #t~post8; {16245#true} is VALID [2022-04-28 06:00:14,256 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-28 06:00:14,256 INFO L290 TraceCheckUtils]: 36: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-28 06:00:14,256 INFO L290 TraceCheckUtils]: 37: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-28 06:00:14,256 INFO L290 TraceCheckUtils]: 38: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-28 06:00:14,257 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {16245#true} {16245#true} #98#return; {16245#true} is VALID [2022-04-28 06:00:14,257 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-28 06:00:14,257 INFO L290 TraceCheckUtils]: 41: Hoare triple {16245#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16245#true} is VALID [2022-04-28 06:00:14,257 INFO L290 TraceCheckUtils]: 42: Hoare triple {16245#true} assume !!(#t~post8 < 50);havoc #t~post8; {16245#true} is VALID [2022-04-28 06:00:14,257 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-28 06:00:14,257 INFO L290 TraceCheckUtils]: 44: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-28 06:00:14,257 INFO L290 TraceCheckUtils]: 45: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-28 06:00:14,257 INFO L290 TraceCheckUtils]: 46: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-28 06:00:14,257 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {16245#true} {16245#true} #98#return; {16245#true} is VALID [2022-04-28 06:00:14,257 INFO L290 TraceCheckUtils]: 48: Hoare triple {16245#true} assume !(~r~0 < 0); {16394#(not (< main_~r~0 0))} is VALID [2022-04-28 06:00:14,258 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-28 06:00:14,258 INFO L290 TraceCheckUtils]: 50: Hoare triple {16394#(not (< main_~r~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {16394#(not (< main_~r~0 0))} is VALID [2022-04-28 06:00:14,258 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-28 06:00:14,258 INFO L290 TraceCheckUtils]: 52: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-28 06:00:14,258 INFO L290 TraceCheckUtils]: 53: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-28 06:00:14,258 INFO L290 TraceCheckUtils]: 54: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-28 06:00:14,259 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-28 06:00:14,259 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-28 06:00:14,260 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-28 06:00:14,260 INFO L290 TraceCheckUtils]: 58: Hoare triple {16419#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} assume !!(#t~post7 < 50);havoc #t~post7; {16419#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} is VALID [2022-04-28 06:00:14,260 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-28 06:00:14,260 INFO L290 TraceCheckUtils]: 60: Hoare triple {16245#true} ~cond := #in~cond; {16245#true} is VALID [2022-04-28 06:00:14,260 INFO L290 TraceCheckUtils]: 61: Hoare triple {16245#true} assume !(0 == ~cond); {16245#true} is VALID [2022-04-28 06:00:14,260 INFO L290 TraceCheckUtils]: 62: Hoare triple {16245#true} assume true; {16245#true} is VALID [2022-04-28 06:00:14,261 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-28 06:00:14,261 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-28 06:00:14,261 INFO L290 TraceCheckUtils]: 65: Hoare triple {16246#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16246#false} is VALID [2022-04-28 06:00:14,261 INFO L290 TraceCheckUtils]: 66: Hoare triple {16246#false} assume !(#t~post8 < 50);havoc #t~post8; {16246#false} is VALID [2022-04-28 06:00:14,261 INFO L290 TraceCheckUtils]: 67: Hoare triple {16246#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16246#false} is VALID [2022-04-28 06:00:14,261 INFO L290 TraceCheckUtils]: 68: Hoare triple {16246#false} assume !(#t~post6 < 50);havoc #t~post6; {16246#false} is VALID [2022-04-28 06:00:14,261 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-28 06:00:14,261 INFO L290 TraceCheckUtils]: 70: Hoare triple {16246#false} ~cond := #in~cond; {16246#false} is VALID [2022-04-28 06:00:14,262 INFO L290 TraceCheckUtils]: 71: Hoare triple {16246#false} assume 0 == ~cond; {16246#false} is VALID [2022-04-28 06:00:14,262 INFO L290 TraceCheckUtils]: 72: Hoare triple {16246#false} assume !false; {16246#false} is VALID [2022-04-28 06:00:14,262 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-28 06:00:14,262 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 06:00:14,262 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:00:14,262 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1637343533] [2022-04-28 06:00:14,262 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:00:14,262 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1925141327] [2022-04-28 06:00:14,262 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1925141327] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:00:14,262 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:00:14,262 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 06:00:14,263 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:00:14,263 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [124698556] [2022-04-28 06:00:14,263 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [124698556] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:00:14,263 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:00:14,263 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 06:00:14,263 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1986646502] [2022-04-28 06:00:14,263 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:00:14,263 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-28 06:00:14,264 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:00:14,264 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-28 06:00:14,299 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:14,299 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 06:00:14,299 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:14,299 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 06:00:14,299 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-28 06:00:14,299 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-28 06:00:14,581 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:14,582 INFO L93 Difference]: Finished difference Result 284 states and 382 transitions. [2022-04-28 06:00:14,582 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 06:00:14,582 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-28 06:00:14,582 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:00:14,582 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-28 06:00:14,583 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 94 transitions. [2022-04-28 06:00:14,583 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-28 06:00:14,584 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 94 transitions. [2022-04-28 06:00:14,584 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 94 transitions. [2022-04-28 06:00:14,649 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-28 06:00:14,653 INFO L225 Difference]: With dead ends: 284 [2022-04-28 06:00:14,653 INFO L226 Difference]: Without dead ends: 219 [2022-04-28 06:00:14,653 INFO L412 NwaCegarLoop]: 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-28 06:00:14,653 INFO L413 NwaCegarLoop]: 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-28 06:00:14,654 INFO L414 NwaCegarLoop]: 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-28 06:00:14,654 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 219 states. [2022-04-28 06:00:14,873 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 219 to 208. [2022-04-28 06:00:14,873 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:00:14,873 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-28 06:00:14,874 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-28 06:00:14,874 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-28 06:00:14,877 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:14,877 INFO L93 Difference]: Finished difference Result 219 states and 285 transitions. [2022-04-28 06:00:14,877 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 285 transitions. [2022-04-28 06:00:14,878 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:14,878 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:14,878 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-28 06:00:14,878 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-28 06:00:14,898 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:14,898 INFO L93 Difference]: Finished difference Result 219 states and 285 transitions. [2022-04-28 06:00:14,898 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 285 transitions. [2022-04-28 06:00:14,899 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:14,899 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:14,899 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:00:14,899 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:00:14,900 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-28 06:00:14,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 208 states to 208 states and 270 transitions. [2022-04-28 06:00:14,903 INFO L78 Accepts]: Start accepts. Automaton has 208 states and 270 transitions. Word has length 73 [2022-04-28 06:00:14,903 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:00:14,903 INFO L495 AbstractCegarLoop]: Abstraction has 208 states and 270 transitions. [2022-04-28 06:00:14,904 INFO L496 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-28 06:00:14,904 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 208 states and 270 transitions. [2022-04-28 06:00:25,428 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 270 edges. 267 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:25,429 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 270 transitions. [2022-04-28 06:00:25,429 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2022-04-28 06:00:25,429 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:00:25,430 INFO L195 NwaCegarLoop]: 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-28 06:00:25,457 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-28 06:00:25,630 WARN L477 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-28 06:00:25,630 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:00:25,630 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:00:25,630 INFO L85 PathProgramCache]: Analyzing trace with hash -1401128268, now seen corresponding path program 7 times [2022-04-28 06:00:25,631 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:25,631 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [212946191] [2022-04-28 06:00:25,631 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:00:25,631 INFO L85 PathProgramCache]: Analyzing trace with hash -1401128268, now seen corresponding path program 8 times [2022-04-28 06:00:25,631 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:00:25,631 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [981578417] [2022-04-28 06:00:25,631 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:00:25,631 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:00:25,649 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:00:25,650 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1686422870] [2022-04-28 06:00:25,650 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:00:25,650 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:00:25,650 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:00:25,655 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:00:25,668 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-28 06:00:25,704 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:00:25,704 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:00:25,705 INFO L263 TraceCheckSpWp]: Trace formula consists of 204 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 06:00:25,719 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:00:25,720 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:00:26,162 INFO L272 TraceCheckUtils]: 0: Hoare triple {17889#true} call ULTIMATE.init(); {17889#true} is VALID [2022-04-28 06:00:26,163 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-28 06:00:26,163 INFO L290 TraceCheckUtils]: 2: Hoare triple {17897#(<= ~counter~0 0)} assume true; {17897#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:26,163 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17897#(<= ~counter~0 0)} {17889#true} #102#return; {17897#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:26,164 INFO L272 TraceCheckUtils]: 4: Hoare triple {17897#(<= ~counter~0 0)} call #t~ret9 := main(); {17897#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:26,164 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-28 06:00:26,165 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-28 06:00:26,165 INFO L290 TraceCheckUtils]: 7: Hoare triple {17897#(<= ~counter~0 0)} ~cond := #in~cond; {17897#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:26,165 INFO L290 TraceCheckUtils]: 8: Hoare triple {17897#(<= ~counter~0 0)} assume !(0 == ~cond); {17897#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:26,166 INFO L290 TraceCheckUtils]: 9: Hoare triple {17897#(<= ~counter~0 0)} assume true; {17897#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:26,166 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17897#(<= ~counter~0 0)} {17897#(<= ~counter~0 0)} #90#return; {17897#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:26,166 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-28 06:00:26,167 INFO L290 TraceCheckUtils]: 12: Hoare triple {17897#(<= ~counter~0 0)} ~cond := #in~cond; {17897#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:26,167 INFO L290 TraceCheckUtils]: 13: Hoare triple {17897#(<= ~counter~0 0)} assume !(0 == ~cond); {17897#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:26,167 INFO L290 TraceCheckUtils]: 14: Hoare triple {17897#(<= ~counter~0 0)} assume true; {17897#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:26,168 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17897#(<= ~counter~0 0)} {17897#(<= ~counter~0 0)} #92#return; {17897#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:26,168 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-28 06:00:26,169 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-28 06:00:26,169 INFO L290 TraceCheckUtils]: 18: Hoare triple {17946#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {17946#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:26,170 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-28 06:00:26,170 INFO L290 TraceCheckUtils]: 20: Hoare triple {17946#(<= ~counter~0 1)} ~cond := #in~cond; {17946#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:26,171 INFO L290 TraceCheckUtils]: 21: Hoare triple {17946#(<= ~counter~0 1)} assume !(0 == ~cond); {17946#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:26,171 INFO L290 TraceCheckUtils]: 22: Hoare triple {17946#(<= ~counter~0 1)} assume true; {17946#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:26,171 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {17946#(<= ~counter~0 1)} {17946#(<= ~counter~0 1)} #94#return; {17946#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:26,172 INFO L290 TraceCheckUtils]: 24: Hoare triple {17946#(<= ~counter~0 1)} assume !!(0 != ~r~0); {17946#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:26,172 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-28 06:00:26,173 INFO L290 TraceCheckUtils]: 26: Hoare triple {17971#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {17971#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:26,173 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-28 06:00:26,174 INFO L290 TraceCheckUtils]: 28: Hoare triple {17971#(<= ~counter~0 2)} ~cond := #in~cond; {17971#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:26,174 INFO L290 TraceCheckUtils]: 29: Hoare triple {17971#(<= ~counter~0 2)} assume !(0 == ~cond); {17971#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:26,174 INFO L290 TraceCheckUtils]: 30: Hoare triple {17971#(<= ~counter~0 2)} assume true; {17971#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:26,175 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {17971#(<= ~counter~0 2)} {17971#(<= ~counter~0 2)} #96#return; {17971#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:26,175 INFO L290 TraceCheckUtils]: 32: Hoare triple {17971#(<= ~counter~0 2)} assume !(~r~0 > 0); {17971#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:26,176 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-28 06:00:26,176 INFO L290 TraceCheckUtils]: 34: Hoare triple {17996#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {17996#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:26,177 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-28 06:00:26,177 INFO L290 TraceCheckUtils]: 36: Hoare triple {17996#(<= ~counter~0 3)} ~cond := #in~cond; {17996#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:26,177 INFO L290 TraceCheckUtils]: 37: Hoare triple {17996#(<= ~counter~0 3)} assume !(0 == ~cond); {17996#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:26,177 INFO L290 TraceCheckUtils]: 38: Hoare triple {17996#(<= ~counter~0 3)} assume true; {17996#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:26,178 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {17996#(<= ~counter~0 3)} {17996#(<= ~counter~0 3)} #98#return; {17996#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:26,178 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-28 06:00:26,179 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-28 06:00:26,179 INFO L290 TraceCheckUtils]: 42: Hoare triple {18021#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {18021#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:26,180 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-28 06:00:26,180 INFO L290 TraceCheckUtils]: 44: Hoare triple {18021#(<= ~counter~0 4)} ~cond := #in~cond; {18021#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:26,180 INFO L290 TraceCheckUtils]: 45: Hoare triple {18021#(<= ~counter~0 4)} assume !(0 == ~cond); {18021#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:26,181 INFO L290 TraceCheckUtils]: 46: Hoare triple {18021#(<= ~counter~0 4)} assume true; {18021#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:26,181 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {18021#(<= ~counter~0 4)} {18021#(<= ~counter~0 4)} #98#return; {18021#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:26,182 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-28 06:00:26,182 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-28 06:00:26,182 INFO L290 TraceCheckUtils]: 50: Hoare triple {18046#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {18046#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:26,183 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-28 06:00:26,183 INFO L290 TraceCheckUtils]: 52: Hoare triple {18046#(<= ~counter~0 5)} ~cond := #in~cond; {18046#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:26,183 INFO L290 TraceCheckUtils]: 53: Hoare triple {18046#(<= ~counter~0 5)} assume !(0 == ~cond); {18046#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:26,184 INFO L290 TraceCheckUtils]: 54: Hoare triple {18046#(<= ~counter~0 5)} assume true; {18046#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:26,184 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {18046#(<= ~counter~0 5)} {18046#(<= ~counter~0 5)} #98#return; {18046#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:26,185 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-28 06:00:26,185 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-28 06:00:26,185 INFO L290 TraceCheckUtils]: 58: Hoare triple {18071#(<= ~counter~0 6)} assume !!(#t~post8 < 50);havoc #t~post8; {18071#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:26,186 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-28 06:00:26,186 INFO L290 TraceCheckUtils]: 60: Hoare triple {18071#(<= ~counter~0 6)} ~cond := #in~cond; {18071#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:26,186 INFO L290 TraceCheckUtils]: 61: Hoare triple {18071#(<= ~counter~0 6)} assume !(0 == ~cond); {18071#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:26,187 INFO L290 TraceCheckUtils]: 62: Hoare triple {18071#(<= ~counter~0 6)} assume true; {18071#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:26,187 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {18071#(<= ~counter~0 6)} {18071#(<= ~counter~0 6)} #98#return; {18071#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:26,187 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-28 06:00:26,188 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-28 06:00:26,188 INFO L290 TraceCheckUtils]: 66: Hoare triple {18096#(<= |main_#t~post8| 6)} assume !(#t~post8 < 50);havoc #t~post8; {17890#false} is VALID [2022-04-28 06:00:26,188 INFO L290 TraceCheckUtils]: 67: Hoare triple {17890#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17890#false} is VALID [2022-04-28 06:00:26,188 INFO L290 TraceCheckUtils]: 68: Hoare triple {17890#false} assume !(#t~post6 < 50);havoc #t~post6; {17890#false} is VALID [2022-04-28 06:00:26,188 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-28 06:00:26,188 INFO L290 TraceCheckUtils]: 70: Hoare triple {17890#false} ~cond := #in~cond; {17890#false} is VALID [2022-04-28 06:00:26,188 INFO L290 TraceCheckUtils]: 71: Hoare triple {17890#false} assume 0 == ~cond; {17890#false} is VALID [2022-04-28 06:00:26,189 INFO L290 TraceCheckUtils]: 72: Hoare triple {17890#false} assume !false; {17890#false} is VALID [2022-04-28 06:00:26,189 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-28 06:00:26,189 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:00:26,581 INFO L290 TraceCheckUtils]: 72: Hoare triple {17890#false} assume !false; {17890#false} is VALID [2022-04-28 06:00:26,581 INFO L290 TraceCheckUtils]: 71: Hoare triple {17890#false} assume 0 == ~cond; {17890#false} is VALID [2022-04-28 06:00:26,581 INFO L290 TraceCheckUtils]: 70: Hoare triple {17890#false} ~cond := #in~cond; {17890#false} is VALID [2022-04-28 06:00:26,581 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-28 06:00:26,581 INFO L290 TraceCheckUtils]: 68: Hoare triple {17890#false} assume !(#t~post6 < 50);havoc #t~post6; {17890#false} is VALID [2022-04-28 06:00:26,581 INFO L290 TraceCheckUtils]: 67: Hoare triple {17890#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17890#false} is VALID [2022-04-28 06:00:26,582 INFO L290 TraceCheckUtils]: 66: Hoare triple {18136#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {17890#false} is VALID [2022-04-28 06:00:26,582 INFO L290 TraceCheckUtils]: 65: Hoare triple {18140#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18136#(< |main_#t~post8| 50)} is VALID [2022-04-28 06:00:26,582 INFO L290 TraceCheckUtils]: 64: Hoare triple {18140#(< ~counter~0 50)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18140#(< ~counter~0 50)} is VALID [2022-04-28 06:00:26,583 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {17889#true} {18140#(< ~counter~0 50)} #98#return; {18140#(< ~counter~0 50)} is VALID [2022-04-28 06:00:26,583 INFO L290 TraceCheckUtils]: 62: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-28 06:00:26,583 INFO L290 TraceCheckUtils]: 61: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-28 06:00:26,583 INFO L290 TraceCheckUtils]: 60: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-28 06:00:26,583 INFO L272 TraceCheckUtils]: 59: Hoare triple {18140#(< ~counter~0 50)} call __VERIFIER_assert((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-28 06:00:26,583 INFO L290 TraceCheckUtils]: 58: Hoare triple {18140#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {18140#(< ~counter~0 50)} is VALID [2022-04-28 06:00:26,584 INFO L290 TraceCheckUtils]: 57: Hoare triple {18165#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18140#(< ~counter~0 50)} is VALID [2022-04-28 06:00:26,584 INFO L290 TraceCheckUtils]: 56: Hoare triple {18165#(< ~counter~0 49)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18165#(< ~counter~0 49)} is VALID [2022-04-28 06:00:26,585 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {17889#true} {18165#(< ~counter~0 49)} #98#return; {18165#(< ~counter~0 49)} is VALID [2022-04-28 06:00:26,585 INFO L290 TraceCheckUtils]: 54: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-28 06:00:26,585 INFO L290 TraceCheckUtils]: 53: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-28 06:00:26,585 INFO L290 TraceCheckUtils]: 52: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-28 06:00:26,585 INFO L272 TraceCheckUtils]: 51: Hoare triple {18165#(< ~counter~0 49)} call __VERIFIER_assert((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-28 06:00:26,585 INFO L290 TraceCheckUtils]: 50: Hoare triple {18165#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {18165#(< ~counter~0 49)} is VALID [2022-04-28 06:00:26,586 INFO L290 TraceCheckUtils]: 49: Hoare triple {18190#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18165#(< ~counter~0 49)} is VALID [2022-04-28 06:00:26,586 INFO L290 TraceCheckUtils]: 48: Hoare triple {18190#(< ~counter~0 48)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18190#(< ~counter~0 48)} is VALID [2022-04-28 06:00:26,587 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {17889#true} {18190#(< ~counter~0 48)} #98#return; {18190#(< ~counter~0 48)} is VALID [2022-04-28 06:00:26,587 INFO L290 TraceCheckUtils]: 46: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-28 06:00:26,587 INFO L290 TraceCheckUtils]: 45: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-28 06:00:26,587 INFO L290 TraceCheckUtils]: 44: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-28 06:00:26,587 INFO L272 TraceCheckUtils]: 43: Hoare triple {18190#(< ~counter~0 48)} call __VERIFIER_assert((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-28 06:00:26,587 INFO L290 TraceCheckUtils]: 42: Hoare triple {18190#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {18190#(< ~counter~0 48)} is VALID [2022-04-28 06:00:26,588 INFO L290 TraceCheckUtils]: 41: Hoare triple {18215#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18190#(< ~counter~0 48)} is VALID [2022-04-28 06:00:26,588 INFO L290 TraceCheckUtils]: 40: Hoare triple {18215#(< ~counter~0 47)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18215#(< ~counter~0 47)} is VALID [2022-04-28 06:00:26,588 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {17889#true} {18215#(< ~counter~0 47)} #98#return; {18215#(< ~counter~0 47)} is VALID [2022-04-28 06:00:26,588 INFO L290 TraceCheckUtils]: 38: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-28 06:00:26,589 INFO L290 TraceCheckUtils]: 37: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-28 06:00:26,589 INFO L290 TraceCheckUtils]: 36: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-28 06:00:26,589 INFO L272 TraceCheckUtils]: 35: Hoare triple {18215#(< ~counter~0 47)} call __VERIFIER_assert((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-28 06:00:26,589 INFO L290 TraceCheckUtils]: 34: Hoare triple {18215#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {18215#(< ~counter~0 47)} is VALID [2022-04-28 06:00:26,589 INFO L290 TraceCheckUtils]: 33: Hoare triple {18240#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18215#(< ~counter~0 47)} is VALID [2022-04-28 06:00:26,590 INFO L290 TraceCheckUtils]: 32: Hoare triple {18240#(< ~counter~0 46)} assume !(~r~0 > 0); {18240#(< ~counter~0 46)} is VALID [2022-04-28 06:00:26,590 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {17889#true} {18240#(< ~counter~0 46)} #96#return; {18240#(< ~counter~0 46)} is VALID [2022-04-28 06:00:26,590 INFO L290 TraceCheckUtils]: 30: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-28 06:00:26,590 INFO L290 TraceCheckUtils]: 29: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-28 06:00:26,590 INFO L290 TraceCheckUtils]: 28: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-28 06:00:26,590 INFO L272 TraceCheckUtils]: 27: Hoare triple {18240#(< ~counter~0 46)} call __VERIFIER_assert((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-28 06:00:26,591 INFO L290 TraceCheckUtils]: 26: Hoare triple {18240#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {18240#(< ~counter~0 46)} is VALID [2022-04-28 06:00:26,591 INFO L290 TraceCheckUtils]: 25: Hoare triple {18265#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18240#(< ~counter~0 46)} is VALID [2022-04-28 06:00:26,591 INFO L290 TraceCheckUtils]: 24: Hoare triple {18265#(< ~counter~0 45)} assume !!(0 != ~r~0); {18265#(< ~counter~0 45)} is VALID [2022-04-28 06:00:26,592 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {17889#true} {18265#(< ~counter~0 45)} #94#return; {18265#(< ~counter~0 45)} is VALID [2022-04-28 06:00:26,592 INFO L290 TraceCheckUtils]: 22: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-28 06:00:26,592 INFO L290 TraceCheckUtils]: 21: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-28 06:00:26,592 INFO L290 TraceCheckUtils]: 20: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-28 06:00:26,592 INFO L272 TraceCheckUtils]: 19: Hoare triple {18265#(< ~counter~0 45)} call __VERIFIER_assert((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-28 06:00:26,593 INFO L290 TraceCheckUtils]: 18: Hoare triple {18265#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {18265#(< ~counter~0 45)} is VALID [2022-04-28 06:00:26,593 INFO L290 TraceCheckUtils]: 17: Hoare triple {18290#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18265#(< ~counter~0 45)} is VALID [2022-04-28 06:00:26,593 INFO L290 TraceCheckUtils]: 16: Hoare triple {18290#(< ~counter~0 44)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {18290#(< ~counter~0 44)} is VALID [2022-04-28 06:00:26,594 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17889#true} {18290#(< ~counter~0 44)} #92#return; {18290#(< ~counter~0 44)} is VALID [2022-04-28 06:00:26,594 INFO L290 TraceCheckUtils]: 14: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-28 06:00:26,594 INFO L290 TraceCheckUtils]: 13: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-28 06:00:26,594 INFO L290 TraceCheckUtils]: 12: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-28 06:00:26,594 INFO L272 TraceCheckUtils]: 11: Hoare triple {18290#(< ~counter~0 44)} 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-28 06:00:26,594 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17889#true} {18290#(< ~counter~0 44)} #90#return; {18290#(< ~counter~0 44)} is VALID [2022-04-28 06:00:26,594 INFO L290 TraceCheckUtils]: 9: Hoare triple {17889#true} assume true; {17889#true} is VALID [2022-04-28 06:00:26,595 INFO L290 TraceCheckUtils]: 8: Hoare triple {17889#true} assume !(0 == ~cond); {17889#true} is VALID [2022-04-28 06:00:26,595 INFO L290 TraceCheckUtils]: 7: Hoare triple {17889#true} ~cond := #in~cond; {17889#true} is VALID [2022-04-28 06:00:26,595 INFO L272 TraceCheckUtils]: 6: Hoare triple {18290#(< ~counter~0 44)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {17889#true} is VALID [2022-04-28 06:00:26,595 INFO L290 TraceCheckUtils]: 5: Hoare triple {18290#(< ~counter~0 44)} 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 44)} is VALID [2022-04-28 06:00:26,595 INFO L272 TraceCheckUtils]: 4: Hoare triple {18290#(< ~counter~0 44)} call #t~ret9 := main(); {18290#(< ~counter~0 44)} is VALID [2022-04-28 06:00:26,596 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18290#(< ~counter~0 44)} {17889#true} #102#return; {18290#(< ~counter~0 44)} is VALID [2022-04-28 06:00:26,596 INFO L290 TraceCheckUtils]: 2: Hoare triple {18290#(< ~counter~0 44)} assume true; {18290#(< ~counter~0 44)} is VALID [2022-04-28 06:00:26,596 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 44)} is VALID [2022-04-28 06:00:26,596 INFO L272 TraceCheckUtils]: 0: Hoare triple {17889#true} call ULTIMATE.init(); {17889#true} is VALID [2022-04-28 06:00:26,597 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-28 06:00:26,597 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:00:26,597 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [981578417] [2022-04-28 06:00:26,597 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:00:26,597 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1686422870] [2022-04-28 06:00:26,597 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1686422870] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:00:26,597 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:00:26,597 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-28 06:00:26,597 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:00:26,597 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [212946191] [2022-04-28 06:00:26,597 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [212946191] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:00:26,598 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:00:26,598 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 06:00:26,598 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [963679285] [2022-04-28 06:00:26,598 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:00:26,598 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-28 06:00:26,598 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:00:26,598 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-28 06:00:26,635 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:26,635 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 06:00:26,635 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:26,635 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 06:00:26,635 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-28 06:00:26,635 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-28 06:00:27,161 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:27,161 INFO L93 Difference]: Finished difference Result 307 states and 412 transitions. [2022-04-28 06:00:27,161 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 06:00:27,162 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-28 06:00:27,162 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:00:27,162 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-28 06:00:27,163 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 157 transitions. [2022-04-28 06:00:27,163 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-28 06:00:27,164 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 157 transitions. [2022-04-28 06:00:27,164 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 157 transitions. [2022-04-28 06:00:27,274 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-28 06:00:27,277 INFO L225 Difference]: With dead ends: 307 [2022-04-28 06:00:27,277 INFO L226 Difference]: Without dead ends: 219 [2022-04-28 06:00:27,278 INFO L412 NwaCegarLoop]: 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-28 06:00:27,278 INFO L413 NwaCegarLoop]: 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-28 06:00:27,278 INFO L414 NwaCegarLoop]: 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-28 06:00:27,279 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 219 states. [2022-04-28 06:00:27,477 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 219 to 213. [2022-04-28 06:00:27,478 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:00:27,478 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-28 06:00:27,478 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-28 06:00:27,479 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-28 06:00:27,482 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:27,482 INFO L93 Difference]: Finished difference Result 219 states and 282 transitions. [2022-04-28 06:00:27,482 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 282 transitions. [2022-04-28 06:00:27,482 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:27,482 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:27,482 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-28 06:00:27,483 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-28 06:00:27,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:27,486 INFO L93 Difference]: Finished difference Result 219 states and 282 transitions. [2022-04-28 06:00:27,486 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 282 transitions. [2022-04-28 06:00:27,486 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:27,486 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:27,486 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:00:27,486 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:00:27,486 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-28 06:00:27,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 213 states to 213 states and 276 transitions. [2022-04-28 06:00:27,489 INFO L78 Accepts]: Start accepts. Automaton has 213 states and 276 transitions. Word has length 73 [2022-04-28 06:00:27,490 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:00:27,490 INFO L495 AbstractCegarLoop]: Abstraction has 213 states and 276 transitions. [2022-04-28 06:00:27,490 INFO L496 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-28 06:00:27,490 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 213 states and 276 transitions. [2022-04-28 06:00:34,621 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 276 edges. 275 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:34,621 INFO L276 IsEmpty]: Start isEmpty. Operand 213 states and 276 transitions. [2022-04-28 06:00:34,622 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-28 06:00:34,622 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:00:34,622 INFO L195 NwaCegarLoop]: 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-28 06:00:34,648 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-04-28 06:00:34,822 WARN L477 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-28 06:00:34,822 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:00:34,823 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:00:34,823 INFO L85 PathProgramCache]: Analyzing trace with hash 1116733197, now seen corresponding path program 1 times [2022-04-28 06:00:34,823 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:34,823 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1400809299] [2022-04-28 06:00:34,823 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:00:34,823 INFO L85 PathProgramCache]: Analyzing trace with hash 1116733197, now seen corresponding path program 2 times [2022-04-28 06:00:34,823 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:00:34,823 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1928768074] [2022-04-28 06:00:34,823 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:00:34,824 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:00:34,833 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:00:34,833 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1983662266] [2022-04-28 06:00:34,833 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:00:34,833 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:00:34,834 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:00:34,846 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:00:34,890 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-28 06:00:34,902 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:00:34,903 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:00:34,903 INFO L263 TraceCheckSpWp]: Trace formula consists of 201 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 06:00:34,916 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:00:34,917 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:00:35,315 INFO L272 TraceCheckUtils]: 0: Hoare triple {19830#true} call ULTIMATE.init(); {19830#true} is VALID [2022-04-28 06:00:35,316 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-28 06:00:35,316 INFO L290 TraceCheckUtils]: 2: Hoare triple {19838#(<= ~counter~0 0)} assume true; {19838#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:35,316 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19838#(<= ~counter~0 0)} {19830#true} #102#return; {19838#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:35,317 INFO L272 TraceCheckUtils]: 4: Hoare triple {19838#(<= ~counter~0 0)} call #t~ret9 := main(); {19838#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:35,317 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-28 06:00:35,318 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-28 06:00:35,318 INFO L290 TraceCheckUtils]: 7: Hoare triple {19838#(<= ~counter~0 0)} ~cond := #in~cond; {19838#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:35,318 INFO L290 TraceCheckUtils]: 8: Hoare triple {19838#(<= ~counter~0 0)} assume !(0 == ~cond); {19838#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:35,318 INFO L290 TraceCheckUtils]: 9: Hoare triple {19838#(<= ~counter~0 0)} assume true; {19838#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:35,319 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19838#(<= ~counter~0 0)} {19838#(<= ~counter~0 0)} #90#return; {19838#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:35,319 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-28 06:00:35,319 INFO L290 TraceCheckUtils]: 12: Hoare triple {19838#(<= ~counter~0 0)} ~cond := #in~cond; {19838#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:35,320 INFO L290 TraceCheckUtils]: 13: Hoare triple {19838#(<= ~counter~0 0)} assume !(0 == ~cond); {19838#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:35,320 INFO L290 TraceCheckUtils]: 14: Hoare triple {19838#(<= ~counter~0 0)} assume true; {19838#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:35,320 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {19838#(<= ~counter~0 0)} {19838#(<= ~counter~0 0)} #92#return; {19838#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:35,321 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-28 06:00:35,322 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-28 06:00:35,322 INFO L290 TraceCheckUtils]: 18: Hoare triple {19887#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {19887#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:35,322 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-28 06:00:35,323 INFO L290 TraceCheckUtils]: 20: Hoare triple {19887#(<= ~counter~0 1)} ~cond := #in~cond; {19887#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:35,323 INFO L290 TraceCheckUtils]: 21: Hoare triple {19887#(<= ~counter~0 1)} assume !(0 == ~cond); {19887#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:35,323 INFO L290 TraceCheckUtils]: 22: Hoare triple {19887#(<= ~counter~0 1)} assume true; {19887#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:35,324 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {19887#(<= ~counter~0 1)} {19887#(<= ~counter~0 1)} #94#return; {19887#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:35,324 INFO L290 TraceCheckUtils]: 24: Hoare triple {19887#(<= ~counter~0 1)} assume !!(0 != ~r~0); {19887#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:35,324 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-28 06:00:35,325 INFO L290 TraceCheckUtils]: 26: Hoare triple {19912#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {19912#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:35,325 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-28 06:00:35,326 INFO L290 TraceCheckUtils]: 28: Hoare triple {19912#(<= ~counter~0 2)} ~cond := #in~cond; {19912#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:35,326 INFO L290 TraceCheckUtils]: 29: Hoare triple {19912#(<= ~counter~0 2)} assume !(0 == ~cond); {19912#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:35,326 INFO L290 TraceCheckUtils]: 30: Hoare triple {19912#(<= ~counter~0 2)} assume true; {19912#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:35,327 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {19912#(<= ~counter~0 2)} {19912#(<= ~counter~0 2)} #96#return; {19912#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:35,327 INFO L290 TraceCheckUtils]: 32: Hoare triple {19912#(<= ~counter~0 2)} assume !(~r~0 > 0); {19912#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:35,327 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-28 06:00:35,328 INFO L290 TraceCheckUtils]: 34: Hoare triple {19937#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {19937#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:35,328 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-28 06:00:35,328 INFO L290 TraceCheckUtils]: 36: Hoare triple {19937#(<= ~counter~0 3)} ~cond := #in~cond; {19937#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:35,329 INFO L290 TraceCheckUtils]: 37: Hoare triple {19937#(<= ~counter~0 3)} assume !(0 == ~cond); {19937#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:35,329 INFO L290 TraceCheckUtils]: 38: Hoare triple {19937#(<= ~counter~0 3)} assume true; {19937#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:35,329 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {19937#(<= ~counter~0 3)} {19937#(<= ~counter~0 3)} #98#return; {19937#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:35,330 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-28 06:00:35,330 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-28 06:00:35,331 INFO L290 TraceCheckUtils]: 42: Hoare triple {19962#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {19962#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:35,331 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-28 06:00:35,331 INFO L290 TraceCheckUtils]: 44: Hoare triple {19962#(<= ~counter~0 4)} ~cond := #in~cond; {19962#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:35,332 INFO L290 TraceCheckUtils]: 45: Hoare triple {19962#(<= ~counter~0 4)} assume !(0 == ~cond); {19962#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:35,332 INFO L290 TraceCheckUtils]: 46: Hoare triple {19962#(<= ~counter~0 4)} assume true; {19962#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:35,332 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {19962#(<= ~counter~0 4)} {19962#(<= ~counter~0 4)} #98#return; {19962#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:35,333 INFO L290 TraceCheckUtils]: 48: Hoare triple {19962#(<= ~counter~0 4)} assume !(~r~0 < 0); {19962#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:35,333 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-28 06:00:35,333 INFO L290 TraceCheckUtils]: 50: Hoare triple {19987#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {19987#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:35,334 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-28 06:00:35,334 INFO L290 TraceCheckUtils]: 52: Hoare triple {19987#(<= ~counter~0 5)} ~cond := #in~cond; {19987#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:35,334 INFO L290 TraceCheckUtils]: 53: Hoare triple {19987#(<= ~counter~0 5)} assume !(0 == ~cond); {19987#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:35,335 INFO L290 TraceCheckUtils]: 54: Hoare triple {19987#(<= ~counter~0 5)} assume true; {19987#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:35,335 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {19987#(<= ~counter~0 5)} {19987#(<= ~counter~0 5)} #94#return; {19987#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:35,336 INFO L290 TraceCheckUtils]: 56: Hoare triple {19987#(<= ~counter~0 5)} assume !!(0 != ~r~0); {19987#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:35,336 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-28 06:00:35,336 INFO L290 TraceCheckUtils]: 58: Hoare triple {20012#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {20012#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:35,337 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-28 06:00:35,337 INFO L290 TraceCheckUtils]: 60: Hoare triple {20012#(<= ~counter~0 6)} ~cond := #in~cond; {20012#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:35,337 INFO L290 TraceCheckUtils]: 61: Hoare triple {20012#(<= ~counter~0 6)} assume !(0 == ~cond); {20012#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:35,338 INFO L290 TraceCheckUtils]: 62: Hoare triple {20012#(<= ~counter~0 6)} assume true; {20012#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:35,338 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {20012#(<= ~counter~0 6)} {20012#(<= ~counter~0 6)} #96#return; {20012#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:35,338 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-28 06:00:35,339 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-28 06:00:35,339 INFO L290 TraceCheckUtils]: 66: Hoare triple {20037#(<= |main_#t~post7| 6)} assume !(#t~post7 < 50);havoc #t~post7; {19831#false} is VALID [2022-04-28 06:00:35,339 INFO L290 TraceCheckUtils]: 67: Hoare triple {19831#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {19831#false} is VALID [2022-04-28 06:00:35,339 INFO L290 TraceCheckUtils]: 68: Hoare triple {19831#false} assume !(#t~post8 < 50);havoc #t~post8; {19831#false} is VALID [2022-04-28 06:00:35,339 INFO L290 TraceCheckUtils]: 69: Hoare triple {19831#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19831#false} is VALID [2022-04-28 06:00:35,339 INFO L290 TraceCheckUtils]: 70: Hoare triple {19831#false} assume !(#t~post6 < 50);havoc #t~post6; {19831#false} is VALID [2022-04-28 06:00:35,340 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-28 06:00:35,340 INFO L290 TraceCheckUtils]: 72: Hoare triple {19831#false} ~cond := #in~cond; {19831#false} is VALID [2022-04-28 06:00:35,340 INFO L290 TraceCheckUtils]: 73: Hoare triple {19831#false} assume 0 == ~cond; {19831#false} is VALID [2022-04-28 06:00:35,340 INFO L290 TraceCheckUtils]: 74: Hoare triple {19831#false} assume !false; {19831#false} is VALID [2022-04-28 06:00:35,340 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-28 06:00:35,340 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:00:35,670 INFO L290 TraceCheckUtils]: 74: Hoare triple {19831#false} assume !false; {19831#false} is VALID [2022-04-28 06:00:35,670 INFO L290 TraceCheckUtils]: 73: Hoare triple {19831#false} assume 0 == ~cond; {19831#false} is VALID [2022-04-28 06:00:35,670 INFO L290 TraceCheckUtils]: 72: Hoare triple {19831#false} ~cond := #in~cond; {19831#false} is VALID [2022-04-28 06:00:35,670 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-28 06:00:35,670 INFO L290 TraceCheckUtils]: 70: Hoare triple {19831#false} assume !(#t~post6 < 50);havoc #t~post6; {19831#false} is VALID [2022-04-28 06:00:35,670 INFO L290 TraceCheckUtils]: 69: Hoare triple {19831#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19831#false} is VALID [2022-04-28 06:00:35,677 INFO L290 TraceCheckUtils]: 68: Hoare triple {19831#false} assume !(#t~post8 < 50);havoc #t~post8; {19831#false} is VALID [2022-04-28 06:00:35,677 INFO L290 TraceCheckUtils]: 67: Hoare triple {19831#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {19831#false} is VALID [2022-04-28 06:00:35,679 INFO L290 TraceCheckUtils]: 66: Hoare triple {20089#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {19831#false} is VALID [2022-04-28 06:00:35,679 INFO L290 TraceCheckUtils]: 65: Hoare triple {20093#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20089#(< |main_#t~post7| 50)} is VALID [2022-04-28 06:00:35,680 INFO L290 TraceCheckUtils]: 64: Hoare triple {20093#(< ~counter~0 50)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {20093#(< ~counter~0 50)} is VALID [2022-04-28 06:00:35,680 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {19830#true} {20093#(< ~counter~0 50)} #96#return; {20093#(< ~counter~0 50)} is VALID [2022-04-28 06:00:35,680 INFO L290 TraceCheckUtils]: 62: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-28 06:00:35,680 INFO L290 TraceCheckUtils]: 61: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-28 06:00:35,680 INFO L290 TraceCheckUtils]: 60: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-28 06:00:35,680 INFO L272 TraceCheckUtils]: 59: Hoare triple {20093#(< ~counter~0 50)} call __VERIFIER_assert((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-28 06:00:35,680 INFO L290 TraceCheckUtils]: 58: Hoare triple {20093#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {20093#(< ~counter~0 50)} is VALID [2022-04-28 06:00:35,681 INFO L290 TraceCheckUtils]: 57: Hoare triple {20118#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20093#(< ~counter~0 50)} is VALID [2022-04-28 06:00:35,681 INFO L290 TraceCheckUtils]: 56: Hoare triple {20118#(< ~counter~0 49)} assume !!(0 != ~r~0); {20118#(< ~counter~0 49)} is VALID [2022-04-28 06:00:35,682 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {19830#true} {20118#(< ~counter~0 49)} #94#return; {20118#(< ~counter~0 49)} is VALID [2022-04-28 06:00:35,682 INFO L290 TraceCheckUtils]: 54: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-28 06:00:35,682 INFO L290 TraceCheckUtils]: 53: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-28 06:00:35,682 INFO L290 TraceCheckUtils]: 52: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-28 06:00:35,682 INFO L272 TraceCheckUtils]: 51: Hoare triple {20118#(< ~counter~0 49)} call __VERIFIER_assert((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-28 06:00:35,682 INFO L290 TraceCheckUtils]: 50: Hoare triple {20118#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {20118#(< ~counter~0 49)} is VALID [2022-04-28 06:00:35,683 INFO L290 TraceCheckUtils]: 49: Hoare triple {20143#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20118#(< ~counter~0 49)} is VALID [2022-04-28 06:00:35,683 INFO L290 TraceCheckUtils]: 48: Hoare triple {20143#(< ~counter~0 48)} assume !(~r~0 < 0); {20143#(< ~counter~0 48)} is VALID [2022-04-28 06:00:35,683 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {19830#true} {20143#(< ~counter~0 48)} #98#return; {20143#(< ~counter~0 48)} is VALID [2022-04-28 06:00:35,683 INFO L290 TraceCheckUtils]: 46: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-28 06:00:35,684 INFO L290 TraceCheckUtils]: 45: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-28 06:00:35,684 INFO L290 TraceCheckUtils]: 44: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-28 06:00:35,684 INFO L272 TraceCheckUtils]: 43: Hoare triple {20143#(< ~counter~0 48)} call __VERIFIER_assert((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-28 06:00:35,684 INFO L290 TraceCheckUtils]: 42: Hoare triple {20143#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {20143#(< ~counter~0 48)} is VALID [2022-04-28 06:00:35,685 INFO L290 TraceCheckUtils]: 41: Hoare triple {20168#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {20143#(< ~counter~0 48)} is VALID [2022-04-28 06:00:35,685 INFO L290 TraceCheckUtils]: 40: Hoare triple {20168#(< ~counter~0 47)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {20168#(< ~counter~0 47)} is VALID [2022-04-28 06:00:35,685 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {19830#true} {20168#(< ~counter~0 47)} #98#return; {20168#(< ~counter~0 47)} is VALID [2022-04-28 06:00:35,685 INFO L290 TraceCheckUtils]: 38: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-28 06:00:35,685 INFO L290 TraceCheckUtils]: 37: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-28 06:00:35,685 INFO L290 TraceCheckUtils]: 36: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-28 06:00:35,685 INFO L272 TraceCheckUtils]: 35: Hoare triple {20168#(< ~counter~0 47)} call __VERIFIER_assert((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-28 06:00:35,686 INFO L290 TraceCheckUtils]: 34: Hoare triple {20168#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {20168#(< ~counter~0 47)} is VALID [2022-04-28 06:00:35,686 INFO L290 TraceCheckUtils]: 33: Hoare triple {20193#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {20168#(< ~counter~0 47)} is VALID [2022-04-28 06:00:35,686 INFO L290 TraceCheckUtils]: 32: Hoare triple {20193#(< ~counter~0 46)} assume !(~r~0 > 0); {20193#(< ~counter~0 46)} is VALID [2022-04-28 06:00:35,687 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {19830#true} {20193#(< ~counter~0 46)} #96#return; {20193#(< ~counter~0 46)} is VALID [2022-04-28 06:00:35,687 INFO L290 TraceCheckUtils]: 30: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-28 06:00:35,687 INFO L290 TraceCheckUtils]: 29: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-28 06:00:35,687 INFO L290 TraceCheckUtils]: 28: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-28 06:00:35,687 INFO L272 TraceCheckUtils]: 27: Hoare triple {20193#(< ~counter~0 46)} call __VERIFIER_assert((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-28 06:00:35,687 INFO L290 TraceCheckUtils]: 26: Hoare triple {20193#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {20193#(< ~counter~0 46)} is VALID [2022-04-28 06:00:35,687 INFO L290 TraceCheckUtils]: 25: Hoare triple {20218#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20193#(< ~counter~0 46)} is VALID [2022-04-28 06:00:35,688 INFO L290 TraceCheckUtils]: 24: Hoare triple {20218#(< ~counter~0 45)} assume !!(0 != ~r~0); {20218#(< ~counter~0 45)} is VALID [2022-04-28 06:00:35,688 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {19830#true} {20218#(< ~counter~0 45)} #94#return; {20218#(< ~counter~0 45)} is VALID [2022-04-28 06:00:35,688 INFO L290 TraceCheckUtils]: 22: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-28 06:00:35,688 INFO L290 TraceCheckUtils]: 21: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-28 06:00:35,688 INFO L290 TraceCheckUtils]: 20: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-28 06:00:35,688 INFO L272 TraceCheckUtils]: 19: Hoare triple {20218#(< ~counter~0 45)} call __VERIFIER_assert((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-28 06:00:35,689 INFO L290 TraceCheckUtils]: 18: Hoare triple {20218#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {20218#(< ~counter~0 45)} is VALID [2022-04-28 06:00:35,689 INFO L290 TraceCheckUtils]: 17: Hoare triple {20243#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20218#(< ~counter~0 45)} is VALID [2022-04-28 06:00:35,689 INFO L290 TraceCheckUtils]: 16: Hoare triple {20243#(< ~counter~0 44)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {20243#(< ~counter~0 44)} is VALID [2022-04-28 06:00:35,689 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {19830#true} {20243#(< ~counter~0 44)} #92#return; {20243#(< ~counter~0 44)} is VALID [2022-04-28 06:00:35,690 INFO L290 TraceCheckUtils]: 14: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-28 06:00:35,690 INFO L290 TraceCheckUtils]: 13: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-28 06:00:35,690 INFO L290 TraceCheckUtils]: 12: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-28 06:00:35,690 INFO L272 TraceCheckUtils]: 11: Hoare triple {20243#(< ~counter~0 44)} 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-28 06:00:35,690 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19830#true} {20243#(< ~counter~0 44)} #90#return; {20243#(< ~counter~0 44)} is VALID [2022-04-28 06:00:35,690 INFO L290 TraceCheckUtils]: 9: Hoare triple {19830#true} assume true; {19830#true} is VALID [2022-04-28 06:00:35,690 INFO L290 TraceCheckUtils]: 8: Hoare triple {19830#true} assume !(0 == ~cond); {19830#true} is VALID [2022-04-28 06:00:35,690 INFO L290 TraceCheckUtils]: 7: Hoare triple {19830#true} ~cond := #in~cond; {19830#true} is VALID [2022-04-28 06:00:35,690 INFO L272 TraceCheckUtils]: 6: Hoare triple {20243#(< ~counter~0 44)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {19830#true} is VALID [2022-04-28 06:00:35,691 INFO L290 TraceCheckUtils]: 5: Hoare triple {20243#(< ~counter~0 44)} 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 44)} is VALID [2022-04-28 06:00:35,691 INFO L272 TraceCheckUtils]: 4: Hoare triple {20243#(< ~counter~0 44)} call #t~ret9 := main(); {20243#(< ~counter~0 44)} is VALID [2022-04-28 06:00:35,691 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20243#(< ~counter~0 44)} {19830#true} #102#return; {20243#(< ~counter~0 44)} is VALID [2022-04-28 06:00:35,691 INFO L290 TraceCheckUtils]: 2: Hoare triple {20243#(< ~counter~0 44)} assume true; {20243#(< ~counter~0 44)} is VALID [2022-04-28 06:00:35,692 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 44)} is VALID [2022-04-28 06:00:35,692 INFO L272 TraceCheckUtils]: 0: Hoare triple {19830#true} call ULTIMATE.init(); {19830#true} is VALID [2022-04-28 06:00:35,692 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-28 06:00:35,692 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:00:35,692 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1928768074] [2022-04-28 06:00:35,692 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:00:35,693 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1983662266] [2022-04-28 06:00:35,693 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1983662266] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:00:35,693 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:00:35,693 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-28 06:00:35,693 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:00:35,693 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1400809299] [2022-04-28 06:00:35,693 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1400809299] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:00:35,693 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:00:35,693 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 06:00:35,693 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1426031923] [2022-04-28 06:00:35,693 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:00:35,695 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-28 06:00:35,695 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:00:35,695 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-28 06:00:35,729 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:35,729 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 06:00:35,730 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:35,730 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 06:00:35,730 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-28 06:00:35,734 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-28 06:00:36,222 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:36,222 INFO L93 Difference]: Finished difference Result 286 states and 378 transitions. [2022-04-28 06:00:36,222 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 06:00:36,222 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-28 06:00:36,235 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:00:36,235 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-28 06:00:36,236 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 157 transitions. [2022-04-28 06:00:36,237 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-28 06:00:36,238 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 157 transitions. [2022-04-28 06:00:36,238 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 157 transitions. [2022-04-28 06:00:36,317 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-28 06:00:36,320 INFO L225 Difference]: With dead ends: 286 [2022-04-28 06:00:36,320 INFO L226 Difference]: Without dead ends: 222 [2022-04-28 06:00:36,324 INFO L412 NwaCegarLoop]: 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-28 06:00:36,324 INFO L413 NwaCegarLoop]: 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-28 06:00:36,324 INFO L414 NwaCegarLoop]: 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-28 06:00:36,329 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 222 states. [2022-04-28 06:00:36,544 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 222 to 222. [2022-04-28 06:00:36,545 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:00:36,546 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-28 06:00:36,547 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-28 06:00:36,547 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-28 06:00:36,550 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:36,550 INFO L93 Difference]: Finished difference Result 222 states and 285 transitions. [2022-04-28 06:00:36,550 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 285 transitions. [2022-04-28 06:00:36,551 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:36,551 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:36,551 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-28 06:00:36,551 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-28 06:00:36,554 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:36,554 INFO L93 Difference]: Finished difference Result 222 states and 285 transitions. [2022-04-28 06:00:36,554 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 285 transitions. [2022-04-28 06:00:36,555 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:36,555 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:36,555 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:00:36,555 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:00:36,556 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-28 06:00:36,559 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 222 states to 222 states and 285 transitions. [2022-04-28 06:00:36,559 INFO L78 Accepts]: Start accepts. Automaton has 222 states and 285 transitions. Word has length 75 [2022-04-28 06:00:36,559 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:00:36,559 INFO L495 AbstractCegarLoop]: Abstraction has 222 states and 285 transitions. [2022-04-28 06:00:36,559 INFO L496 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-28 06:00:36,559 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 222 states and 285 transitions. [2022-04-28 06:00:43,904 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-28 06:00:43,905 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 285 transitions. [2022-04-28 06:00:43,905 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-28 06:00:43,905 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:00:43,906 INFO L195 NwaCegarLoop]: 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-28 06:00:43,924 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-28 06:00:44,106 WARN L477 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-28 06:00:44,106 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:00:44,106 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:00:44,107 INFO L85 PathProgramCache]: Analyzing trace with hash -1970775776, now seen corresponding path program 7 times [2022-04-28 06:00:44,107 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:44,107 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2029788481] [2022-04-28 06:00:44,107 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:00:44,107 INFO L85 PathProgramCache]: Analyzing trace with hash -1970775776, now seen corresponding path program 8 times [2022-04-28 06:00:44,107 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:00:44,107 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [832679814] [2022-04-28 06:00:44,107 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:00:44,107 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:00:44,119 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:00:44,119 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1358838867] [2022-04-28 06:00:44,119 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:00:44,119 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:00:44,119 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:00:44,133 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:00:44,171 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-28 06:00:44,184 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:00:44,184 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:00:44,185 INFO L263 TraceCheckSpWp]: Trace formula consists of 214 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 06:00:44,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:00:44,200 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:00:44,646 INFO L272 TraceCheckUtils]: 0: Hoare triple {21767#true} call ULTIMATE.init(); {21767#true} is VALID [2022-04-28 06:00:44,646 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-28 06:00:44,647 INFO L290 TraceCheckUtils]: 2: Hoare triple {21775#(<= ~counter~0 0)} assume true; {21775#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:44,647 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21775#(<= ~counter~0 0)} {21767#true} #102#return; {21775#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:44,647 INFO L272 TraceCheckUtils]: 4: Hoare triple {21775#(<= ~counter~0 0)} call #t~ret9 := main(); {21775#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:44,648 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-28 06:00:44,648 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-28 06:00:44,648 INFO L290 TraceCheckUtils]: 7: Hoare triple {21775#(<= ~counter~0 0)} ~cond := #in~cond; {21775#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:44,649 INFO L290 TraceCheckUtils]: 8: Hoare triple {21775#(<= ~counter~0 0)} assume !(0 == ~cond); {21775#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:44,649 INFO L290 TraceCheckUtils]: 9: Hoare triple {21775#(<= ~counter~0 0)} assume true; {21775#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:44,650 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21775#(<= ~counter~0 0)} {21775#(<= ~counter~0 0)} #90#return; {21775#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:44,650 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-28 06:00:44,650 INFO L290 TraceCheckUtils]: 12: Hoare triple {21775#(<= ~counter~0 0)} ~cond := #in~cond; {21775#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:44,651 INFO L290 TraceCheckUtils]: 13: Hoare triple {21775#(<= ~counter~0 0)} assume !(0 == ~cond); {21775#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:44,651 INFO L290 TraceCheckUtils]: 14: Hoare triple {21775#(<= ~counter~0 0)} assume true; {21775#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:44,651 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21775#(<= ~counter~0 0)} {21775#(<= ~counter~0 0)} #92#return; {21775#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:44,652 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-28 06:00:44,653 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-28 06:00:44,653 INFO L290 TraceCheckUtils]: 18: Hoare triple {21824#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {21824#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:44,654 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-28 06:00:44,654 INFO L290 TraceCheckUtils]: 20: Hoare triple {21824#(<= ~counter~0 1)} ~cond := #in~cond; {21824#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:44,654 INFO L290 TraceCheckUtils]: 21: Hoare triple {21824#(<= ~counter~0 1)} assume !(0 == ~cond); {21824#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:44,655 INFO L290 TraceCheckUtils]: 22: Hoare triple {21824#(<= ~counter~0 1)} assume true; {21824#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:44,655 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {21824#(<= ~counter~0 1)} {21824#(<= ~counter~0 1)} #94#return; {21824#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:44,655 INFO L290 TraceCheckUtils]: 24: Hoare triple {21824#(<= ~counter~0 1)} assume !!(0 != ~r~0); {21824#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:44,656 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-28 06:00:44,656 INFO L290 TraceCheckUtils]: 26: Hoare triple {21849#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {21849#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:44,657 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-28 06:00:44,657 INFO L290 TraceCheckUtils]: 28: Hoare triple {21849#(<= ~counter~0 2)} ~cond := #in~cond; {21849#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:44,657 INFO L290 TraceCheckUtils]: 29: Hoare triple {21849#(<= ~counter~0 2)} assume !(0 == ~cond); {21849#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:44,658 INFO L290 TraceCheckUtils]: 30: Hoare triple {21849#(<= ~counter~0 2)} assume true; {21849#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:44,658 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {21849#(<= ~counter~0 2)} {21849#(<= ~counter~0 2)} #96#return; {21849#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:44,659 INFO L290 TraceCheckUtils]: 32: Hoare triple {21849#(<= ~counter~0 2)} assume !(~r~0 > 0); {21849#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:44,659 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-28 06:00:44,659 INFO L290 TraceCheckUtils]: 34: Hoare triple {21874#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {21874#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:44,660 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-28 06:00:44,660 INFO L290 TraceCheckUtils]: 36: Hoare triple {21874#(<= ~counter~0 3)} ~cond := #in~cond; {21874#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:44,660 INFO L290 TraceCheckUtils]: 37: Hoare triple {21874#(<= ~counter~0 3)} assume !(0 == ~cond); {21874#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:44,661 INFO L290 TraceCheckUtils]: 38: Hoare triple {21874#(<= ~counter~0 3)} assume true; {21874#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:44,661 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {21874#(<= ~counter~0 3)} {21874#(<= ~counter~0 3)} #98#return; {21874#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:44,662 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-28 06:00:44,662 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-28 06:00:44,662 INFO L290 TraceCheckUtils]: 42: Hoare triple {21899#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {21899#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:44,663 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-28 06:00:44,663 INFO L290 TraceCheckUtils]: 44: Hoare triple {21899#(<= ~counter~0 4)} ~cond := #in~cond; {21899#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:44,663 INFO L290 TraceCheckUtils]: 45: Hoare triple {21899#(<= ~counter~0 4)} assume !(0 == ~cond); {21899#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:44,664 INFO L290 TraceCheckUtils]: 46: Hoare triple {21899#(<= ~counter~0 4)} assume true; {21899#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:44,664 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {21899#(<= ~counter~0 4)} {21899#(<= ~counter~0 4)} #98#return; {21899#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:44,664 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-28 06:00:44,665 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-28 06:00:44,665 INFO L290 TraceCheckUtils]: 50: Hoare triple {21924#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {21924#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:44,666 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-28 06:00:44,666 INFO L290 TraceCheckUtils]: 52: Hoare triple {21924#(<= ~counter~0 5)} ~cond := #in~cond; {21924#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:44,666 INFO L290 TraceCheckUtils]: 53: Hoare triple {21924#(<= ~counter~0 5)} assume !(0 == ~cond); {21924#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:44,667 INFO L290 TraceCheckUtils]: 54: Hoare triple {21924#(<= ~counter~0 5)} assume true; {21924#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:44,667 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {21924#(<= ~counter~0 5)} {21924#(<= ~counter~0 5)} #98#return; {21924#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:44,667 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-28 06:00:44,668 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-28 06:00:44,668 INFO L290 TraceCheckUtils]: 58: Hoare triple {21949#(<= ~counter~0 6)} assume !!(#t~post8 < 50);havoc #t~post8; {21949#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:44,669 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-28 06:00:44,669 INFO L290 TraceCheckUtils]: 60: Hoare triple {21949#(<= ~counter~0 6)} ~cond := #in~cond; {21949#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:44,669 INFO L290 TraceCheckUtils]: 61: Hoare triple {21949#(<= ~counter~0 6)} assume !(0 == ~cond); {21949#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:44,670 INFO L290 TraceCheckUtils]: 62: Hoare triple {21949#(<= ~counter~0 6)} assume true; {21949#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:44,670 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {21949#(<= ~counter~0 6)} {21949#(<= ~counter~0 6)} #98#return; {21949#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:44,670 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-28 06:00:44,671 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-28 06:00:44,671 INFO L290 TraceCheckUtils]: 66: Hoare triple {21974#(<= ~counter~0 7)} assume !!(#t~post8 < 50);havoc #t~post8; {21974#(<= ~counter~0 7)} is VALID [2022-04-28 06:00:44,685 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-28 06:00:44,685 INFO L290 TraceCheckUtils]: 68: Hoare triple {21974#(<= ~counter~0 7)} ~cond := #in~cond; {21974#(<= ~counter~0 7)} is VALID [2022-04-28 06:00:44,685 INFO L290 TraceCheckUtils]: 69: Hoare triple {21974#(<= ~counter~0 7)} assume !(0 == ~cond); {21974#(<= ~counter~0 7)} is VALID [2022-04-28 06:00:44,698 INFO L290 TraceCheckUtils]: 70: Hoare triple {21974#(<= ~counter~0 7)} assume true; {21974#(<= ~counter~0 7)} is VALID [2022-04-28 06:00:44,698 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {21974#(<= ~counter~0 7)} {21974#(<= ~counter~0 7)} #98#return; {21974#(<= ~counter~0 7)} is VALID [2022-04-28 06:00:44,699 INFO L290 TraceCheckUtils]: 72: Hoare triple {21974#(<= ~counter~0 7)} assume !(~r~0 < 0); {21974#(<= ~counter~0 7)} is VALID [2022-04-28 06:00:44,699 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-28 06:00:44,699 INFO L290 TraceCheckUtils]: 74: Hoare triple {21999#(<= |main_#t~post6| 7)} assume !(#t~post6 < 50);havoc #t~post6; {21768#false} is VALID [2022-04-28 06:00:44,700 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-28 06:00:44,700 INFO L290 TraceCheckUtils]: 76: Hoare triple {21768#false} ~cond := #in~cond; {21768#false} is VALID [2022-04-28 06:00:44,700 INFO L290 TraceCheckUtils]: 77: Hoare triple {21768#false} assume 0 == ~cond; {21768#false} is VALID [2022-04-28 06:00:44,700 INFO L290 TraceCheckUtils]: 78: Hoare triple {21768#false} assume !false; {21768#false} is VALID [2022-04-28 06:00:44,700 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-28 06:00:44,700 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:00:47,177 INFO L290 TraceCheckUtils]: 78: Hoare triple {21768#false} assume !false; {21768#false} is VALID [2022-04-28 06:00:47,177 INFO L290 TraceCheckUtils]: 77: Hoare triple {21768#false} assume 0 == ~cond; {21768#false} is VALID [2022-04-28 06:00:47,177 INFO L290 TraceCheckUtils]: 76: Hoare triple {21768#false} ~cond := #in~cond; {21768#false} is VALID [2022-04-28 06:00:47,177 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-28 06:00:47,177 INFO L290 TraceCheckUtils]: 74: Hoare triple {22027#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {21768#false} is VALID [2022-04-28 06:00:47,178 INFO L290 TraceCheckUtils]: 73: Hoare triple {22031#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22027#(< |main_#t~post6| 50)} is VALID [2022-04-28 06:00:47,178 INFO L290 TraceCheckUtils]: 72: Hoare triple {22031#(< ~counter~0 50)} assume !(~r~0 < 0); {22031#(< ~counter~0 50)} is VALID [2022-04-28 06:00:47,179 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {21767#true} {22031#(< ~counter~0 50)} #98#return; {22031#(< ~counter~0 50)} is VALID [2022-04-28 06:00:47,179 INFO L290 TraceCheckUtils]: 70: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-28 06:00:47,179 INFO L290 TraceCheckUtils]: 69: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-28 06:00:47,179 INFO L290 TraceCheckUtils]: 68: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-28 06:00:47,179 INFO L272 TraceCheckUtils]: 67: Hoare triple {22031#(< ~counter~0 50)} call __VERIFIER_assert((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-28 06:00:47,179 INFO L290 TraceCheckUtils]: 66: Hoare triple {22031#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {22031#(< ~counter~0 50)} is VALID [2022-04-28 06:00:47,180 INFO L290 TraceCheckUtils]: 65: Hoare triple {22056#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22031#(< ~counter~0 50)} is VALID [2022-04-28 06:00:47,180 INFO L290 TraceCheckUtils]: 64: Hoare triple {22056#(< ~counter~0 49)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {22056#(< ~counter~0 49)} is VALID [2022-04-28 06:00:47,181 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {21767#true} {22056#(< ~counter~0 49)} #98#return; {22056#(< ~counter~0 49)} is VALID [2022-04-28 06:00:47,181 INFO L290 TraceCheckUtils]: 62: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-28 06:00:47,181 INFO L290 TraceCheckUtils]: 61: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-28 06:00:47,181 INFO L290 TraceCheckUtils]: 60: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-28 06:00:47,181 INFO L272 TraceCheckUtils]: 59: Hoare triple {22056#(< ~counter~0 49)} call __VERIFIER_assert((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-28 06:00:47,181 INFO L290 TraceCheckUtils]: 58: Hoare triple {22056#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {22056#(< ~counter~0 49)} is VALID [2022-04-28 06:00:47,182 INFO L290 TraceCheckUtils]: 57: Hoare triple {22081#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22056#(< ~counter~0 49)} is VALID [2022-04-28 06:00:47,182 INFO L290 TraceCheckUtils]: 56: Hoare triple {22081#(< ~counter~0 48)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {22081#(< ~counter~0 48)} is VALID [2022-04-28 06:00:47,183 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {21767#true} {22081#(< ~counter~0 48)} #98#return; {22081#(< ~counter~0 48)} is VALID [2022-04-28 06:00:47,183 INFO L290 TraceCheckUtils]: 54: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-28 06:00:47,183 INFO L290 TraceCheckUtils]: 53: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-28 06:00:47,183 INFO L290 TraceCheckUtils]: 52: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-28 06:00:47,183 INFO L272 TraceCheckUtils]: 51: Hoare triple {22081#(< ~counter~0 48)} call __VERIFIER_assert((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-28 06:00:47,183 INFO L290 TraceCheckUtils]: 50: Hoare triple {22081#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {22081#(< ~counter~0 48)} is VALID [2022-04-28 06:00:47,184 INFO L290 TraceCheckUtils]: 49: Hoare triple {22106#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22081#(< ~counter~0 48)} is VALID [2022-04-28 06:00:47,184 INFO L290 TraceCheckUtils]: 48: Hoare triple {22106#(< ~counter~0 47)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {22106#(< ~counter~0 47)} is VALID [2022-04-28 06:00:47,184 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {21767#true} {22106#(< ~counter~0 47)} #98#return; {22106#(< ~counter~0 47)} is VALID [2022-04-28 06:00:47,185 INFO L290 TraceCheckUtils]: 46: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-28 06:00:47,185 INFO L290 TraceCheckUtils]: 45: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-28 06:00:47,185 INFO L290 TraceCheckUtils]: 44: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-28 06:00:47,185 INFO L272 TraceCheckUtils]: 43: Hoare triple {22106#(< ~counter~0 47)} call __VERIFIER_assert((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-28 06:00:47,185 INFO L290 TraceCheckUtils]: 42: Hoare triple {22106#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {22106#(< ~counter~0 47)} is VALID [2022-04-28 06:00:47,185 INFO L290 TraceCheckUtils]: 41: Hoare triple {22131#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22106#(< ~counter~0 47)} is VALID [2022-04-28 06:00:47,186 INFO L290 TraceCheckUtils]: 40: Hoare triple {22131#(< ~counter~0 46)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {22131#(< ~counter~0 46)} is VALID [2022-04-28 06:00:47,186 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {21767#true} {22131#(< ~counter~0 46)} #98#return; {22131#(< ~counter~0 46)} is VALID [2022-04-28 06:00:47,186 INFO L290 TraceCheckUtils]: 38: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-28 06:00:47,186 INFO L290 TraceCheckUtils]: 37: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-28 06:00:47,186 INFO L290 TraceCheckUtils]: 36: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-28 06:00:47,187 INFO L272 TraceCheckUtils]: 35: Hoare triple {22131#(< ~counter~0 46)} call __VERIFIER_assert((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-28 06:00:47,187 INFO L290 TraceCheckUtils]: 34: Hoare triple {22131#(< ~counter~0 46)} assume !!(#t~post8 < 50);havoc #t~post8; {22131#(< ~counter~0 46)} is VALID [2022-04-28 06:00:47,187 INFO L290 TraceCheckUtils]: 33: Hoare triple {22156#(< ~counter~0 45)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22131#(< ~counter~0 46)} is VALID [2022-04-28 06:00:47,188 INFO L290 TraceCheckUtils]: 32: Hoare triple {22156#(< ~counter~0 45)} assume !(~r~0 > 0); {22156#(< ~counter~0 45)} is VALID [2022-04-28 06:00:47,188 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {21767#true} {22156#(< ~counter~0 45)} #96#return; {22156#(< ~counter~0 45)} is VALID [2022-04-28 06:00:47,188 INFO L290 TraceCheckUtils]: 30: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-28 06:00:47,188 INFO L290 TraceCheckUtils]: 29: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-28 06:00:47,188 INFO L290 TraceCheckUtils]: 28: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-28 06:00:47,188 INFO L272 TraceCheckUtils]: 27: Hoare triple {22156#(< ~counter~0 45)} call __VERIFIER_assert((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-28 06:00:47,189 INFO L290 TraceCheckUtils]: 26: Hoare triple {22156#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {22156#(< ~counter~0 45)} is VALID [2022-04-28 06:00:47,189 INFO L290 TraceCheckUtils]: 25: Hoare triple {22181#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22156#(< ~counter~0 45)} is VALID [2022-04-28 06:00:47,189 INFO L290 TraceCheckUtils]: 24: Hoare triple {22181#(< ~counter~0 44)} assume !!(0 != ~r~0); {22181#(< ~counter~0 44)} is VALID [2022-04-28 06:00:47,190 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {21767#true} {22181#(< ~counter~0 44)} #94#return; {22181#(< ~counter~0 44)} is VALID [2022-04-28 06:00:47,190 INFO L290 TraceCheckUtils]: 22: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-28 06:00:47,190 INFO L290 TraceCheckUtils]: 21: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-28 06:00:47,190 INFO L290 TraceCheckUtils]: 20: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-28 06:00:47,190 INFO L272 TraceCheckUtils]: 19: Hoare triple {22181#(< ~counter~0 44)} call __VERIFIER_assert((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-28 06:00:47,190 INFO L290 TraceCheckUtils]: 18: Hoare triple {22181#(< ~counter~0 44)} assume !!(#t~post6 < 50);havoc #t~post6; {22181#(< ~counter~0 44)} is VALID [2022-04-28 06:00:47,191 INFO L290 TraceCheckUtils]: 17: Hoare triple {22206#(< ~counter~0 43)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22181#(< ~counter~0 44)} is VALID [2022-04-28 06:00:47,191 INFO L290 TraceCheckUtils]: 16: Hoare triple {22206#(< ~counter~0 43)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {22206#(< ~counter~0 43)} is VALID [2022-04-28 06:00:47,192 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21767#true} {22206#(< ~counter~0 43)} #92#return; {22206#(< ~counter~0 43)} is VALID [2022-04-28 06:00:47,192 INFO L290 TraceCheckUtils]: 14: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-28 06:00:47,192 INFO L290 TraceCheckUtils]: 13: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-28 06:00:47,192 INFO L290 TraceCheckUtils]: 12: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-28 06:00:47,192 INFO L272 TraceCheckUtils]: 11: Hoare triple {22206#(< ~counter~0 43)} 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-28 06:00:47,192 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21767#true} {22206#(< ~counter~0 43)} #90#return; {22206#(< ~counter~0 43)} is VALID [2022-04-28 06:00:47,192 INFO L290 TraceCheckUtils]: 9: Hoare triple {21767#true} assume true; {21767#true} is VALID [2022-04-28 06:00:47,192 INFO L290 TraceCheckUtils]: 8: Hoare triple {21767#true} assume !(0 == ~cond); {21767#true} is VALID [2022-04-28 06:00:47,193 INFO L290 TraceCheckUtils]: 7: Hoare triple {21767#true} ~cond := #in~cond; {21767#true} is VALID [2022-04-28 06:00:47,193 INFO L272 TraceCheckUtils]: 6: Hoare triple {22206#(< ~counter~0 43)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {21767#true} is VALID [2022-04-28 06:00:47,193 INFO L290 TraceCheckUtils]: 5: Hoare triple {22206#(< ~counter~0 43)} 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 43)} is VALID [2022-04-28 06:00:47,193 INFO L272 TraceCheckUtils]: 4: Hoare triple {22206#(< ~counter~0 43)} call #t~ret9 := main(); {22206#(< ~counter~0 43)} is VALID [2022-04-28 06:00:47,194 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22206#(< ~counter~0 43)} {21767#true} #102#return; {22206#(< ~counter~0 43)} is VALID [2022-04-28 06:00:47,194 INFO L290 TraceCheckUtils]: 2: Hoare triple {22206#(< ~counter~0 43)} assume true; {22206#(< ~counter~0 43)} is VALID [2022-04-28 06:00:47,194 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 43)} is VALID [2022-04-28 06:00:47,194 INFO L272 TraceCheckUtils]: 0: Hoare triple {21767#true} call ULTIMATE.init(); {21767#true} is VALID [2022-04-28 06:00:47,198 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-28 06:00:47,198 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:00:47,198 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [832679814] [2022-04-28 06:00:47,198 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:00:47,198 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1358838867] [2022-04-28 06:00:47,198 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1358838867] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:00:47,198 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:00:47,199 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-28 06:00:47,200 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:00:47,200 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2029788481] [2022-04-28 06:00:47,201 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2029788481] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:00:47,201 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:00:47,201 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 06:00:47,201 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1343706573] [2022-04-28 06:00:47,201 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:00:47,201 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-28 06:00:47,202 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:00:47,202 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-28 06:00:47,256 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:47,256 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 06:00:47,256 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:47,257 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 06:00:47,257 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-28 06:00:47,257 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-28 06:00:47,957 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:47,958 INFO L93 Difference]: Finished difference Result 257 states and 329 transitions. [2022-04-28 06:00:47,958 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 06:00:47,958 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-28 06:00:47,958 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:00:47,958 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-28 06:00:47,960 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 155 transitions. [2022-04-28 06:00:47,960 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-28 06:00:47,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 155 transitions. [2022-04-28 06:00:47,961 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 155 transitions. [2022-04-28 06:00:48,124 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:48,128 INFO L225 Difference]: With dead ends: 257 [2022-04-28 06:00:48,128 INFO L226 Difference]: Without dead ends: 252 [2022-04-28 06:00:48,128 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 161 GetRequests, 139 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=225, Invalid=327, Unknown=0, NotChecked=0, Total=552 [2022-04-28 06:00:48,129 INFO L413 NwaCegarLoop]: 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-28 06:00:48,129 INFO L414 NwaCegarLoop]: 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-28 06:00:48,129 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 252 states. [2022-04-28 06:00:48,380 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 252 to 243. [2022-04-28 06:00:48,380 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:00:48,380 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-28 06:00:48,381 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-28 06:00:48,381 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-28 06:00:48,409 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:48,409 INFO L93 Difference]: Finished difference Result 252 states and 323 transitions. [2022-04-28 06:00:48,409 INFO L276 IsEmpty]: Start isEmpty. Operand 252 states and 323 transitions. [2022-04-28 06:00:48,410 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:48,410 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:48,411 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-28 06:00:48,411 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-28 06:00:48,414 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:48,414 INFO L93 Difference]: Finished difference Result 252 states and 323 transitions. [2022-04-28 06:00:48,415 INFO L276 IsEmpty]: Start isEmpty. Operand 252 states and 323 transitions. [2022-04-28 06:00:48,415 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:48,415 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:48,415 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:00:48,415 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:00:48,415 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-28 06:00:48,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 243 states to 243 states and 313 transitions. [2022-04-28 06:00:48,419 INFO L78 Accepts]: Start accepts. Automaton has 243 states and 313 transitions. Word has length 79 [2022-04-28 06:00:48,419 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:00:48,419 INFO L495 AbstractCegarLoop]: Abstraction has 243 states and 313 transitions. [2022-04-28 06:00:48,420 INFO L496 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-28 06:00:48,420 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 243 states and 313 transitions. [2022-04-28 06:00:57,256 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 313 edges. 311 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:57,257 INFO L276 IsEmpty]: Start isEmpty. Operand 243 states and 313 transitions. [2022-04-28 06:00:57,257 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 82 [2022-04-28 06:00:57,257 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:00:57,258 INFO L195 NwaCegarLoop]: 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-28 06:00:57,275 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2022-04-28 06:00:57,458 WARN L477 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-28 06:00:57,459 INFO L420 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:00:57,459 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:00:57,459 INFO L85 PathProgramCache]: Analyzing trace with hash 1693648491, now seen corresponding path program 1 times [2022-04-28 06:00:57,459 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:57,459 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2039874860] [2022-04-28 06:00:57,459 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:00:57,460 INFO L85 PathProgramCache]: Analyzing trace with hash 1693648491, now seen corresponding path program 2 times [2022-04-28 06:00:57,460 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:00:57,460 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [743867643] [2022-04-28 06:00:57,460 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:00:57,460 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:00:57,469 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:00:57,470 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [333229387] [2022-04-28 06:00:57,470 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:00:57,470 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:00:57,470 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:00:57,471 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:00:57,471 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-04-28 06:00:57,514 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:00:57,514 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:00:57,514 INFO L263 TraceCheckSpWp]: Trace formula consists of 211 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 06:00:57,528 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:00:57,530 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:00:57,911 INFO L272 TraceCheckUtils]: 0: Hoare triple {23772#true} call ULTIMATE.init(); {23772#true} is VALID [2022-04-28 06:00:57,912 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-28 06:00:57,912 INFO L290 TraceCheckUtils]: 2: Hoare triple {23780#(<= ~counter~0 0)} assume true; {23780#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:57,913 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23780#(<= ~counter~0 0)} {23772#true} #102#return; {23780#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:57,913 INFO L272 TraceCheckUtils]: 4: Hoare triple {23780#(<= ~counter~0 0)} call #t~ret9 := main(); {23780#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:57,913 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-28 06:00:57,914 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-28 06:00:57,914 INFO L290 TraceCheckUtils]: 7: Hoare triple {23780#(<= ~counter~0 0)} ~cond := #in~cond; {23780#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:57,914 INFO L290 TraceCheckUtils]: 8: Hoare triple {23780#(<= ~counter~0 0)} assume !(0 == ~cond); {23780#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:57,914 INFO L290 TraceCheckUtils]: 9: Hoare triple {23780#(<= ~counter~0 0)} assume true; {23780#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:57,915 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23780#(<= ~counter~0 0)} {23780#(<= ~counter~0 0)} #90#return; {23780#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:57,915 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-28 06:00:57,916 INFO L290 TraceCheckUtils]: 12: Hoare triple {23780#(<= ~counter~0 0)} ~cond := #in~cond; {23780#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:57,916 INFO L290 TraceCheckUtils]: 13: Hoare triple {23780#(<= ~counter~0 0)} assume !(0 == ~cond); {23780#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:57,916 INFO L290 TraceCheckUtils]: 14: Hoare triple {23780#(<= ~counter~0 0)} assume true; {23780#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:57,917 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {23780#(<= ~counter~0 0)} {23780#(<= ~counter~0 0)} #92#return; {23780#(<= ~counter~0 0)} is VALID [2022-04-28 06:00:57,917 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-28 06:00:57,918 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-28 06:00:57,918 INFO L290 TraceCheckUtils]: 18: Hoare triple {23829#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {23829#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:57,918 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-28 06:00:57,919 INFO L290 TraceCheckUtils]: 20: Hoare triple {23829#(<= ~counter~0 1)} ~cond := #in~cond; {23829#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:57,919 INFO L290 TraceCheckUtils]: 21: Hoare triple {23829#(<= ~counter~0 1)} assume !(0 == ~cond); {23829#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:57,919 INFO L290 TraceCheckUtils]: 22: Hoare triple {23829#(<= ~counter~0 1)} assume true; {23829#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:57,920 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {23829#(<= ~counter~0 1)} {23829#(<= ~counter~0 1)} #94#return; {23829#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:57,920 INFO L290 TraceCheckUtils]: 24: Hoare triple {23829#(<= ~counter~0 1)} assume !!(0 != ~r~0); {23829#(<= ~counter~0 1)} is VALID [2022-04-28 06:00:57,921 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-28 06:00:57,921 INFO L290 TraceCheckUtils]: 26: Hoare triple {23854#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {23854#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:57,922 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-28 06:00:57,922 INFO L290 TraceCheckUtils]: 28: Hoare triple {23854#(<= ~counter~0 2)} ~cond := #in~cond; {23854#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:57,922 INFO L290 TraceCheckUtils]: 29: Hoare triple {23854#(<= ~counter~0 2)} assume !(0 == ~cond); {23854#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:57,922 INFO L290 TraceCheckUtils]: 30: Hoare triple {23854#(<= ~counter~0 2)} assume true; {23854#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:57,923 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {23854#(<= ~counter~0 2)} {23854#(<= ~counter~0 2)} #96#return; {23854#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:57,923 INFO L290 TraceCheckUtils]: 32: Hoare triple {23854#(<= ~counter~0 2)} assume !(~r~0 > 0); {23854#(<= ~counter~0 2)} is VALID [2022-04-28 06:00:57,923 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-28 06:00:57,924 INFO L290 TraceCheckUtils]: 34: Hoare triple {23879#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {23879#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:57,924 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-28 06:00:57,924 INFO L290 TraceCheckUtils]: 36: Hoare triple {23879#(<= ~counter~0 3)} ~cond := #in~cond; {23879#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:57,925 INFO L290 TraceCheckUtils]: 37: Hoare triple {23879#(<= ~counter~0 3)} assume !(0 == ~cond); {23879#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:57,925 INFO L290 TraceCheckUtils]: 38: Hoare triple {23879#(<= ~counter~0 3)} assume true; {23879#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:57,925 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {23879#(<= ~counter~0 3)} {23879#(<= ~counter~0 3)} #98#return; {23879#(<= ~counter~0 3)} is VALID [2022-04-28 06:00:57,926 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-28 06:00:57,926 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-28 06:00:57,926 INFO L290 TraceCheckUtils]: 42: Hoare triple {23904#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {23904#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:57,927 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-28 06:00:57,927 INFO L290 TraceCheckUtils]: 44: Hoare triple {23904#(<= ~counter~0 4)} ~cond := #in~cond; {23904#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:57,927 INFO L290 TraceCheckUtils]: 45: Hoare triple {23904#(<= ~counter~0 4)} assume !(0 == ~cond); {23904#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:57,928 INFO L290 TraceCheckUtils]: 46: Hoare triple {23904#(<= ~counter~0 4)} assume true; {23904#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:57,928 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23904#(<= ~counter~0 4)} {23904#(<= ~counter~0 4)} #98#return; {23904#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:57,928 INFO L290 TraceCheckUtils]: 48: Hoare triple {23904#(<= ~counter~0 4)} assume !(~r~0 < 0); {23904#(<= ~counter~0 4)} is VALID [2022-04-28 06:00:57,929 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-28 06:00:57,929 INFO L290 TraceCheckUtils]: 50: Hoare triple {23929#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {23929#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:57,929 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-28 06:00:57,930 INFO L290 TraceCheckUtils]: 52: Hoare triple {23929#(<= ~counter~0 5)} ~cond := #in~cond; {23929#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:57,930 INFO L290 TraceCheckUtils]: 53: Hoare triple {23929#(<= ~counter~0 5)} assume !(0 == ~cond); {23929#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:57,930 INFO L290 TraceCheckUtils]: 54: Hoare triple {23929#(<= ~counter~0 5)} assume true; {23929#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:57,930 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {23929#(<= ~counter~0 5)} {23929#(<= ~counter~0 5)} #94#return; {23929#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:57,931 INFO L290 TraceCheckUtils]: 56: Hoare triple {23929#(<= ~counter~0 5)} assume !!(0 != ~r~0); {23929#(<= ~counter~0 5)} is VALID [2022-04-28 06:00:57,933 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-28 06:00:57,933 INFO L290 TraceCheckUtils]: 58: Hoare triple {23954#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {23954#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:57,934 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-28 06:00:57,934 INFO L290 TraceCheckUtils]: 60: Hoare triple {23954#(<= ~counter~0 6)} ~cond := #in~cond; {23954#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:57,934 INFO L290 TraceCheckUtils]: 61: Hoare triple {23954#(<= ~counter~0 6)} assume !(0 == ~cond); {23954#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:57,934 INFO L290 TraceCheckUtils]: 62: Hoare triple {23954#(<= ~counter~0 6)} assume true; {23954#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:57,935 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {23954#(<= ~counter~0 6)} {23954#(<= ~counter~0 6)} #96#return; {23954#(<= ~counter~0 6)} is VALID [2022-04-28 06:00:57,935 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-28 06:00:57,936 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-28 06:00:57,936 INFO L290 TraceCheckUtils]: 66: Hoare triple {23979#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {23979#(<= ~counter~0 7)} is VALID [2022-04-28 06:00:57,936 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-28 06:00:57,936 INFO L290 TraceCheckUtils]: 68: Hoare triple {23979#(<= ~counter~0 7)} ~cond := #in~cond; {23979#(<= ~counter~0 7)} is VALID [2022-04-28 06:00:57,937 INFO L290 TraceCheckUtils]: 69: Hoare triple {23979#(<= ~counter~0 7)} assume !(0 == ~cond); {23979#(<= ~counter~0 7)} is VALID [2022-04-28 06:00:57,937 INFO L290 TraceCheckUtils]: 70: Hoare triple {23979#(<= ~counter~0 7)} assume true; {23979#(<= ~counter~0 7)} is VALID [2022-04-28 06:00:57,937 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {23979#(<= ~counter~0 7)} {23979#(<= ~counter~0 7)} #96#return; {23979#(<= ~counter~0 7)} is VALID [2022-04-28 06:00:57,938 INFO L290 TraceCheckUtils]: 72: Hoare triple {23979#(<= ~counter~0 7)} assume !(~r~0 > 0); {23979#(<= ~counter~0 7)} is VALID [2022-04-28 06:00:57,938 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-28 06:00:57,938 INFO L290 TraceCheckUtils]: 74: Hoare triple {24004#(<= |main_#t~post8| 7)} assume !(#t~post8 < 50);havoc #t~post8; {23773#false} is VALID [2022-04-28 06:00:57,938 INFO L290 TraceCheckUtils]: 75: Hoare triple {23773#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23773#false} is VALID [2022-04-28 06:00:57,938 INFO L290 TraceCheckUtils]: 76: Hoare triple {23773#false} assume !(#t~post6 < 50);havoc #t~post6; {23773#false} is VALID [2022-04-28 06:00:57,938 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-28 06:00:57,938 INFO L290 TraceCheckUtils]: 78: Hoare triple {23773#false} ~cond := #in~cond; {23773#false} is VALID [2022-04-28 06:00:57,939 INFO L290 TraceCheckUtils]: 79: Hoare triple {23773#false} assume 0 == ~cond; {23773#false} is VALID [2022-04-28 06:00:57,939 INFO L290 TraceCheckUtils]: 80: Hoare triple {23773#false} assume !false; {23773#false} is VALID [2022-04-28 06:00:57,939 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-28 06:00:57,939 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:00:58,385 INFO L290 TraceCheckUtils]: 80: Hoare triple {23773#false} assume !false; {23773#false} is VALID [2022-04-28 06:00:58,385 INFO L290 TraceCheckUtils]: 79: Hoare triple {23773#false} assume 0 == ~cond; {23773#false} is VALID [2022-04-28 06:00:58,385 INFO L290 TraceCheckUtils]: 78: Hoare triple {23773#false} ~cond := #in~cond; {23773#false} is VALID [2022-04-28 06:00:58,385 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-28 06:00:58,385 INFO L290 TraceCheckUtils]: 76: Hoare triple {23773#false} assume !(#t~post6 < 50);havoc #t~post6; {23773#false} is VALID [2022-04-28 06:00:58,385 INFO L290 TraceCheckUtils]: 75: Hoare triple {23773#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23773#false} is VALID [2022-04-28 06:00:58,385 INFO L290 TraceCheckUtils]: 74: Hoare triple {24044#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {23773#false} is VALID [2022-04-28 06:00:58,386 INFO L290 TraceCheckUtils]: 73: Hoare triple {24048#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24044#(< |main_#t~post8| 50)} is VALID [2022-04-28 06:00:58,386 INFO L290 TraceCheckUtils]: 72: Hoare triple {24048#(< ~counter~0 50)} assume !(~r~0 > 0); {24048#(< ~counter~0 50)} is VALID [2022-04-28 06:00:58,387 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {23772#true} {24048#(< ~counter~0 50)} #96#return; {24048#(< ~counter~0 50)} is VALID [2022-04-28 06:00:58,387 INFO L290 TraceCheckUtils]: 70: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-28 06:00:58,387 INFO L290 TraceCheckUtils]: 69: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-28 06:00:58,387 INFO L290 TraceCheckUtils]: 68: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-28 06:00:58,387 INFO L272 TraceCheckUtils]: 67: Hoare triple {24048#(< ~counter~0 50)} call __VERIFIER_assert((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-28 06:00:58,387 INFO L290 TraceCheckUtils]: 66: Hoare triple {24048#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {24048#(< ~counter~0 50)} is VALID [2022-04-28 06:00:58,388 INFO L290 TraceCheckUtils]: 65: Hoare triple {24073#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24048#(< ~counter~0 50)} is VALID [2022-04-28 06:00:58,388 INFO L290 TraceCheckUtils]: 64: Hoare triple {24073#(< ~counter~0 49)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24073#(< ~counter~0 49)} is VALID [2022-04-28 06:00:58,389 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {23772#true} {24073#(< ~counter~0 49)} #96#return; {24073#(< ~counter~0 49)} is VALID [2022-04-28 06:00:58,389 INFO L290 TraceCheckUtils]: 62: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-28 06:00:58,389 INFO L290 TraceCheckUtils]: 61: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-28 06:00:58,390 INFO L290 TraceCheckUtils]: 60: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-28 06:00:58,390 INFO L272 TraceCheckUtils]: 59: Hoare triple {24073#(< ~counter~0 49)} call __VERIFIER_assert((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-28 06:00:58,390 INFO L290 TraceCheckUtils]: 58: Hoare triple {24073#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {24073#(< ~counter~0 49)} is VALID [2022-04-28 06:00:58,390 INFO L290 TraceCheckUtils]: 57: Hoare triple {24098#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24073#(< ~counter~0 49)} is VALID [2022-04-28 06:00:58,391 INFO L290 TraceCheckUtils]: 56: Hoare triple {24098#(< ~counter~0 48)} assume !!(0 != ~r~0); {24098#(< ~counter~0 48)} is VALID [2022-04-28 06:00:58,391 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {23772#true} {24098#(< ~counter~0 48)} #94#return; {24098#(< ~counter~0 48)} is VALID [2022-04-28 06:00:58,391 INFO L290 TraceCheckUtils]: 54: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-28 06:00:58,391 INFO L290 TraceCheckUtils]: 53: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-28 06:00:58,391 INFO L290 TraceCheckUtils]: 52: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-28 06:00:58,391 INFO L272 TraceCheckUtils]: 51: Hoare triple {24098#(< ~counter~0 48)} call __VERIFIER_assert((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-28 06:00:58,392 INFO L290 TraceCheckUtils]: 50: Hoare triple {24098#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {24098#(< ~counter~0 48)} is VALID [2022-04-28 06:00:58,392 INFO L290 TraceCheckUtils]: 49: Hoare triple {24123#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24098#(< ~counter~0 48)} is VALID [2022-04-28 06:00:58,393 INFO L290 TraceCheckUtils]: 48: Hoare triple {24123#(< ~counter~0 47)} assume !(~r~0 < 0); {24123#(< ~counter~0 47)} is VALID [2022-04-28 06:00:58,393 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23772#true} {24123#(< ~counter~0 47)} #98#return; {24123#(< ~counter~0 47)} is VALID [2022-04-28 06:00:58,393 INFO L290 TraceCheckUtils]: 46: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-28 06:00:58,393 INFO L290 TraceCheckUtils]: 45: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-28 06:00:58,393 INFO L290 TraceCheckUtils]: 44: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-28 06:00:58,393 INFO L272 TraceCheckUtils]: 43: Hoare triple {24123#(< ~counter~0 47)} call __VERIFIER_assert((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-28 06:00:58,394 INFO L290 TraceCheckUtils]: 42: Hoare triple {24123#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {24123#(< ~counter~0 47)} is VALID [2022-04-28 06:00:58,394 INFO L290 TraceCheckUtils]: 41: Hoare triple {24148#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24123#(< ~counter~0 47)} is VALID [2022-04-28 06:00:58,394 INFO L290 TraceCheckUtils]: 40: Hoare triple {24148#(< ~counter~0 46)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {24148#(< ~counter~0 46)} is VALID [2022-04-28 06:00:58,395 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {23772#true} {24148#(< ~counter~0 46)} #98#return; {24148#(< ~counter~0 46)} is VALID [2022-04-28 06:00:58,395 INFO L290 TraceCheckUtils]: 38: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-28 06:00:58,395 INFO L290 TraceCheckUtils]: 37: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-28 06:00:58,395 INFO L290 TraceCheckUtils]: 36: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-28 06:00:58,395 INFO L272 TraceCheckUtils]: 35: Hoare triple {24148#(< ~counter~0 46)} call __VERIFIER_assert((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-28 06:00:58,395 INFO L290 TraceCheckUtils]: 34: Hoare triple {24148#(< ~counter~0 46)} assume !!(#t~post8 < 50);havoc #t~post8; {24148#(< ~counter~0 46)} is VALID [2022-04-28 06:00:58,396 INFO L290 TraceCheckUtils]: 33: Hoare triple {24173#(< ~counter~0 45)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24148#(< ~counter~0 46)} is VALID [2022-04-28 06:00:58,396 INFO L290 TraceCheckUtils]: 32: Hoare triple {24173#(< ~counter~0 45)} assume !(~r~0 > 0); {24173#(< ~counter~0 45)} is VALID [2022-04-28 06:00:58,397 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {23772#true} {24173#(< ~counter~0 45)} #96#return; {24173#(< ~counter~0 45)} is VALID [2022-04-28 06:00:58,397 INFO L290 TraceCheckUtils]: 30: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-28 06:00:58,397 INFO L290 TraceCheckUtils]: 29: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-28 06:00:58,397 INFO L290 TraceCheckUtils]: 28: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-28 06:00:58,397 INFO L272 TraceCheckUtils]: 27: Hoare triple {24173#(< ~counter~0 45)} call __VERIFIER_assert((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-28 06:00:58,397 INFO L290 TraceCheckUtils]: 26: Hoare triple {24173#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {24173#(< ~counter~0 45)} is VALID [2022-04-28 06:00:58,398 INFO L290 TraceCheckUtils]: 25: Hoare triple {24198#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24173#(< ~counter~0 45)} is VALID [2022-04-28 06:00:58,398 INFO L290 TraceCheckUtils]: 24: Hoare triple {24198#(< ~counter~0 44)} assume !!(0 != ~r~0); {24198#(< ~counter~0 44)} is VALID [2022-04-28 06:00:58,399 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {23772#true} {24198#(< ~counter~0 44)} #94#return; {24198#(< ~counter~0 44)} is VALID [2022-04-28 06:00:58,399 INFO L290 TraceCheckUtils]: 22: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-28 06:00:58,399 INFO L290 TraceCheckUtils]: 21: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-28 06:00:58,399 INFO L290 TraceCheckUtils]: 20: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-28 06:00:58,399 INFO L272 TraceCheckUtils]: 19: Hoare triple {24198#(< ~counter~0 44)} call __VERIFIER_assert((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-28 06:00:58,399 INFO L290 TraceCheckUtils]: 18: Hoare triple {24198#(< ~counter~0 44)} assume !!(#t~post6 < 50);havoc #t~post6; {24198#(< ~counter~0 44)} is VALID [2022-04-28 06:00:58,400 INFO L290 TraceCheckUtils]: 17: Hoare triple {24223#(< ~counter~0 43)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24198#(< ~counter~0 44)} is VALID [2022-04-28 06:00:58,400 INFO L290 TraceCheckUtils]: 16: Hoare triple {24223#(< ~counter~0 43)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {24223#(< ~counter~0 43)} is VALID [2022-04-28 06:00:58,401 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {23772#true} {24223#(< ~counter~0 43)} #92#return; {24223#(< ~counter~0 43)} is VALID [2022-04-28 06:00:58,401 INFO L290 TraceCheckUtils]: 14: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-28 06:00:58,401 INFO L290 TraceCheckUtils]: 13: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-28 06:00:58,401 INFO L290 TraceCheckUtils]: 12: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-28 06:00:58,401 INFO L272 TraceCheckUtils]: 11: Hoare triple {24223#(< ~counter~0 43)} 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-28 06:00:58,401 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23772#true} {24223#(< ~counter~0 43)} #90#return; {24223#(< ~counter~0 43)} is VALID [2022-04-28 06:00:58,401 INFO L290 TraceCheckUtils]: 9: Hoare triple {23772#true} assume true; {23772#true} is VALID [2022-04-28 06:00:58,402 INFO L290 TraceCheckUtils]: 8: Hoare triple {23772#true} assume !(0 == ~cond); {23772#true} is VALID [2022-04-28 06:00:58,402 INFO L290 TraceCheckUtils]: 7: Hoare triple {23772#true} ~cond := #in~cond; {23772#true} is VALID [2022-04-28 06:00:58,402 INFO L272 TraceCheckUtils]: 6: Hoare triple {24223#(< ~counter~0 43)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {23772#true} is VALID [2022-04-28 06:00:58,402 INFO L290 TraceCheckUtils]: 5: Hoare triple {24223#(< ~counter~0 43)} 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 43)} is VALID [2022-04-28 06:00:58,402 INFO L272 TraceCheckUtils]: 4: Hoare triple {24223#(< ~counter~0 43)} call #t~ret9 := main(); {24223#(< ~counter~0 43)} is VALID [2022-04-28 06:00:58,403 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24223#(< ~counter~0 43)} {23772#true} #102#return; {24223#(< ~counter~0 43)} is VALID [2022-04-28 06:00:58,403 INFO L290 TraceCheckUtils]: 2: Hoare triple {24223#(< ~counter~0 43)} assume true; {24223#(< ~counter~0 43)} is VALID [2022-04-28 06:00:58,403 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 43)} is VALID [2022-04-28 06:00:58,404 INFO L272 TraceCheckUtils]: 0: Hoare triple {23772#true} call ULTIMATE.init(); {23772#true} is VALID [2022-04-28 06:00:58,404 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-28 06:00:58,404 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:00:58,404 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [743867643] [2022-04-28 06:00:58,404 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:00:58,404 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [333229387] [2022-04-28 06:00:58,404 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [333229387] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:00:58,404 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:00:58,404 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-28 06:00:58,405 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:00:58,405 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2039874860] [2022-04-28 06:00:58,405 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2039874860] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:00:58,405 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:00:58,405 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 06:00:58,405 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1502420545] [2022-04-28 06:00:58,405 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:00:58,406 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-28 06:00:58,408 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:00:58,408 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-28 06:00:58,463 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:58,463 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 06:00:58,463 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:58,464 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 06:00:58,464 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-28 06:00:58,464 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-28 06:00:59,175 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:59,176 INFO L93 Difference]: Finished difference Result 342 states and 455 transitions. [2022-04-28 06:00:59,176 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 06:00:59,176 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-28 06:00:59,176 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:00:59,176 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-28 06:00:59,178 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 177 transitions. [2022-04-28 06:00:59,178 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-28 06:00:59,179 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 177 transitions. [2022-04-28 06:00:59,179 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 177 transitions. [2022-04-28 06:00:59,313 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-28 06:00:59,317 INFO L225 Difference]: With dead ends: 342 [2022-04-28 06:00:59,317 INFO L226 Difference]: Without dead ends: 254 [2022-04-28 06:00:59,317 INFO L412 NwaCegarLoop]: 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-28 06:00:59,317 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 91 mSDsluCounter, 140 mSDsCounter, 0 mSdLazyCounter, 68 mSolverCounterSat, 80 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s 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.2s IncrementalHoareTripleChecker+Time [2022-04-28 06:00:59,318 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [91 Valid, 191 Invalid, 148 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [80 Valid, 68 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 06:00:59,318 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 254 states. [2022-04-28 06:00:59,485 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 254 to 248. [2022-04-28 06:00:59,485 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:00:59,485 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-28 06:00:59,485 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-28 06:00:59,499 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-28 06:00:59,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:59,503 INFO L93 Difference]: Finished difference Result 254 states and 325 transitions. [2022-04-28 06:00:59,503 INFO L276 IsEmpty]: Start isEmpty. Operand 254 states and 325 transitions. [2022-04-28 06:00:59,503 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:59,504 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:59,504 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-28 06:00:59,504 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-28 06:00:59,507 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:59,507 INFO L93 Difference]: Finished difference Result 254 states and 325 transitions. [2022-04-28 06:00:59,507 INFO L276 IsEmpty]: Start isEmpty. Operand 254 states and 325 transitions. [2022-04-28 06:00:59,508 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:59,508 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:59,508 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:00:59,508 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:00:59,508 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-28 06:00:59,512 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 248 states to 248 states and 319 transitions. [2022-04-28 06:00:59,512 INFO L78 Accepts]: Start accepts. Automaton has 248 states and 319 transitions. Word has length 81 [2022-04-28 06:00:59,512 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:00:59,512 INFO L495 AbstractCegarLoop]: Abstraction has 248 states and 319 transitions. [2022-04-28 06:00:59,512 INFO L496 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-28 06:00:59,512 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 248 states and 319 transitions. [2022-04-28 06:01:07,776 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 319 edges. 317 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 06:01:07,776 INFO L276 IsEmpty]: Start isEmpty. Operand 248 states and 319 transitions. [2022-04-28 06:01:07,776 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 84 [2022-04-28 06:01:07,777 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:01:07,777 INFO L195 NwaCegarLoop]: 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-28 06:01:07,793 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2022-04-28 06:01:07,977 WARN L477 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-28 06:01:07,977 INFO L420 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:01:07,977 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:01:07,978 INFO L85 PathProgramCache]: Analyzing trace with hash -918360272, now seen corresponding path program 3 times [2022-04-28 06:01:07,978 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:01:07,978 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [987651692] [2022-04-28 06:01:07,978 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:01:07,978 INFO L85 PathProgramCache]: Analyzing trace with hash -918360272, now seen corresponding path program 4 times [2022-04-28 06:01:07,978 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:01:07,978 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1539023772] [2022-04-28 06:01:07,978 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:01:07,978 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:01:07,988 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:01:07,989 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1084411996] [2022-04-28 06:01:07,989 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 06:01:07,989 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:01:07,989 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:01:07,990 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:01:07,998 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2022-04-28 06:01:08,098 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 06:01:08,098 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:01:08,099 INFO L263 TraceCheckSpWp]: Trace formula consists of 220 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 06:01:08,115 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:01:08,116 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:01:08,493 INFO L272 TraceCheckUtils]: 0: Hoare triple {25975#true} call ULTIMATE.init(); {25975#true} is VALID [2022-04-28 06:01:08,494 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-28 06:01:08,494 INFO L290 TraceCheckUtils]: 2: Hoare triple {25983#(<= ~counter~0 0)} assume true; {25983#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:08,494 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25983#(<= ~counter~0 0)} {25975#true} #102#return; {25983#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:08,495 INFO L272 TraceCheckUtils]: 4: Hoare triple {25983#(<= ~counter~0 0)} call #t~ret9 := main(); {25983#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:08,495 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-28 06:01:08,495 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-28 06:01:08,496 INFO L290 TraceCheckUtils]: 7: Hoare triple {25983#(<= ~counter~0 0)} ~cond := #in~cond; {25983#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:08,496 INFO L290 TraceCheckUtils]: 8: Hoare triple {25983#(<= ~counter~0 0)} assume !(0 == ~cond); {25983#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:08,496 INFO L290 TraceCheckUtils]: 9: Hoare triple {25983#(<= ~counter~0 0)} assume true; {25983#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:08,497 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {25983#(<= ~counter~0 0)} {25983#(<= ~counter~0 0)} #90#return; {25983#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:08,497 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-28 06:01:08,497 INFO L290 TraceCheckUtils]: 12: Hoare triple {25983#(<= ~counter~0 0)} ~cond := #in~cond; {25983#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:08,497 INFO L290 TraceCheckUtils]: 13: Hoare triple {25983#(<= ~counter~0 0)} assume !(0 == ~cond); {25983#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:08,498 INFO L290 TraceCheckUtils]: 14: Hoare triple {25983#(<= ~counter~0 0)} assume true; {25983#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:08,498 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {25983#(<= ~counter~0 0)} {25983#(<= ~counter~0 0)} #92#return; {25983#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:08,498 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-28 06:01:08,499 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-28 06:01:08,500 INFO L290 TraceCheckUtils]: 18: Hoare triple {26032#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {26032#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:08,500 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-28 06:01:08,500 INFO L290 TraceCheckUtils]: 20: Hoare triple {26032#(<= ~counter~0 1)} ~cond := #in~cond; {26032#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:08,501 INFO L290 TraceCheckUtils]: 21: Hoare triple {26032#(<= ~counter~0 1)} assume !(0 == ~cond); {26032#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:08,501 INFO L290 TraceCheckUtils]: 22: Hoare triple {26032#(<= ~counter~0 1)} assume true; {26032#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:08,501 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {26032#(<= ~counter~0 1)} {26032#(<= ~counter~0 1)} #94#return; {26032#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:08,502 INFO L290 TraceCheckUtils]: 24: Hoare triple {26032#(<= ~counter~0 1)} assume !!(0 != ~r~0); {26032#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:08,502 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-28 06:01:08,502 INFO L290 TraceCheckUtils]: 26: Hoare triple {26057#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {26057#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:08,503 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-28 06:01:08,503 INFO L290 TraceCheckUtils]: 28: Hoare triple {26057#(<= ~counter~0 2)} ~cond := #in~cond; {26057#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:08,503 INFO L290 TraceCheckUtils]: 29: Hoare triple {26057#(<= ~counter~0 2)} assume !(0 == ~cond); {26057#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:08,504 INFO L290 TraceCheckUtils]: 30: Hoare triple {26057#(<= ~counter~0 2)} assume true; {26057#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:08,504 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {26057#(<= ~counter~0 2)} {26057#(<= ~counter~0 2)} #96#return; {26057#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:08,505 INFO L290 TraceCheckUtils]: 32: Hoare triple {26057#(<= ~counter~0 2)} assume !(~r~0 > 0); {26057#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:08,505 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-28 06:01:08,505 INFO L290 TraceCheckUtils]: 34: Hoare triple {26082#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {26082#(<= ~counter~0 3)} is VALID [2022-04-28 06:01:08,506 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-28 06:01:08,506 INFO L290 TraceCheckUtils]: 36: Hoare triple {26082#(<= ~counter~0 3)} ~cond := #in~cond; {26082#(<= ~counter~0 3)} is VALID [2022-04-28 06:01:08,506 INFO L290 TraceCheckUtils]: 37: Hoare triple {26082#(<= ~counter~0 3)} assume !(0 == ~cond); {26082#(<= ~counter~0 3)} is VALID [2022-04-28 06:01:08,507 INFO L290 TraceCheckUtils]: 38: Hoare triple {26082#(<= ~counter~0 3)} assume true; {26082#(<= ~counter~0 3)} is VALID [2022-04-28 06:01:08,507 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {26082#(<= ~counter~0 3)} {26082#(<= ~counter~0 3)} #98#return; {26082#(<= ~counter~0 3)} is VALID [2022-04-28 06:01:08,508 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-28 06:01:08,508 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-28 06:01:08,508 INFO L290 TraceCheckUtils]: 42: Hoare triple {26107#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {26107#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:08,509 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-28 06:01:08,509 INFO L290 TraceCheckUtils]: 44: Hoare triple {26107#(<= ~counter~0 4)} ~cond := #in~cond; {26107#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:08,509 INFO L290 TraceCheckUtils]: 45: Hoare triple {26107#(<= ~counter~0 4)} assume !(0 == ~cond); {26107#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:08,510 INFO L290 TraceCheckUtils]: 46: Hoare triple {26107#(<= ~counter~0 4)} assume true; {26107#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:08,510 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {26107#(<= ~counter~0 4)} {26107#(<= ~counter~0 4)} #98#return; {26107#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:08,510 INFO L290 TraceCheckUtils]: 48: Hoare triple {26107#(<= ~counter~0 4)} assume !(~r~0 < 0); {26107#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:08,511 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-28 06:01:08,511 INFO L290 TraceCheckUtils]: 50: Hoare triple {26132#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {26132#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:08,512 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-28 06:01:08,512 INFO L290 TraceCheckUtils]: 52: Hoare triple {26132#(<= ~counter~0 5)} ~cond := #in~cond; {26132#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:08,512 INFO L290 TraceCheckUtils]: 53: Hoare triple {26132#(<= ~counter~0 5)} assume !(0 == ~cond); {26132#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:08,513 INFO L290 TraceCheckUtils]: 54: Hoare triple {26132#(<= ~counter~0 5)} assume true; {26132#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:08,513 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {26132#(<= ~counter~0 5)} {26132#(<= ~counter~0 5)} #94#return; {26132#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:08,513 INFO L290 TraceCheckUtils]: 56: Hoare triple {26132#(<= ~counter~0 5)} assume !!(0 != ~r~0); {26132#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:08,514 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-28 06:01:08,514 INFO L290 TraceCheckUtils]: 58: Hoare triple {26157#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {26157#(<= ~counter~0 6)} is VALID [2022-04-28 06:01:08,515 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-28 06:01:08,515 INFO L290 TraceCheckUtils]: 60: Hoare triple {26157#(<= ~counter~0 6)} ~cond := #in~cond; {26157#(<= ~counter~0 6)} is VALID [2022-04-28 06:01:08,515 INFO L290 TraceCheckUtils]: 61: Hoare triple {26157#(<= ~counter~0 6)} assume !(0 == ~cond); {26157#(<= ~counter~0 6)} is VALID [2022-04-28 06:01:08,516 INFO L290 TraceCheckUtils]: 62: Hoare triple {26157#(<= ~counter~0 6)} assume true; {26157#(<= ~counter~0 6)} is VALID [2022-04-28 06:01:08,516 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {26157#(<= ~counter~0 6)} {26157#(<= ~counter~0 6)} #96#return; {26157#(<= ~counter~0 6)} is VALID [2022-04-28 06:01:08,516 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-28 06:01:08,517 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-28 06:01:08,517 INFO L290 TraceCheckUtils]: 66: Hoare triple {26182#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {26182#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:08,518 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-28 06:01:08,518 INFO L290 TraceCheckUtils]: 68: Hoare triple {26182#(<= ~counter~0 7)} ~cond := #in~cond; {26182#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:08,518 INFO L290 TraceCheckUtils]: 69: Hoare triple {26182#(<= ~counter~0 7)} assume !(0 == ~cond); {26182#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:08,519 INFO L290 TraceCheckUtils]: 70: Hoare triple {26182#(<= ~counter~0 7)} assume true; {26182#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:08,519 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {26182#(<= ~counter~0 7)} {26182#(<= ~counter~0 7)} #96#return; {26182#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:08,519 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-28 06:01:08,520 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-28 06:01:08,520 INFO L290 TraceCheckUtils]: 74: Hoare triple {26207#(<= |main_#t~post7| 7)} assume !(#t~post7 < 50);havoc #t~post7; {25976#false} is VALID [2022-04-28 06:01:08,520 INFO L290 TraceCheckUtils]: 75: Hoare triple {25976#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {25976#false} is VALID [2022-04-28 06:01:08,520 INFO L290 TraceCheckUtils]: 76: Hoare triple {25976#false} assume !(#t~post8 < 50);havoc #t~post8; {25976#false} is VALID [2022-04-28 06:01:08,520 INFO L290 TraceCheckUtils]: 77: Hoare triple {25976#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25976#false} is VALID [2022-04-28 06:01:08,520 INFO L290 TraceCheckUtils]: 78: Hoare triple {25976#false} assume !(#t~post6 < 50);havoc #t~post6; {25976#false} is VALID [2022-04-28 06:01:08,520 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-28 06:01:08,520 INFO L290 TraceCheckUtils]: 80: Hoare triple {25976#false} ~cond := #in~cond; {25976#false} is VALID [2022-04-28 06:01:08,521 INFO L290 TraceCheckUtils]: 81: Hoare triple {25976#false} assume 0 == ~cond; {25976#false} is VALID [2022-04-28 06:01:08,521 INFO L290 TraceCheckUtils]: 82: Hoare triple {25976#false} assume !false; {25976#false} is VALID [2022-04-28 06:01:08,521 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-28 06:01:08,521 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:01:08,941 INFO L290 TraceCheckUtils]: 82: Hoare triple {25976#false} assume !false; {25976#false} is VALID [2022-04-28 06:01:08,941 INFO L290 TraceCheckUtils]: 81: Hoare triple {25976#false} assume 0 == ~cond; {25976#false} is VALID [2022-04-28 06:01:08,941 INFO L290 TraceCheckUtils]: 80: Hoare triple {25976#false} ~cond := #in~cond; {25976#false} is VALID [2022-04-28 06:01:08,941 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-28 06:01:08,941 INFO L290 TraceCheckUtils]: 78: Hoare triple {25976#false} assume !(#t~post6 < 50);havoc #t~post6; {25976#false} is VALID [2022-04-28 06:01:08,941 INFO L290 TraceCheckUtils]: 77: Hoare triple {25976#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25976#false} is VALID [2022-04-28 06:01:08,941 INFO L290 TraceCheckUtils]: 76: Hoare triple {25976#false} assume !(#t~post8 < 50);havoc #t~post8; {25976#false} is VALID [2022-04-28 06:01:08,941 INFO L290 TraceCheckUtils]: 75: Hoare triple {25976#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {25976#false} is VALID [2022-04-28 06:01:08,942 INFO L290 TraceCheckUtils]: 74: Hoare triple {26259#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {25976#false} is VALID [2022-04-28 06:01:08,942 INFO L290 TraceCheckUtils]: 73: Hoare triple {26263#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26259#(< |main_#t~post7| 50)} is VALID [2022-04-28 06:01:08,942 INFO L290 TraceCheckUtils]: 72: Hoare triple {26263#(< ~counter~0 50)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26263#(< ~counter~0 50)} is VALID [2022-04-28 06:01:08,943 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {25975#true} {26263#(< ~counter~0 50)} #96#return; {26263#(< ~counter~0 50)} is VALID [2022-04-28 06:01:08,943 INFO L290 TraceCheckUtils]: 70: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-28 06:01:08,943 INFO L290 TraceCheckUtils]: 69: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-28 06:01:08,943 INFO L290 TraceCheckUtils]: 68: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-28 06:01:08,943 INFO L272 TraceCheckUtils]: 67: Hoare triple {26263#(< ~counter~0 50)} call __VERIFIER_assert((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-28 06:01:08,943 INFO L290 TraceCheckUtils]: 66: Hoare triple {26263#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {26263#(< ~counter~0 50)} is VALID [2022-04-28 06:01:08,944 INFO L290 TraceCheckUtils]: 65: Hoare triple {26288#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26263#(< ~counter~0 50)} is VALID [2022-04-28 06:01:08,945 INFO L290 TraceCheckUtils]: 64: Hoare triple {26288#(< ~counter~0 49)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {26288#(< ~counter~0 49)} is VALID [2022-04-28 06:01:08,945 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {25975#true} {26288#(< ~counter~0 49)} #96#return; {26288#(< ~counter~0 49)} is VALID [2022-04-28 06:01:08,945 INFO L290 TraceCheckUtils]: 62: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-28 06:01:08,945 INFO L290 TraceCheckUtils]: 61: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-28 06:01:08,945 INFO L290 TraceCheckUtils]: 60: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-28 06:01:08,945 INFO L272 TraceCheckUtils]: 59: Hoare triple {26288#(< ~counter~0 49)} call __VERIFIER_assert((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-28 06:01:08,946 INFO L290 TraceCheckUtils]: 58: Hoare triple {26288#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {26288#(< ~counter~0 49)} is VALID [2022-04-28 06:01:08,946 INFO L290 TraceCheckUtils]: 57: Hoare triple {26313#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26288#(< ~counter~0 49)} is VALID [2022-04-28 06:01:08,946 INFO L290 TraceCheckUtils]: 56: Hoare triple {26313#(< ~counter~0 48)} assume !!(0 != ~r~0); {26313#(< ~counter~0 48)} is VALID [2022-04-28 06:01:08,947 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {25975#true} {26313#(< ~counter~0 48)} #94#return; {26313#(< ~counter~0 48)} is VALID [2022-04-28 06:01:08,947 INFO L290 TraceCheckUtils]: 54: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-28 06:01:08,947 INFO L290 TraceCheckUtils]: 53: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-28 06:01:08,947 INFO L290 TraceCheckUtils]: 52: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-28 06:01:08,947 INFO L272 TraceCheckUtils]: 51: Hoare triple {26313#(< ~counter~0 48)} call __VERIFIER_assert((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-28 06:01:08,948 INFO L290 TraceCheckUtils]: 50: Hoare triple {26313#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {26313#(< ~counter~0 48)} is VALID [2022-04-28 06:01:08,948 INFO L290 TraceCheckUtils]: 49: Hoare triple {26338#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26313#(< ~counter~0 48)} is VALID [2022-04-28 06:01:08,948 INFO L290 TraceCheckUtils]: 48: Hoare triple {26338#(< ~counter~0 47)} assume !(~r~0 < 0); {26338#(< ~counter~0 47)} is VALID [2022-04-28 06:01:08,949 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {25975#true} {26338#(< ~counter~0 47)} #98#return; {26338#(< ~counter~0 47)} is VALID [2022-04-28 06:01:08,949 INFO L290 TraceCheckUtils]: 46: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-28 06:01:08,949 INFO L290 TraceCheckUtils]: 45: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-28 06:01:08,949 INFO L290 TraceCheckUtils]: 44: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-28 06:01:08,949 INFO L272 TraceCheckUtils]: 43: Hoare triple {26338#(< ~counter~0 47)} call __VERIFIER_assert((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-28 06:01:08,949 INFO L290 TraceCheckUtils]: 42: Hoare triple {26338#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {26338#(< ~counter~0 47)} is VALID [2022-04-28 06:01:08,950 INFO L290 TraceCheckUtils]: 41: Hoare triple {26363#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {26338#(< ~counter~0 47)} is VALID [2022-04-28 06:01:08,950 INFO L290 TraceCheckUtils]: 40: Hoare triple {26363#(< ~counter~0 46)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {26363#(< ~counter~0 46)} is VALID [2022-04-28 06:01:08,951 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {25975#true} {26363#(< ~counter~0 46)} #98#return; {26363#(< ~counter~0 46)} is VALID [2022-04-28 06:01:08,951 INFO L290 TraceCheckUtils]: 38: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-28 06:01:08,951 INFO L290 TraceCheckUtils]: 37: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-28 06:01:08,951 INFO L290 TraceCheckUtils]: 36: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-28 06:01:08,951 INFO L272 TraceCheckUtils]: 35: Hoare triple {26363#(< ~counter~0 46)} call __VERIFIER_assert((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-28 06:01:08,951 INFO L290 TraceCheckUtils]: 34: Hoare triple {26363#(< ~counter~0 46)} assume !!(#t~post8 < 50);havoc #t~post8; {26363#(< ~counter~0 46)} is VALID [2022-04-28 06:01:08,952 INFO L290 TraceCheckUtils]: 33: Hoare triple {26388#(< ~counter~0 45)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {26363#(< ~counter~0 46)} is VALID [2022-04-28 06:01:08,952 INFO L290 TraceCheckUtils]: 32: Hoare triple {26388#(< ~counter~0 45)} assume !(~r~0 > 0); {26388#(< ~counter~0 45)} is VALID [2022-04-28 06:01:08,952 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {25975#true} {26388#(< ~counter~0 45)} #96#return; {26388#(< ~counter~0 45)} is VALID [2022-04-28 06:01:08,952 INFO L290 TraceCheckUtils]: 30: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-28 06:01:08,953 INFO L290 TraceCheckUtils]: 29: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-28 06:01:08,953 INFO L290 TraceCheckUtils]: 28: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-28 06:01:08,953 INFO L272 TraceCheckUtils]: 27: Hoare triple {26388#(< ~counter~0 45)} call __VERIFIER_assert((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-28 06:01:08,953 INFO L290 TraceCheckUtils]: 26: Hoare triple {26388#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {26388#(< ~counter~0 45)} is VALID [2022-04-28 06:01:08,953 INFO L290 TraceCheckUtils]: 25: Hoare triple {26413#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26388#(< ~counter~0 45)} is VALID [2022-04-28 06:01:08,954 INFO L290 TraceCheckUtils]: 24: Hoare triple {26413#(< ~counter~0 44)} assume !!(0 != ~r~0); {26413#(< ~counter~0 44)} is VALID [2022-04-28 06:01:08,954 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {25975#true} {26413#(< ~counter~0 44)} #94#return; {26413#(< ~counter~0 44)} is VALID [2022-04-28 06:01:08,954 INFO L290 TraceCheckUtils]: 22: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-28 06:01:08,954 INFO L290 TraceCheckUtils]: 21: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-28 06:01:08,954 INFO L290 TraceCheckUtils]: 20: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-28 06:01:08,954 INFO L272 TraceCheckUtils]: 19: Hoare triple {26413#(< ~counter~0 44)} call __VERIFIER_assert((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-28 06:01:08,955 INFO L290 TraceCheckUtils]: 18: Hoare triple {26413#(< ~counter~0 44)} assume !!(#t~post6 < 50);havoc #t~post6; {26413#(< ~counter~0 44)} is VALID [2022-04-28 06:01:08,955 INFO L290 TraceCheckUtils]: 17: Hoare triple {26438#(< ~counter~0 43)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26413#(< ~counter~0 44)} is VALID [2022-04-28 06:01:08,955 INFO L290 TraceCheckUtils]: 16: Hoare triple {26438#(< ~counter~0 43)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {26438#(< ~counter~0 43)} is VALID [2022-04-28 06:01:08,956 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {25975#true} {26438#(< ~counter~0 43)} #92#return; {26438#(< ~counter~0 43)} is VALID [2022-04-28 06:01:08,956 INFO L290 TraceCheckUtils]: 14: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-28 06:01:08,956 INFO L290 TraceCheckUtils]: 13: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-28 06:01:08,956 INFO L290 TraceCheckUtils]: 12: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-28 06:01:08,956 INFO L272 TraceCheckUtils]: 11: Hoare triple {26438#(< ~counter~0 43)} 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-28 06:01:08,956 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {25975#true} {26438#(< ~counter~0 43)} #90#return; {26438#(< ~counter~0 43)} is VALID [2022-04-28 06:01:08,956 INFO L290 TraceCheckUtils]: 9: Hoare triple {25975#true} assume true; {25975#true} is VALID [2022-04-28 06:01:08,956 INFO L290 TraceCheckUtils]: 8: Hoare triple {25975#true} assume !(0 == ~cond); {25975#true} is VALID [2022-04-28 06:01:08,956 INFO L290 TraceCheckUtils]: 7: Hoare triple {25975#true} ~cond := #in~cond; {25975#true} is VALID [2022-04-28 06:01:08,957 INFO L272 TraceCheckUtils]: 6: Hoare triple {26438#(< ~counter~0 43)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {25975#true} is VALID [2022-04-28 06:01:08,957 INFO L290 TraceCheckUtils]: 5: Hoare triple {26438#(< ~counter~0 43)} 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 43)} is VALID [2022-04-28 06:01:08,957 INFO L272 TraceCheckUtils]: 4: Hoare triple {26438#(< ~counter~0 43)} call #t~ret9 := main(); {26438#(< ~counter~0 43)} is VALID [2022-04-28 06:01:08,957 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26438#(< ~counter~0 43)} {25975#true} #102#return; {26438#(< ~counter~0 43)} is VALID [2022-04-28 06:01:08,958 INFO L290 TraceCheckUtils]: 2: Hoare triple {26438#(< ~counter~0 43)} assume true; {26438#(< ~counter~0 43)} is VALID [2022-04-28 06:01:08,958 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 43)} is VALID [2022-04-28 06:01:08,958 INFO L272 TraceCheckUtils]: 0: Hoare triple {25975#true} call ULTIMATE.init(); {25975#true} is VALID [2022-04-28 06:01:08,958 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-28 06:01:08,958 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:01:08,959 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1539023772] [2022-04-28 06:01:08,959 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:01:08,959 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1084411996] [2022-04-28 06:01:08,959 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1084411996] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:01:08,959 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:01:08,959 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-28 06:01:08,959 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:01:08,959 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [987651692] [2022-04-28 06:01:08,959 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [987651692] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:01:08,959 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:01:08,959 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 06:01:08,959 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1296962735] [2022-04-28 06:01:08,959 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:01:08,960 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-28 06:01:08,960 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:01:08,960 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-28 06:01:09,012 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:01:09,013 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 06:01:09,013 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:01:09,013 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 06:01:09,013 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-28 06:01:09,013 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-28 06:01:09,728 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:01:09,728 INFO L93 Difference]: Finished difference Result 321 states and 421 transitions. [2022-04-28 06:01:09,728 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-28 06:01:09,728 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-28 06:01:09,728 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:01:09,729 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-28 06:01:09,730 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 177 transitions. [2022-04-28 06:01:09,730 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-28 06:01:09,731 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 177 transitions. [2022-04-28 06:01:09,731 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 177 transitions. [2022-04-28 06:01:09,858 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-28 06:01:09,862 INFO L225 Difference]: With dead ends: 321 [2022-04-28 06:01:09,862 INFO L226 Difference]: Without dead ends: 257 [2022-04-28 06:01:09,863 INFO L412 NwaCegarLoop]: 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-28 06:01:09,863 INFO L413 NwaCegarLoop]: 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-28 06:01:09,864 INFO L414 NwaCegarLoop]: 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-28 06:01:09,865 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 257 states. [2022-04-28 06:01:10,151 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 257 to 257. [2022-04-28 06:01:10,152 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:01:10,152 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-28 06:01:10,152 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-28 06:01:10,152 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-28 06:01:10,156 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:01:10,156 INFO L93 Difference]: Finished difference Result 257 states and 328 transitions. [2022-04-28 06:01:10,156 INFO L276 IsEmpty]: Start isEmpty. Operand 257 states and 328 transitions. [2022-04-28 06:01:10,156 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:01:10,156 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:01:10,157 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-28 06:01:10,157 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-28 06:01:10,160 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:01:10,160 INFO L93 Difference]: Finished difference Result 257 states and 328 transitions. [2022-04-28 06:01:10,160 INFO L276 IsEmpty]: Start isEmpty. Operand 257 states and 328 transitions. [2022-04-28 06:01:10,161 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:01:10,161 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:01:10,161 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:01:10,161 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:01:10,161 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-28 06:01:10,165 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 257 states to 257 states and 328 transitions. [2022-04-28 06:01:10,165 INFO L78 Accepts]: Start accepts. Automaton has 257 states and 328 transitions. Word has length 83 [2022-04-28 06:01:10,165 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:01:10,165 INFO L495 AbstractCegarLoop]: Abstraction has 257 states and 328 transitions. [2022-04-28 06:01:10,165 INFO L496 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-28 06:01:10,165 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 257 states and 328 transitions. [2022-04-28 06:01:20,498 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 328 edges. 326 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 06:01:20,498 INFO L276 IsEmpty]: Start isEmpty. Operand 257 states and 328 transitions. [2022-04-28 06:01:20,499 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 88 [2022-04-28 06:01:20,499 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:01:20,499 INFO L195 NwaCegarLoop]: 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-28 06:01:20,549 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2022-04-28 06:01:20,699 WARN L477 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-28 06:01:20,699 INFO L420 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:01:20,700 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:01:20,700 INFO L85 PathProgramCache]: Analyzing trace with hash 1698627479, now seen corresponding path program 1 times [2022-04-28 06:01:20,700 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:01:20,700 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [239233304] [2022-04-28 06:01:20,700 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:01:20,700 INFO L85 PathProgramCache]: Analyzing trace with hash 1698627479, now seen corresponding path program 2 times [2022-04-28 06:01:20,700 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:01:20,700 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1225024403] [2022-04-28 06:01:20,700 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:01:20,701 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:01:20,711 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:01:20,711 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [880340039] [2022-04-28 06:01:20,711 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:01:20,711 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:01:20,711 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:01:20,717 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:01:20,719 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2022-04-28 06:01:20,786 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:01:20,786 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:01:20,787 INFO L263 TraceCheckSpWp]: Trace formula consists of 221 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 06:01:20,806 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:01:20,807 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:01:21,269 INFO L272 TraceCheckUtils]: 0: Hoare triple {28174#true} call ULTIMATE.init(); {28174#true} is VALID [2022-04-28 06:01:21,270 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-28 06:01:21,270 INFO L290 TraceCheckUtils]: 2: Hoare triple {28182#(<= ~counter~0 0)} assume true; {28182#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:21,270 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28182#(<= ~counter~0 0)} {28174#true} #102#return; {28182#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:21,271 INFO L272 TraceCheckUtils]: 4: Hoare triple {28182#(<= ~counter~0 0)} call #t~ret9 := main(); {28182#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:21,271 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-28 06:01:21,271 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-28 06:01:21,272 INFO L290 TraceCheckUtils]: 7: Hoare triple {28182#(<= ~counter~0 0)} ~cond := #in~cond; {28182#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:21,272 INFO L290 TraceCheckUtils]: 8: Hoare triple {28182#(<= ~counter~0 0)} assume !(0 == ~cond); {28182#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:21,272 INFO L290 TraceCheckUtils]: 9: Hoare triple {28182#(<= ~counter~0 0)} assume true; {28182#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:21,273 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28182#(<= ~counter~0 0)} {28182#(<= ~counter~0 0)} #90#return; {28182#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:21,273 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-28 06:01:21,273 INFO L290 TraceCheckUtils]: 12: Hoare triple {28182#(<= ~counter~0 0)} ~cond := #in~cond; {28182#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:21,273 INFO L290 TraceCheckUtils]: 13: Hoare triple {28182#(<= ~counter~0 0)} assume !(0 == ~cond); {28182#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:21,274 INFO L290 TraceCheckUtils]: 14: Hoare triple {28182#(<= ~counter~0 0)} assume true; {28182#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:21,274 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {28182#(<= ~counter~0 0)} {28182#(<= ~counter~0 0)} #92#return; {28182#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:21,274 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-28 06:01:21,275 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-28 06:01:21,276 INFO L290 TraceCheckUtils]: 18: Hoare triple {28231#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {28231#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:21,276 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-28 06:01:21,276 INFO L290 TraceCheckUtils]: 20: Hoare triple {28231#(<= ~counter~0 1)} ~cond := #in~cond; {28231#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:21,277 INFO L290 TraceCheckUtils]: 21: Hoare triple {28231#(<= ~counter~0 1)} assume !(0 == ~cond); {28231#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:21,277 INFO L290 TraceCheckUtils]: 22: Hoare triple {28231#(<= ~counter~0 1)} assume true; {28231#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:21,277 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {28231#(<= ~counter~0 1)} {28231#(<= ~counter~0 1)} #94#return; {28231#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:21,278 INFO L290 TraceCheckUtils]: 24: Hoare triple {28231#(<= ~counter~0 1)} assume !!(0 != ~r~0); {28231#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:21,278 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-28 06:01:21,279 INFO L290 TraceCheckUtils]: 26: Hoare triple {28256#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {28256#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:21,279 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-28 06:01:21,279 INFO L290 TraceCheckUtils]: 28: Hoare triple {28256#(<= ~counter~0 2)} ~cond := #in~cond; {28256#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:21,280 INFO L290 TraceCheckUtils]: 29: Hoare triple {28256#(<= ~counter~0 2)} assume !(0 == ~cond); {28256#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:21,280 INFO L290 TraceCheckUtils]: 30: Hoare triple {28256#(<= ~counter~0 2)} assume true; {28256#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:21,280 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {28256#(<= ~counter~0 2)} {28256#(<= ~counter~0 2)} #96#return; {28256#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:21,281 INFO L290 TraceCheckUtils]: 32: Hoare triple {28256#(<= ~counter~0 2)} assume !(~r~0 > 0); {28256#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:21,281 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-28 06:01:21,281 INFO L290 TraceCheckUtils]: 34: Hoare triple {28281#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {28281#(<= ~counter~0 3)} is VALID [2022-04-28 06:01:21,282 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-28 06:01:21,282 INFO L290 TraceCheckUtils]: 36: Hoare triple {28281#(<= ~counter~0 3)} ~cond := #in~cond; {28281#(<= ~counter~0 3)} is VALID [2022-04-28 06:01:21,282 INFO L290 TraceCheckUtils]: 37: Hoare triple {28281#(<= ~counter~0 3)} assume !(0 == ~cond); {28281#(<= ~counter~0 3)} is VALID [2022-04-28 06:01:21,283 INFO L290 TraceCheckUtils]: 38: Hoare triple {28281#(<= ~counter~0 3)} assume true; {28281#(<= ~counter~0 3)} is VALID [2022-04-28 06:01:21,283 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {28281#(<= ~counter~0 3)} {28281#(<= ~counter~0 3)} #98#return; {28281#(<= ~counter~0 3)} is VALID [2022-04-28 06:01:21,284 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-28 06:01:21,284 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-28 06:01:21,284 INFO L290 TraceCheckUtils]: 42: Hoare triple {28306#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {28306#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:21,285 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-28 06:01:21,285 INFO L290 TraceCheckUtils]: 44: Hoare triple {28306#(<= ~counter~0 4)} ~cond := #in~cond; {28306#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:21,285 INFO L290 TraceCheckUtils]: 45: Hoare triple {28306#(<= ~counter~0 4)} assume !(0 == ~cond); {28306#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:21,286 INFO L290 TraceCheckUtils]: 46: Hoare triple {28306#(<= ~counter~0 4)} assume true; {28306#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:21,286 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {28306#(<= ~counter~0 4)} {28306#(<= ~counter~0 4)} #98#return; {28306#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:21,286 INFO L290 TraceCheckUtils]: 48: Hoare triple {28306#(<= ~counter~0 4)} assume !(~r~0 < 0); {28306#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:21,287 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-28 06:01:21,287 INFO L290 TraceCheckUtils]: 50: Hoare triple {28331#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {28331#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:21,288 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-28 06:01:21,288 INFO L290 TraceCheckUtils]: 52: Hoare triple {28331#(<= ~counter~0 5)} ~cond := #in~cond; {28331#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:21,288 INFO L290 TraceCheckUtils]: 53: Hoare triple {28331#(<= ~counter~0 5)} assume !(0 == ~cond); {28331#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:21,289 INFO L290 TraceCheckUtils]: 54: Hoare triple {28331#(<= ~counter~0 5)} assume true; {28331#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:21,289 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {28331#(<= ~counter~0 5)} {28331#(<= ~counter~0 5)} #94#return; {28331#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:21,289 INFO L290 TraceCheckUtils]: 56: Hoare triple {28331#(<= ~counter~0 5)} assume !!(0 != ~r~0); {28331#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:21,290 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-28 06:01:21,290 INFO L290 TraceCheckUtils]: 58: Hoare triple {28356#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {28356#(<= ~counter~0 6)} is VALID [2022-04-28 06:01:21,291 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-28 06:01:21,291 INFO L290 TraceCheckUtils]: 60: Hoare triple {28356#(<= ~counter~0 6)} ~cond := #in~cond; {28356#(<= ~counter~0 6)} is VALID [2022-04-28 06:01:21,291 INFO L290 TraceCheckUtils]: 61: Hoare triple {28356#(<= ~counter~0 6)} assume !(0 == ~cond); {28356#(<= ~counter~0 6)} is VALID [2022-04-28 06:01:21,292 INFO L290 TraceCheckUtils]: 62: Hoare triple {28356#(<= ~counter~0 6)} assume true; {28356#(<= ~counter~0 6)} is VALID [2022-04-28 06:01:21,292 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {28356#(<= ~counter~0 6)} {28356#(<= ~counter~0 6)} #96#return; {28356#(<= ~counter~0 6)} is VALID [2022-04-28 06:01:21,292 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-28 06:01:21,293 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-28 06:01:21,293 INFO L290 TraceCheckUtils]: 66: Hoare triple {28381#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {28381#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:21,294 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-28 06:01:21,294 INFO L290 TraceCheckUtils]: 68: Hoare triple {28381#(<= ~counter~0 7)} ~cond := #in~cond; {28381#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:21,294 INFO L290 TraceCheckUtils]: 69: Hoare triple {28381#(<= ~counter~0 7)} assume !(0 == ~cond); {28381#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:21,294 INFO L290 TraceCheckUtils]: 70: Hoare triple {28381#(<= ~counter~0 7)} assume true; {28381#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:21,295 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {28381#(<= ~counter~0 7)} {28381#(<= ~counter~0 7)} #96#return; {28381#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:21,311 INFO L290 TraceCheckUtils]: 72: Hoare triple {28381#(<= ~counter~0 7)} assume !(~r~0 > 0); {28381#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:21,312 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-28 06:01:21,313 INFO L290 TraceCheckUtils]: 74: Hoare triple {28406#(<= ~counter~0 8)} assume !!(#t~post8 < 50);havoc #t~post8; {28406#(<= ~counter~0 8)} is VALID [2022-04-28 06:01:21,313 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-28 06:01:21,314 INFO L290 TraceCheckUtils]: 76: Hoare triple {28406#(<= ~counter~0 8)} ~cond := #in~cond; {28406#(<= ~counter~0 8)} is VALID [2022-04-28 06:01:21,314 INFO L290 TraceCheckUtils]: 77: Hoare triple {28406#(<= ~counter~0 8)} assume !(0 == ~cond); {28406#(<= ~counter~0 8)} is VALID [2022-04-28 06:01:21,314 INFO L290 TraceCheckUtils]: 78: Hoare triple {28406#(<= ~counter~0 8)} assume true; {28406#(<= ~counter~0 8)} is VALID [2022-04-28 06:01:21,315 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {28406#(<= ~counter~0 8)} {28406#(<= ~counter~0 8)} #98#return; {28406#(<= ~counter~0 8)} is VALID [2022-04-28 06:01:21,315 INFO L290 TraceCheckUtils]: 80: Hoare triple {28406#(<= ~counter~0 8)} assume !(~r~0 < 0); {28406#(<= ~counter~0 8)} is VALID [2022-04-28 06:01:21,315 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-28 06:01:21,316 INFO L290 TraceCheckUtils]: 82: Hoare triple {28431#(<= |main_#t~post6| 8)} assume !(#t~post6 < 50);havoc #t~post6; {28175#false} is VALID [2022-04-28 06:01:21,316 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-28 06:01:21,316 INFO L290 TraceCheckUtils]: 84: Hoare triple {28175#false} ~cond := #in~cond; {28175#false} is VALID [2022-04-28 06:01:21,316 INFO L290 TraceCheckUtils]: 85: Hoare triple {28175#false} assume 0 == ~cond; {28175#false} is VALID [2022-04-28 06:01:21,316 INFO L290 TraceCheckUtils]: 86: Hoare triple {28175#false} assume !false; {28175#false} is VALID [2022-04-28 06:01:21,316 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-28 06:01:21,316 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:01:21,814 INFO L290 TraceCheckUtils]: 86: Hoare triple {28175#false} assume !false; {28175#false} is VALID [2022-04-28 06:01:21,815 INFO L290 TraceCheckUtils]: 85: Hoare triple {28175#false} assume 0 == ~cond; {28175#false} is VALID [2022-04-28 06:01:21,815 INFO L290 TraceCheckUtils]: 84: Hoare triple {28175#false} ~cond := #in~cond; {28175#false} is VALID [2022-04-28 06:01:21,815 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-28 06:01:21,815 INFO L290 TraceCheckUtils]: 82: Hoare triple {28459#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {28175#false} is VALID [2022-04-28 06:01:21,815 INFO L290 TraceCheckUtils]: 81: Hoare triple {28463#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {28459#(< |main_#t~post6| 50)} is VALID [2022-04-28 06:01:21,816 INFO L290 TraceCheckUtils]: 80: Hoare triple {28463#(< ~counter~0 50)} assume !(~r~0 < 0); {28463#(< ~counter~0 50)} is VALID [2022-04-28 06:01:21,816 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {28174#true} {28463#(< ~counter~0 50)} #98#return; {28463#(< ~counter~0 50)} is VALID [2022-04-28 06:01:21,816 INFO L290 TraceCheckUtils]: 78: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-28 06:01:21,816 INFO L290 TraceCheckUtils]: 77: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-28 06:01:21,816 INFO L290 TraceCheckUtils]: 76: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-28 06:01:21,817 INFO L272 TraceCheckUtils]: 75: Hoare triple {28463#(< ~counter~0 50)} call __VERIFIER_assert((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-28 06:01:21,817 INFO L290 TraceCheckUtils]: 74: Hoare triple {28463#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {28463#(< ~counter~0 50)} is VALID [2022-04-28 06:01:21,818 INFO L290 TraceCheckUtils]: 73: Hoare triple {28488#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28463#(< ~counter~0 50)} is VALID [2022-04-28 06:01:21,818 INFO L290 TraceCheckUtils]: 72: Hoare triple {28488#(< ~counter~0 49)} assume !(~r~0 > 0); {28488#(< ~counter~0 49)} is VALID [2022-04-28 06:01:21,818 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {28174#true} {28488#(< ~counter~0 49)} #96#return; {28488#(< ~counter~0 49)} is VALID [2022-04-28 06:01:21,819 INFO L290 TraceCheckUtils]: 70: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-28 06:01:21,819 INFO L290 TraceCheckUtils]: 69: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-28 06:01:21,819 INFO L290 TraceCheckUtils]: 68: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-28 06:01:21,819 INFO L272 TraceCheckUtils]: 67: Hoare triple {28488#(< ~counter~0 49)} call __VERIFIER_assert((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-28 06:01:21,819 INFO L290 TraceCheckUtils]: 66: Hoare triple {28488#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {28488#(< ~counter~0 49)} is VALID [2022-04-28 06:01:21,820 INFO L290 TraceCheckUtils]: 65: Hoare triple {28513#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28488#(< ~counter~0 49)} is VALID [2022-04-28 06:01:21,820 INFO L290 TraceCheckUtils]: 64: Hoare triple {28513#(< ~counter~0 48)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {28513#(< ~counter~0 48)} is VALID [2022-04-28 06:01:21,820 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {28174#true} {28513#(< ~counter~0 48)} #96#return; {28513#(< ~counter~0 48)} is VALID [2022-04-28 06:01:21,820 INFO L290 TraceCheckUtils]: 62: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-28 06:01:21,821 INFO L290 TraceCheckUtils]: 61: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-28 06:01:21,821 INFO L290 TraceCheckUtils]: 60: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-28 06:01:21,821 INFO L272 TraceCheckUtils]: 59: Hoare triple {28513#(< ~counter~0 48)} call __VERIFIER_assert((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-28 06:01:21,821 INFO L290 TraceCheckUtils]: 58: Hoare triple {28513#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {28513#(< ~counter~0 48)} is VALID [2022-04-28 06:01:21,821 INFO L290 TraceCheckUtils]: 57: Hoare triple {28538#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28513#(< ~counter~0 48)} is VALID [2022-04-28 06:01:21,822 INFO L290 TraceCheckUtils]: 56: Hoare triple {28538#(< ~counter~0 47)} assume !!(0 != ~r~0); {28538#(< ~counter~0 47)} is VALID [2022-04-28 06:01:21,822 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {28174#true} {28538#(< ~counter~0 47)} #94#return; {28538#(< ~counter~0 47)} is VALID [2022-04-28 06:01:21,822 INFO L290 TraceCheckUtils]: 54: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-28 06:01:21,822 INFO L290 TraceCheckUtils]: 53: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-28 06:01:21,822 INFO L290 TraceCheckUtils]: 52: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-28 06:01:21,823 INFO L272 TraceCheckUtils]: 51: Hoare triple {28538#(< ~counter~0 47)} call __VERIFIER_assert((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-28 06:01:21,823 INFO L290 TraceCheckUtils]: 50: Hoare triple {28538#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {28538#(< ~counter~0 47)} is VALID [2022-04-28 06:01:21,823 INFO L290 TraceCheckUtils]: 49: Hoare triple {28563#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {28538#(< ~counter~0 47)} is VALID [2022-04-28 06:01:21,824 INFO L290 TraceCheckUtils]: 48: Hoare triple {28563#(< ~counter~0 46)} assume !(~r~0 < 0); {28563#(< ~counter~0 46)} is VALID [2022-04-28 06:01:21,824 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {28174#true} {28563#(< ~counter~0 46)} #98#return; {28563#(< ~counter~0 46)} is VALID [2022-04-28 06:01:21,824 INFO L290 TraceCheckUtils]: 46: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-28 06:01:21,824 INFO L290 TraceCheckUtils]: 45: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-28 06:01:21,824 INFO L290 TraceCheckUtils]: 44: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-28 06:01:21,824 INFO L272 TraceCheckUtils]: 43: Hoare triple {28563#(< ~counter~0 46)} call __VERIFIER_assert((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-28 06:01:21,825 INFO L290 TraceCheckUtils]: 42: Hoare triple {28563#(< ~counter~0 46)} assume !!(#t~post8 < 50);havoc #t~post8; {28563#(< ~counter~0 46)} is VALID [2022-04-28 06:01:21,825 INFO L290 TraceCheckUtils]: 41: Hoare triple {28588#(< ~counter~0 45)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28563#(< ~counter~0 46)} is VALID [2022-04-28 06:01:21,825 INFO L290 TraceCheckUtils]: 40: Hoare triple {28588#(< ~counter~0 45)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {28588#(< ~counter~0 45)} is VALID [2022-04-28 06:01:21,826 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {28174#true} {28588#(< ~counter~0 45)} #98#return; {28588#(< ~counter~0 45)} is VALID [2022-04-28 06:01:21,826 INFO L290 TraceCheckUtils]: 38: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-28 06:01:21,826 INFO L290 TraceCheckUtils]: 37: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-28 06:01:21,826 INFO L290 TraceCheckUtils]: 36: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-28 06:01:21,826 INFO L272 TraceCheckUtils]: 35: Hoare triple {28588#(< ~counter~0 45)} call __VERIFIER_assert((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-28 06:01:21,826 INFO L290 TraceCheckUtils]: 34: Hoare triple {28588#(< ~counter~0 45)} assume !!(#t~post8 < 50);havoc #t~post8; {28588#(< ~counter~0 45)} is VALID [2022-04-28 06:01:21,827 INFO L290 TraceCheckUtils]: 33: Hoare triple {28613#(< ~counter~0 44)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28588#(< ~counter~0 45)} is VALID [2022-04-28 06:01:21,827 INFO L290 TraceCheckUtils]: 32: Hoare triple {28613#(< ~counter~0 44)} assume !(~r~0 > 0); {28613#(< ~counter~0 44)} is VALID [2022-04-28 06:01:21,828 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {28174#true} {28613#(< ~counter~0 44)} #96#return; {28613#(< ~counter~0 44)} is VALID [2022-04-28 06:01:21,828 INFO L290 TraceCheckUtils]: 30: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-28 06:01:21,828 INFO L290 TraceCheckUtils]: 29: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-28 06:01:21,828 INFO L290 TraceCheckUtils]: 28: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-28 06:01:21,828 INFO L272 TraceCheckUtils]: 27: Hoare triple {28613#(< ~counter~0 44)} call __VERIFIER_assert((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-28 06:01:21,828 INFO L290 TraceCheckUtils]: 26: Hoare triple {28613#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {28613#(< ~counter~0 44)} is VALID [2022-04-28 06:01:21,829 INFO L290 TraceCheckUtils]: 25: Hoare triple {28638#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28613#(< ~counter~0 44)} is VALID [2022-04-28 06:01:21,829 INFO L290 TraceCheckUtils]: 24: Hoare triple {28638#(< ~counter~0 43)} assume !!(0 != ~r~0); {28638#(< ~counter~0 43)} is VALID [2022-04-28 06:01:21,830 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {28174#true} {28638#(< ~counter~0 43)} #94#return; {28638#(< ~counter~0 43)} is VALID [2022-04-28 06:01:21,830 INFO L290 TraceCheckUtils]: 22: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-28 06:01:21,830 INFO L290 TraceCheckUtils]: 21: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-28 06:01:21,830 INFO L290 TraceCheckUtils]: 20: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-28 06:01:21,830 INFO L272 TraceCheckUtils]: 19: Hoare triple {28638#(< ~counter~0 43)} call __VERIFIER_assert((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-28 06:01:21,830 INFO L290 TraceCheckUtils]: 18: Hoare triple {28638#(< ~counter~0 43)} assume !!(#t~post6 < 50);havoc #t~post6; {28638#(< ~counter~0 43)} is VALID [2022-04-28 06:01:21,831 INFO L290 TraceCheckUtils]: 17: Hoare triple {28663#(< ~counter~0 42)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {28638#(< ~counter~0 43)} is VALID [2022-04-28 06:01:21,831 INFO L290 TraceCheckUtils]: 16: Hoare triple {28663#(< ~counter~0 42)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {28663#(< ~counter~0 42)} is VALID [2022-04-28 06:01:21,831 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {28174#true} {28663#(< ~counter~0 42)} #92#return; {28663#(< ~counter~0 42)} is VALID [2022-04-28 06:01:21,831 INFO L290 TraceCheckUtils]: 14: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-28 06:01:21,832 INFO L290 TraceCheckUtils]: 13: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-28 06:01:21,832 INFO L290 TraceCheckUtils]: 12: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-28 06:01:21,832 INFO L272 TraceCheckUtils]: 11: Hoare triple {28663#(< ~counter~0 42)} 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-28 06:01:21,832 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28174#true} {28663#(< ~counter~0 42)} #90#return; {28663#(< ~counter~0 42)} is VALID [2022-04-28 06:01:21,832 INFO L290 TraceCheckUtils]: 9: Hoare triple {28174#true} assume true; {28174#true} is VALID [2022-04-28 06:01:21,832 INFO L290 TraceCheckUtils]: 8: Hoare triple {28174#true} assume !(0 == ~cond); {28174#true} is VALID [2022-04-28 06:01:21,832 INFO L290 TraceCheckUtils]: 7: Hoare triple {28174#true} ~cond := #in~cond; {28174#true} is VALID [2022-04-28 06:01:21,832 INFO L272 TraceCheckUtils]: 6: Hoare triple {28663#(< ~counter~0 42)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {28174#true} is VALID [2022-04-28 06:01:21,833 INFO L290 TraceCheckUtils]: 5: Hoare triple {28663#(< ~counter~0 42)} 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 42)} is VALID [2022-04-28 06:01:21,833 INFO L272 TraceCheckUtils]: 4: Hoare triple {28663#(< ~counter~0 42)} call #t~ret9 := main(); {28663#(< ~counter~0 42)} is VALID [2022-04-28 06:01:21,833 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28663#(< ~counter~0 42)} {28174#true} #102#return; {28663#(< ~counter~0 42)} is VALID [2022-04-28 06:01:21,833 INFO L290 TraceCheckUtils]: 2: Hoare triple {28663#(< ~counter~0 42)} assume true; {28663#(< ~counter~0 42)} is VALID [2022-04-28 06:01:21,834 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 42)} is VALID [2022-04-28 06:01:21,834 INFO L272 TraceCheckUtils]: 0: Hoare triple {28174#true} call ULTIMATE.init(); {28174#true} is VALID [2022-04-28 06:01:21,834 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-28 06:01:21,834 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:01:21,834 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1225024403] [2022-04-28 06:01:21,834 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:01:21,835 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [880340039] [2022-04-28 06:01:21,835 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [880340039] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:01:21,835 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:01:21,835 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-28 06:01:21,835 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:01:21,835 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [239233304] [2022-04-28 06:01:21,835 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [239233304] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:01:21,835 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:01:21,835 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 06:01:21,835 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1150158095] [2022-04-28 06:01:21,835 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:01:21,836 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-28 06:01:21,847 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:01:21,847 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-28 06:01:21,913 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-28 06:01:21,913 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 06:01:21,913 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:01:21,913 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 06:01:21,913 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-28 06:01:21,913 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-28 06:01:22,721 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:01:22,721 INFO L93 Difference]: Finished difference Result 292 states and 372 transitions. [2022-04-28 06:01:22,721 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-28 06:01:22,721 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-28 06:01:22,722 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:01:22,722 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-28 06:01:22,736 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 175 transitions. [2022-04-28 06:01:22,736 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-28 06:01:22,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 175 transitions. [2022-04-28 06:01:22,738 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 175 transitions. [2022-04-28 06:01:22,873 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 175 edges. 175 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:01:22,877 INFO L225 Difference]: With dead ends: 292 [2022-04-28 06:01:22,877 INFO L226 Difference]: Without dead ends: 287 [2022-04-28 06:01:22,878 INFO L412 NwaCegarLoop]: 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-28 06:01:22,879 INFO L413 NwaCegarLoop]: 54 mSDtfsCounter, 106 mSDsluCounter, 157 mSDsCounter, 0 mSdLazyCounter, 96 mSolverCounterSat, 92 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s 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.2s IncrementalHoareTripleChecker+Time [2022-04-28 06:01:22,879 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [106 Valid, 211 Invalid, 188 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [92 Valid, 96 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 06:01:22,879 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 287 states. [2022-04-28 06:01:23,211 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 287 to 278. [2022-04-28 06:01:23,212 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:01:23,212 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-28 06:01:23,214 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-28 06:01:23,224 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-28 06:01:23,227 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:01:23,228 INFO L93 Difference]: Finished difference Result 287 states and 366 transitions. [2022-04-28 06:01:23,228 INFO L276 IsEmpty]: Start isEmpty. Operand 287 states and 366 transitions. [2022-04-28 06:01:23,228 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:01:23,228 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:01:23,229 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-28 06:01:23,230 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-28 06:01:23,247 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:01:23,247 INFO L93 Difference]: Finished difference Result 287 states and 366 transitions. [2022-04-28 06:01:23,247 INFO L276 IsEmpty]: Start isEmpty. Operand 287 states and 366 transitions. [2022-04-28 06:01:23,248 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:01:23,248 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:01:23,248 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:01:23,248 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:01:23,248 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-28 06:01:23,252 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 278 states to 278 states and 356 transitions. [2022-04-28 06:01:23,252 INFO L78 Accepts]: Start accepts. Automaton has 278 states and 356 transitions. Word has length 87 [2022-04-28 06:01:23,253 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:01:23,261 INFO L495 AbstractCegarLoop]: Abstraction has 278 states and 356 transitions. [2022-04-28 06:01:23,261 INFO L496 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-28 06:01:23,261 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 278 states and 356 transitions. [2022-04-28 06:01:33,544 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 356 edges. 354 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 06:01:33,544 INFO L276 IsEmpty]: Start isEmpty. Operand 278 states and 356 transitions. [2022-04-28 06:01:33,545 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 90 [2022-04-28 06:01:33,545 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:01:33,545 INFO L195 NwaCegarLoop]: 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-28 06:01:33,565 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Forceful destruction successful, exit code 0 [2022-04-28 06:01:33,745 WARN L477 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-28 06:01:33,745 INFO L420 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:01:33,746 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:01:33,746 INFO L85 PathProgramCache]: Analyzing trace with hash 2133755932, now seen corresponding path program 3 times [2022-04-28 06:01:33,746 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:01:33,746 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [793234745] [2022-04-28 06:01:33,746 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:01:33,746 INFO L85 PathProgramCache]: Analyzing trace with hash 2133755932, now seen corresponding path program 4 times [2022-04-28 06:01:33,746 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:01:33,746 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2030970001] [2022-04-28 06:01:33,747 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:01:33,747 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:01:33,774 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:01:33,775 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1544925439] [2022-04-28 06:01:33,775 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 06:01:33,775 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:01:33,775 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:01:33,780 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:01:33,802 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Waiting until timeout for monitored process [2022-04-28 06:01:33,869 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 06:01:33,869 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:01:33,870 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-28 06:01:33,889 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:01:33,890 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:01:34,144 INFO L272 TraceCheckUtils]: 0: Hoare triple {30441#true} call ULTIMATE.init(); {30441#true} is VALID [2022-04-28 06:01:34,144 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-28 06:01:34,144 INFO L290 TraceCheckUtils]: 2: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,144 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30441#true} {30441#true} #102#return; {30441#true} is VALID [2022-04-28 06:01:34,145 INFO L272 TraceCheckUtils]: 4: Hoare triple {30441#true} call #t~ret9 := main(); {30441#true} is VALID [2022-04-28 06:01:34,145 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-28 06:01:34,145 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-28 06:01:34,145 INFO L290 TraceCheckUtils]: 7: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,145 INFO L290 TraceCheckUtils]: 8: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,145 INFO L290 TraceCheckUtils]: 9: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,145 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30441#true} {30441#true} #90#return; {30441#true} is VALID [2022-04-28 06:01:34,145 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-28 06:01:34,145 INFO L290 TraceCheckUtils]: 12: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,145 INFO L290 TraceCheckUtils]: 13: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,145 INFO L290 TraceCheckUtils]: 14: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,145 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {30441#true} {30441#true} #92#return; {30441#true} is VALID [2022-04-28 06:01:34,146 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-28 06:01:34,146 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-28 06:01:34,146 INFO L290 TraceCheckUtils]: 18: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,146 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-28 06:01:34,146 INFO L290 TraceCheckUtils]: 20: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,147 INFO L290 TraceCheckUtils]: 21: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,147 INFO L290 TraceCheckUtils]: 22: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,147 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #94#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,148 INFO L290 TraceCheckUtils]: 24: Hoare triple {30494#(<= main_~v~0 1)} assume !!(0 != ~r~0); {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,148 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-28 06:01:34,148 INFO L290 TraceCheckUtils]: 26: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post7 < 50);havoc #t~post7; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,148 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-28 06:01:34,148 INFO L290 TraceCheckUtils]: 28: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,148 INFO L290 TraceCheckUtils]: 29: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,148 INFO L290 TraceCheckUtils]: 30: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,149 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #96#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,149 INFO L290 TraceCheckUtils]: 32: Hoare triple {30494#(<= main_~v~0 1)} assume !(~r~0 > 0); {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,149 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-28 06:01:34,150 INFO L290 TraceCheckUtils]: 34: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post8 < 50);havoc #t~post8; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,150 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-28 06:01:34,150 INFO L290 TraceCheckUtils]: 36: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,150 INFO L290 TraceCheckUtils]: 37: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,150 INFO L290 TraceCheckUtils]: 38: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,151 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #98#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,151 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-28 06:01:34,151 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-28 06:01:34,151 INFO L290 TraceCheckUtils]: 42: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post8 < 50);havoc #t~post8; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,151 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-28 06:01:34,152 INFO L290 TraceCheckUtils]: 44: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,152 INFO L290 TraceCheckUtils]: 45: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,152 INFO L290 TraceCheckUtils]: 46: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,152 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #98#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,152 INFO L290 TraceCheckUtils]: 48: Hoare triple {30494#(<= main_~v~0 1)} assume !(~r~0 < 0); {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,153 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-28 06:01:34,153 INFO L290 TraceCheckUtils]: 50: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,153 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-28 06:01:34,153 INFO L290 TraceCheckUtils]: 52: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,153 INFO L290 TraceCheckUtils]: 53: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,153 INFO L290 TraceCheckUtils]: 54: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,154 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #94#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,154 INFO L290 TraceCheckUtils]: 56: Hoare triple {30494#(<= main_~v~0 1)} assume !!(0 != ~r~0); {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,154 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-28 06:01:34,155 INFO L290 TraceCheckUtils]: 58: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post7 < 50);havoc #t~post7; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,155 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-28 06:01:34,155 INFO L290 TraceCheckUtils]: 60: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,155 INFO L290 TraceCheckUtils]: 61: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,155 INFO L290 TraceCheckUtils]: 62: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,155 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #96#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,156 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-28 06:01:34,156 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-28 06:01:34,157 INFO L290 TraceCheckUtils]: 66: Hoare triple {30639#(< 0 (+ main_~r~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-28 06:01:34,157 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-28 06:01:34,157 INFO L290 TraceCheckUtils]: 68: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,157 INFO L290 TraceCheckUtils]: 69: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,157 INFO L290 TraceCheckUtils]: 70: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,157 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-28 06:01:34,158 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-28 06:01:34,158 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-28 06:01:34,158 INFO L290 TraceCheckUtils]: 74: Hoare triple {30639#(< 0 (+ main_~r~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-28 06:01:34,158 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-28 06:01:34,158 INFO L290 TraceCheckUtils]: 76: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,159 INFO L290 TraceCheckUtils]: 77: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,159 INFO L290 TraceCheckUtils]: 78: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,159 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-28 06:01:34,160 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-28 06:01:34,160 INFO L290 TraceCheckUtils]: 81: Hoare triple {30442#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {30442#false} is VALID [2022-04-28 06:01:34,160 INFO L290 TraceCheckUtils]: 82: Hoare triple {30442#false} assume !(#t~post8 < 50);havoc #t~post8; {30442#false} is VALID [2022-04-28 06:01:34,160 INFO L290 TraceCheckUtils]: 83: Hoare triple {30442#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30442#false} is VALID [2022-04-28 06:01:34,160 INFO L290 TraceCheckUtils]: 84: Hoare triple {30442#false} assume !(#t~post6 < 50);havoc #t~post6; {30442#false} is VALID [2022-04-28 06:01:34,160 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-28 06:01:34,160 INFO L290 TraceCheckUtils]: 86: Hoare triple {30442#false} ~cond := #in~cond; {30442#false} is VALID [2022-04-28 06:01:34,161 INFO L290 TraceCheckUtils]: 87: Hoare triple {30442#false} assume 0 == ~cond; {30442#false} is VALID [2022-04-28 06:01:34,161 INFO L290 TraceCheckUtils]: 88: Hoare triple {30442#false} assume !false; {30442#false} is VALID [2022-04-28 06:01:34,161 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-28 06:01:34,161 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:01:34,452 INFO L290 TraceCheckUtils]: 88: Hoare triple {30442#false} assume !false; {30442#false} is VALID [2022-04-28 06:01:34,453 INFO L290 TraceCheckUtils]: 87: Hoare triple {30442#false} assume 0 == ~cond; {30442#false} is VALID [2022-04-28 06:01:34,453 INFO L290 TraceCheckUtils]: 86: Hoare triple {30442#false} ~cond := #in~cond; {30442#false} is VALID [2022-04-28 06:01:34,453 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-28 06:01:34,453 INFO L290 TraceCheckUtils]: 84: Hoare triple {30442#false} assume !(#t~post6 < 50);havoc #t~post6; {30442#false} is VALID [2022-04-28 06:01:34,453 INFO L290 TraceCheckUtils]: 83: Hoare triple {30442#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30442#false} is VALID [2022-04-28 06:01:34,453 INFO L290 TraceCheckUtils]: 82: Hoare triple {30442#false} assume !(#t~post8 < 50);havoc #t~post8; {30442#false} is VALID [2022-04-28 06:01:34,453 INFO L290 TraceCheckUtils]: 81: Hoare triple {30442#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {30442#false} is VALID [2022-04-28 06:01:34,454 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-28 06:01:34,455 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-28 06:01:34,455 INFO L290 TraceCheckUtils]: 78: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,455 INFO L290 TraceCheckUtils]: 77: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,455 INFO L290 TraceCheckUtils]: 76: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,455 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-28 06:01:34,455 INFO L290 TraceCheckUtils]: 74: Hoare triple {30639#(< 0 (+ main_~r~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-28 06:01:34,456 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-28 06:01:34,456 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-28 06:01:34,457 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-28 06:01:34,457 INFO L290 TraceCheckUtils]: 70: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,457 INFO L290 TraceCheckUtils]: 69: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,457 INFO L290 TraceCheckUtils]: 68: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,457 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-28 06:01:34,457 INFO L290 TraceCheckUtils]: 66: Hoare triple {30639#(< 0 (+ main_~r~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {30639#(< 0 (+ main_~r~0 1))} is VALID [2022-04-28 06:01:34,457 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-28 06:01:34,458 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-28 06:01:34,459 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #96#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,459 INFO L290 TraceCheckUtils]: 62: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,459 INFO L290 TraceCheckUtils]: 61: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,459 INFO L290 TraceCheckUtils]: 60: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,459 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-28 06:01:34,459 INFO L290 TraceCheckUtils]: 58: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post7 < 50);havoc #t~post7; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,459 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-28 06:01:34,460 INFO L290 TraceCheckUtils]: 56: Hoare triple {30494#(<= main_~v~0 1)} assume !!(0 != ~r~0); {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,460 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #94#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,460 INFO L290 TraceCheckUtils]: 54: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,460 INFO L290 TraceCheckUtils]: 53: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,460 INFO L290 TraceCheckUtils]: 52: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,460 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-28 06:01:34,461 INFO L290 TraceCheckUtils]: 50: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,461 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-28 06:01:34,461 INFO L290 TraceCheckUtils]: 48: Hoare triple {30494#(<= main_~v~0 1)} assume !(~r~0 < 0); {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,462 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #98#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,462 INFO L290 TraceCheckUtils]: 46: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,475 INFO L290 TraceCheckUtils]: 45: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,475 INFO L290 TraceCheckUtils]: 44: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,475 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-28 06:01:34,476 INFO L290 TraceCheckUtils]: 42: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post8 < 50);havoc #t~post8; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,476 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-28 06:01:34,486 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-28 06:01:34,486 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #98#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,487 INFO L290 TraceCheckUtils]: 38: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,487 INFO L290 TraceCheckUtils]: 37: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,487 INFO L290 TraceCheckUtils]: 36: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,487 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-28 06:01:34,487 INFO L290 TraceCheckUtils]: 34: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post8 < 50);havoc #t~post8; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,487 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-28 06:01:34,488 INFO L290 TraceCheckUtils]: 32: Hoare triple {30494#(<= main_~v~0 1)} assume !(~r~0 > 0); {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,488 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #96#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,488 INFO L290 TraceCheckUtils]: 30: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,488 INFO L290 TraceCheckUtils]: 29: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,488 INFO L290 TraceCheckUtils]: 28: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,488 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-28 06:01:34,489 INFO L290 TraceCheckUtils]: 26: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post7 < 50);havoc #t~post7; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,489 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-28 06:01:34,489 INFO L290 TraceCheckUtils]: 24: Hoare triple {30494#(<= main_~v~0 1)} assume !!(0 != ~r~0); {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,490 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {30441#true} {30494#(<= main_~v~0 1)} #94#return; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,490 INFO L290 TraceCheckUtils]: 22: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,490 INFO L290 TraceCheckUtils]: 21: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,490 INFO L290 TraceCheckUtils]: 20: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,490 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-28 06:01:34,490 INFO L290 TraceCheckUtils]: 18: Hoare triple {30494#(<= main_~v~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {30494#(<= main_~v~0 1)} is VALID [2022-04-28 06:01:34,491 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-28 06:01:34,491 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-28 06:01:34,491 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {30441#true} {30441#true} #92#return; {30441#true} is VALID [2022-04-28 06:01:34,491 INFO L290 TraceCheckUtils]: 14: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,491 INFO L290 TraceCheckUtils]: 13: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,491 INFO L290 TraceCheckUtils]: 12: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,491 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-28 06:01:34,492 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30441#true} {30441#true} #90#return; {30441#true} is VALID [2022-04-28 06:01:34,492 INFO L290 TraceCheckUtils]: 9: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,492 INFO L290 TraceCheckUtils]: 8: Hoare triple {30441#true} assume !(0 == ~cond); {30441#true} is VALID [2022-04-28 06:01:34,492 INFO L290 TraceCheckUtils]: 7: Hoare triple {30441#true} ~cond := #in~cond; {30441#true} is VALID [2022-04-28 06:01:34,492 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-28 06:01:34,492 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-28 06:01:34,492 INFO L272 TraceCheckUtils]: 4: Hoare triple {30441#true} call #t~ret9 := main(); {30441#true} is VALID [2022-04-28 06:01:34,492 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30441#true} {30441#true} #102#return; {30441#true} is VALID [2022-04-28 06:01:34,492 INFO L290 TraceCheckUtils]: 2: Hoare triple {30441#true} assume true; {30441#true} is VALID [2022-04-28 06:01:34,492 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-28 06:01:34,492 INFO L272 TraceCheckUtils]: 0: Hoare triple {30441#true} call ULTIMATE.init(); {30441#true} is VALID [2022-04-28 06:01:34,492 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-28 06:01:34,493 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:01:34,493 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2030970001] [2022-04-28 06:01:34,493 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:01:34,493 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1544925439] [2022-04-28 06:01:34,493 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1544925439] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:01:34,493 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:01:34,493 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 4 [2022-04-28 06:01:34,493 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:01:34,493 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [793234745] [2022-04-28 06:01:34,493 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [793234745] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:01:34,493 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:01:34,493 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 06:01:34,493 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1439435217] [2022-04-28 06:01:34,493 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:01:34,494 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-28 06:01:34,494 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:01:34,494 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-28 06:01:34,532 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:01:34,533 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 06:01:34,533 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:01:34,533 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 06:01:34,533 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 06:01:34,533 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-28 06:01:35,247 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:01:35,247 INFO L93 Difference]: Finished difference Result 427 states and 558 transitions. [2022-04-28 06:01:35,247 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 06:01:35,247 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-28 06:01:35,257 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:01:35,257 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-28 06:01:35,258 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 127 transitions. [2022-04-28 06:01:35,258 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-28 06:01:35,259 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 127 transitions. [2022-04-28 06:01:35,259 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 127 transitions. [2022-04-28 06:01:35,353 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 127 edges. 127 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:01:35,359 INFO L225 Difference]: With dead ends: 427 [2022-04-28 06:01:35,359 INFO L226 Difference]: Without dead ends: 321 [2022-04-28 06:01:35,359 INFO L412 NwaCegarLoop]: 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-28 06:01:35,360 INFO L413 NwaCegarLoop]: 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-28 06:01:35,360 INFO L414 NwaCegarLoop]: 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-28 06:01:35,361 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 321 states. [2022-04-28 06:01:35,817 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 321 to 316. [2022-04-28 06:01:35,817 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:01:35,818 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-28 06:01:35,818 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-28 06:01:35,818 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-28 06:01:35,823 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:01:35,823 INFO L93 Difference]: Finished difference Result 321 states and 416 transitions. [2022-04-28 06:01:35,823 INFO L276 IsEmpty]: Start isEmpty. Operand 321 states and 416 transitions. [2022-04-28 06:01:35,824 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:01:35,824 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:01:35,824 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-28 06:01:35,824 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-28 06:01:35,829 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:01:35,829 INFO L93 Difference]: Finished difference Result 321 states and 416 transitions. [2022-04-28 06:01:35,829 INFO L276 IsEmpty]: Start isEmpty. Operand 321 states and 416 transitions. [2022-04-28 06:01:35,830 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:01:35,830 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:01:35,830 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:01:35,830 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:01:35,830 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-28 06:01:35,836 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 316 states to 316 states and 410 transitions. [2022-04-28 06:01:35,836 INFO L78 Accepts]: Start accepts. Automaton has 316 states and 410 transitions. Word has length 89 [2022-04-28 06:01:35,836 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:01:35,836 INFO L495 AbstractCegarLoop]: Abstraction has 316 states and 410 transitions. [2022-04-28 06:01:35,836 INFO L496 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-28 06:01:35,837 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 316 states and 410 transitions. [2022-04-28 06:01:46,406 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-28 06:01:46,407 INFO L276 IsEmpty]: Start isEmpty. Operand 316 states and 410 transitions. [2022-04-28 06:01:46,407 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 90 [2022-04-28 06:01:46,407 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:01:46,407 INFO L195 NwaCegarLoop]: 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-28 06:01:46,427 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Forceful destruction successful, exit code 0 [2022-04-28 06:01:46,608 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 26 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable24 [2022-04-28 06:01:46,608 INFO L420 AbstractCegarLoop]: === Iteration 26 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:01:46,608 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:01:46,608 INFO L85 PathProgramCache]: Analyzing trace with hash -1322512306, now seen corresponding path program 5 times [2022-04-28 06:01:46,608 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:01:46,608 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1659474342] [2022-04-28 06:01:46,609 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:01:46,609 INFO L85 PathProgramCache]: Analyzing trace with hash -1322512306, now seen corresponding path program 6 times [2022-04-28 06:01:46,609 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:01:46,609 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [142710946] [2022-04-28 06:01:46,609 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:01:46,609 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:01:46,625 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:01:46,625 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1243555108] [2022-04-28 06:01:46,625 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 06:01:46,625 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:01:46,626 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:01:46,626 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:01:46,651 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Waiting until timeout for monitored process [2022-04-28 06:01:46,773 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-04-28 06:01:46,774 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:01:46,775 INFO L263 TraceCheckSpWp]: Trace formula consists of 230 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 06:01:46,805 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:01:46,807 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:01:47,322 INFO L272 TraceCheckUtils]: 0: Hoare triple {33108#true} call ULTIMATE.init(); {33108#true} is VALID [2022-04-28 06:01:47,323 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-28 06:01:47,323 INFO L290 TraceCheckUtils]: 2: Hoare triple {33116#(<= ~counter~0 0)} assume true; {33116#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:47,323 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33116#(<= ~counter~0 0)} {33108#true} #102#return; {33116#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:47,324 INFO L272 TraceCheckUtils]: 4: Hoare triple {33116#(<= ~counter~0 0)} call #t~ret9 := main(); {33116#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:47,324 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-28 06:01:47,324 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-28 06:01:47,325 INFO L290 TraceCheckUtils]: 7: Hoare triple {33116#(<= ~counter~0 0)} ~cond := #in~cond; {33116#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:47,325 INFO L290 TraceCheckUtils]: 8: Hoare triple {33116#(<= ~counter~0 0)} assume !(0 == ~cond); {33116#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:47,325 INFO L290 TraceCheckUtils]: 9: Hoare triple {33116#(<= ~counter~0 0)} assume true; {33116#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:47,326 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {33116#(<= ~counter~0 0)} {33116#(<= ~counter~0 0)} #90#return; {33116#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:47,326 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-28 06:01:47,326 INFO L290 TraceCheckUtils]: 12: Hoare triple {33116#(<= ~counter~0 0)} ~cond := #in~cond; {33116#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:47,327 INFO L290 TraceCheckUtils]: 13: Hoare triple {33116#(<= ~counter~0 0)} assume !(0 == ~cond); {33116#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:47,327 INFO L290 TraceCheckUtils]: 14: Hoare triple {33116#(<= ~counter~0 0)} assume true; {33116#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:47,327 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {33116#(<= ~counter~0 0)} {33116#(<= ~counter~0 0)} #92#return; {33116#(<= ~counter~0 0)} is VALID [2022-04-28 06:01:47,328 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-28 06:01:47,329 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-28 06:01:47,334 INFO L290 TraceCheckUtils]: 18: Hoare triple {33165#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {33165#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:47,334 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-28 06:01:47,334 INFO L290 TraceCheckUtils]: 20: Hoare triple {33165#(<= ~counter~0 1)} ~cond := #in~cond; {33165#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:47,335 INFO L290 TraceCheckUtils]: 21: Hoare triple {33165#(<= ~counter~0 1)} assume !(0 == ~cond); {33165#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:47,336 INFO L290 TraceCheckUtils]: 22: Hoare triple {33165#(<= ~counter~0 1)} assume true; {33165#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:47,337 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {33165#(<= ~counter~0 1)} {33165#(<= ~counter~0 1)} #94#return; {33165#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:47,337 INFO L290 TraceCheckUtils]: 24: Hoare triple {33165#(<= ~counter~0 1)} assume !!(0 != ~r~0); {33165#(<= ~counter~0 1)} is VALID [2022-04-28 06:01:47,338 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-28 06:01:47,338 INFO L290 TraceCheckUtils]: 26: Hoare triple {33190#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {33190#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:47,339 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-28 06:01:47,339 INFO L290 TraceCheckUtils]: 28: Hoare triple {33190#(<= ~counter~0 2)} ~cond := #in~cond; {33190#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:47,339 INFO L290 TraceCheckUtils]: 29: Hoare triple {33190#(<= ~counter~0 2)} assume !(0 == ~cond); {33190#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:47,340 INFO L290 TraceCheckUtils]: 30: Hoare triple {33190#(<= ~counter~0 2)} assume true; {33190#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:47,340 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {33190#(<= ~counter~0 2)} {33190#(<= ~counter~0 2)} #96#return; {33190#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:47,340 INFO L290 TraceCheckUtils]: 32: Hoare triple {33190#(<= ~counter~0 2)} assume !(~r~0 > 0); {33190#(<= ~counter~0 2)} is VALID [2022-04-28 06:01:47,341 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-28 06:01:47,342 INFO L290 TraceCheckUtils]: 34: Hoare triple {33215#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {33215#(<= ~counter~0 3)} is VALID [2022-04-28 06:01:47,342 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-28 06:01:47,343 INFO L290 TraceCheckUtils]: 36: Hoare triple {33215#(<= ~counter~0 3)} ~cond := #in~cond; {33215#(<= ~counter~0 3)} is VALID [2022-04-28 06:01:47,343 INFO L290 TraceCheckUtils]: 37: Hoare triple {33215#(<= ~counter~0 3)} assume !(0 == ~cond); {33215#(<= ~counter~0 3)} is VALID [2022-04-28 06:01:47,343 INFO L290 TraceCheckUtils]: 38: Hoare triple {33215#(<= ~counter~0 3)} assume true; {33215#(<= ~counter~0 3)} is VALID [2022-04-28 06:01:47,344 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {33215#(<= ~counter~0 3)} {33215#(<= ~counter~0 3)} #98#return; {33215#(<= ~counter~0 3)} is VALID [2022-04-28 06:01:47,344 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-28 06:01:47,344 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-28 06:01:47,345 INFO L290 TraceCheckUtils]: 42: Hoare triple {33240#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {33240#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:47,345 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-28 06:01:47,346 INFO L290 TraceCheckUtils]: 44: Hoare triple {33240#(<= ~counter~0 4)} ~cond := #in~cond; {33240#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:47,346 INFO L290 TraceCheckUtils]: 45: Hoare triple {33240#(<= ~counter~0 4)} assume !(0 == ~cond); {33240#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:47,346 INFO L290 TraceCheckUtils]: 46: Hoare triple {33240#(<= ~counter~0 4)} assume true; {33240#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:47,347 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {33240#(<= ~counter~0 4)} {33240#(<= ~counter~0 4)} #98#return; {33240#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:47,347 INFO L290 TraceCheckUtils]: 48: Hoare triple {33240#(<= ~counter~0 4)} assume !(~r~0 < 0); {33240#(<= ~counter~0 4)} is VALID [2022-04-28 06:01:47,347 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-28 06:01:47,348 INFO L290 TraceCheckUtils]: 50: Hoare triple {33265#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {33265#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:47,348 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-28 06:01:47,349 INFO L290 TraceCheckUtils]: 52: Hoare triple {33265#(<= ~counter~0 5)} ~cond := #in~cond; {33265#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:47,349 INFO L290 TraceCheckUtils]: 53: Hoare triple {33265#(<= ~counter~0 5)} assume !(0 == ~cond); {33265#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:47,349 INFO L290 TraceCheckUtils]: 54: Hoare triple {33265#(<= ~counter~0 5)} assume true; {33265#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:47,350 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {33265#(<= ~counter~0 5)} {33265#(<= ~counter~0 5)} #94#return; {33265#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:47,350 INFO L290 TraceCheckUtils]: 56: Hoare triple {33265#(<= ~counter~0 5)} assume !!(0 != ~r~0); {33265#(<= ~counter~0 5)} is VALID [2022-04-28 06:01:47,350 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-28 06:01:47,358 INFO L290 TraceCheckUtils]: 58: Hoare triple {33290#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {33290#(<= ~counter~0 6)} is VALID [2022-04-28 06:01:47,359 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-28 06:01:47,360 INFO L290 TraceCheckUtils]: 60: Hoare triple {33290#(<= ~counter~0 6)} ~cond := #in~cond; {33290#(<= ~counter~0 6)} is VALID [2022-04-28 06:01:47,360 INFO L290 TraceCheckUtils]: 61: Hoare triple {33290#(<= ~counter~0 6)} assume !(0 == ~cond); {33290#(<= ~counter~0 6)} is VALID [2022-04-28 06:01:47,360 INFO L290 TraceCheckUtils]: 62: Hoare triple {33290#(<= ~counter~0 6)} assume true; {33290#(<= ~counter~0 6)} is VALID [2022-04-28 06:01:47,361 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {33290#(<= ~counter~0 6)} {33290#(<= ~counter~0 6)} #96#return; {33290#(<= ~counter~0 6)} is VALID [2022-04-28 06:01:47,361 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-28 06:01:47,362 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-28 06:01:47,362 INFO L290 TraceCheckUtils]: 66: Hoare triple {33315#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {33315#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:47,363 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-28 06:01:47,363 INFO L290 TraceCheckUtils]: 68: Hoare triple {33315#(<= ~counter~0 7)} ~cond := #in~cond; {33315#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:47,363 INFO L290 TraceCheckUtils]: 69: Hoare triple {33315#(<= ~counter~0 7)} assume !(0 == ~cond); {33315#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:47,364 INFO L290 TraceCheckUtils]: 70: Hoare triple {33315#(<= ~counter~0 7)} assume true; {33315#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:47,364 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {33315#(<= ~counter~0 7)} {33315#(<= ~counter~0 7)} #96#return; {33315#(<= ~counter~0 7)} is VALID [2022-04-28 06:01:47,364 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-28 06:01:47,365 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-28 06:01:47,365 INFO L290 TraceCheckUtils]: 74: Hoare triple {33340#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {33340#(<= ~counter~0 8)} is VALID [2022-04-28 06:01:47,366 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-28 06:01:47,366 INFO L290 TraceCheckUtils]: 76: Hoare triple {33340#(<= ~counter~0 8)} ~cond := #in~cond; {33340#(<= ~counter~0 8)} is VALID [2022-04-28 06:01:47,366 INFO L290 TraceCheckUtils]: 77: Hoare triple {33340#(<= ~counter~0 8)} assume !(0 == ~cond); {33340#(<= ~counter~0 8)} is VALID [2022-04-28 06:01:47,367 INFO L290 TraceCheckUtils]: 78: Hoare triple {33340#(<= ~counter~0 8)} assume true; {33340#(<= ~counter~0 8)} is VALID [2022-04-28 06:01:47,367 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {33340#(<= ~counter~0 8)} {33340#(<= ~counter~0 8)} #96#return; {33340#(<= ~counter~0 8)} is VALID [2022-04-28 06:01:47,367 INFO L290 TraceCheckUtils]: 80: Hoare triple {33340#(<= ~counter~0 8)} assume !(~r~0 > 0); {33340#(<= ~counter~0 8)} is VALID [2022-04-28 06:01:47,368 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-28 06:01:47,368 INFO L290 TraceCheckUtils]: 82: Hoare triple {33365#(<= ~counter~0 9)} assume !(#t~post8 < 50);havoc #t~post8; {33365#(<= ~counter~0 9)} is VALID [2022-04-28 06:01:47,369 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-28 06:01:47,369 INFO L290 TraceCheckUtils]: 84: Hoare triple {33372#(<= |main_#t~post6| 9)} assume !(#t~post6 < 50);havoc #t~post6; {33109#false} is VALID [2022-04-28 06:01:47,369 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-28 06:01:47,369 INFO L290 TraceCheckUtils]: 86: Hoare triple {33109#false} ~cond := #in~cond; {33109#false} is VALID [2022-04-28 06:01:47,369 INFO L290 TraceCheckUtils]: 87: Hoare triple {33109#false} assume 0 == ~cond; {33109#false} is VALID [2022-04-28 06:01:47,371 INFO L290 TraceCheckUtils]: 88: Hoare triple {33109#false} assume !false; {33109#false} is VALID [2022-04-28 06:01:47,371 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-28 06:01:47,371 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:01:47,910 INFO L290 TraceCheckUtils]: 88: Hoare triple {33109#false} assume !false; {33109#false} is VALID [2022-04-28 06:01:47,911 INFO L290 TraceCheckUtils]: 87: Hoare triple {33109#false} assume 0 == ~cond; {33109#false} is VALID [2022-04-28 06:01:47,911 INFO L290 TraceCheckUtils]: 86: Hoare triple {33109#false} ~cond := #in~cond; {33109#false} is VALID [2022-04-28 06:01:47,911 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-28 06:01:47,911 INFO L290 TraceCheckUtils]: 84: Hoare triple {33400#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {33109#false} is VALID [2022-04-28 06:01:47,911 INFO L290 TraceCheckUtils]: 83: Hoare triple {33404#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {33400#(< |main_#t~post6| 50)} is VALID [2022-04-28 06:01:47,913 INFO L290 TraceCheckUtils]: 82: Hoare triple {33404#(< ~counter~0 50)} assume !(#t~post8 < 50);havoc #t~post8; {33404#(< ~counter~0 50)} is VALID [2022-04-28 06:01:47,914 INFO L290 TraceCheckUtils]: 81: Hoare triple {33411#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {33404#(< ~counter~0 50)} is VALID [2022-04-28 06:01:47,914 INFO L290 TraceCheckUtils]: 80: Hoare triple {33411#(< ~counter~0 49)} assume !(~r~0 > 0); {33411#(< ~counter~0 49)} is VALID [2022-04-28 06:01:47,914 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {33108#true} {33411#(< ~counter~0 49)} #96#return; {33411#(< ~counter~0 49)} is VALID [2022-04-28 06:01:47,915 INFO L290 TraceCheckUtils]: 78: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-28 06:01:47,915 INFO L290 TraceCheckUtils]: 77: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-28 06:01:47,915 INFO L290 TraceCheckUtils]: 76: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-28 06:01:47,915 INFO L272 TraceCheckUtils]: 75: Hoare triple {33411#(< ~counter~0 49)} call __VERIFIER_assert((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-28 06:01:47,915 INFO L290 TraceCheckUtils]: 74: Hoare triple {33411#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {33411#(< ~counter~0 49)} is VALID [2022-04-28 06:01:47,916 INFO L290 TraceCheckUtils]: 73: Hoare triple {33436#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {33411#(< ~counter~0 49)} is VALID [2022-04-28 06:01:47,917 INFO L290 TraceCheckUtils]: 72: Hoare triple {33436#(< ~counter~0 48)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {33436#(< ~counter~0 48)} is VALID [2022-04-28 06:01:47,917 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {33108#true} {33436#(< ~counter~0 48)} #96#return; {33436#(< ~counter~0 48)} is VALID [2022-04-28 06:01:47,917 INFO L290 TraceCheckUtils]: 70: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-28 06:01:47,917 INFO L290 TraceCheckUtils]: 69: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-28 06:01:47,918 INFO L290 TraceCheckUtils]: 68: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-28 06:01:47,918 INFO L272 TraceCheckUtils]: 67: Hoare triple {33436#(< ~counter~0 48)} call __VERIFIER_assert((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-28 06:01:47,924 INFO L290 TraceCheckUtils]: 66: Hoare triple {33436#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {33436#(< ~counter~0 48)} is VALID [2022-04-28 06:01:47,925 INFO L290 TraceCheckUtils]: 65: Hoare triple {33461#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {33436#(< ~counter~0 48)} is VALID [2022-04-28 06:01:47,925 INFO L290 TraceCheckUtils]: 64: Hoare triple {33461#(< ~counter~0 47)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {33461#(< ~counter~0 47)} is VALID [2022-04-28 06:01:47,926 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {33108#true} {33461#(< ~counter~0 47)} #96#return; {33461#(< ~counter~0 47)} is VALID [2022-04-28 06:01:47,926 INFO L290 TraceCheckUtils]: 62: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-28 06:01:47,926 INFO L290 TraceCheckUtils]: 61: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-28 06:01:47,926 INFO L290 TraceCheckUtils]: 60: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-28 06:01:47,926 INFO L272 TraceCheckUtils]: 59: Hoare triple {33461#(< ~counter~0 47)} call __VERIFIER_assert((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-28 06:01:47,927 INFO L290 TraceCheckUtils]: 58: Hoare triple {33461#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {33461#(< ~counter~0 47)} is VALID [2022-04-28 06:01:47,927 INFO L290 TraceCheckUtils]: 57: Hoare triple {33486#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {33461#(< ~counter~0 47)} is VALID [2022-04-28 06:01:47,928 INFO L290 TraceCheckUtils]: 56: Hoare triple {33486#(< ~counter~0 46)} assume !!(0 != ~r~0); {33486#(< ~counter~0 46)} is VALID [2022-04-28 06:01:47,928 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {33108#true} {33486#(< ~counter~0 46)} #94#return; {33486#(< ~counter~0 46)} is VALID [2022-04-28 06:01:47,928 INFO L290 TraceCheckUtils]: 54: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-28 06:01:47,928 INFO L290 TraceCheckUtils]: 53: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-28 06:01:47,928 INFO L290 TraceCheckUtils]: 52: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-28 06:01:47,928 INFO L272 TraceCheckUtils]: 51: Hoare triple {33486#(< ~counter~0 46)} call __VERIFIER_assert((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-28 06:01:47,929 INFO L290 TraceCheckUtils]: 50: Hoare triple {33486#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {33486#(< ~counter~0 46)} is VALID [2022-04-28 06:01:47,929 INFO L290 TraceCheckUtils]: 49: Hoare triple {33511#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {33486#(< ~counter~0 46)} is VALID [2022-04-28 06:01:47,930 INFO L290 TraceCheckUtils]: 48: Hoare triple {33511#(< ~counter~0 45)} assume !(~r~0 < 0); {33511#(< ~counter~0 45)} is VALID [2022-04-28 06:01:47,930 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {33108#true} {33511#(< ~counter~0 45)} #98#return; {33511#(< ~counter~0 45)} is VALID [2022-04-28 06:01:47,930 INFO L290 TraceCheckUtils]: 46: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-28 06:01:47,930 INFO L290 TraceCheckUtils]: 45: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-28 06:01:47,930 INFO L290 TraceCheckUtils]: 44: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-28 06:01:47,930 INFO L272 TraceCheckUtils]: 43: Hoare triple {33511#(< ~counter~0 45)} call __VERIFIER_assert((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-28 06:01:47,931 INFO L290 TraceCheckUtils]: 42: Hoare triple {33511#(< ~counter~0 45)} assume !!(#t~post8 < 50);havoc #t~post8; {33511#(< ~counter~0 45)} is VALID [2022-04-28 06:01:47,931 INFO L290 TraceCheckUtils]: 41: Hoare triple {33536#(< ~counter~0 44)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {33511#(< ~counter~0 45)} is VALID [2022-04-28 06:01:47,932 INFO L290 TraceCheckUtils]: 40: Hoare triple {33536#(< ~counter~0 44)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {33536#(< ~counter~0 44)} is VALID [2022-04-28 06:01:47,932 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {33108#true} {33536#(< ~counter~0 44)} #98#return; {33536#(< ~counter~0 44)} is VALID [2022-04-28 06:01:47,932 INFO L290 TraceCheckUtils]: 38: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-28 06:01:47,932 INFO L290 TraceCheckUtils]: 37: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-28 06:01:47,932 INFO L290 TraceCheckUtils]: 36: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-28 06:01:47,932 INFO L272 TraceCheckUtils]: 35: Hoare triple {33536#(< ~counter~0 44)} call __VERIFIER_assert((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-28 06:01:47,933 INFO L290 TraceCheckUtils]: 34: Hoare triple {33536#(< ~counter~0 44)} assume !!(#t~post8 < 50);havoc #t~post8; {33536#(< ~counter~0 44)} is VALID [2022-04-28 06:01:47,933 INFO L290 TraceCheckUtils]: 33: Hoare triple {33561#(< ~counter~0 43)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {33536#(< ~counter~0 44)} is VALID [2022-04-28 06:01:47,933 INFO L290 TraceCheckUtils]: 32: Hoare triple {33561#(< ~counter~0 43)} assume !(~r~0 > 0); {33561#(< ~counter~0 43)} is VALID [2022-04-28 06:01:47,934 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {33108#true} {33561#(< ~counter~0 43)} #96#return; {33561#(< ~counter~0 43)} is VALID [2022-04-28 06:01:47,934 INFO L290 TraceCheckUtils]: 30: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-28 06:01:47,934 INFO L290 TraceCheckUtils]: 29: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-28 06:01:47,934 INFO L290 TraceCheckUtils]: 28: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-28 06:01:47,934 INFO L272 TraceCheckUtils]: 27: Hoare triple {33561#(< ~counter~0 43)} call __VERIFIER_assert((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-28 06:01:47,935 INFO L290 TraceCheckUtils]: 26: Hoare triple {33561#(< ~counter~0 43)} assume !!(#t~post7 < 50);havoc #t~post7; {33561#(< ~counter~0 43)} is VALID [2022-04-28 06:01:47,935 INFO L290 TraceCheckUtils]: 25: Hoare triple {33586#(< ~counter~0 42)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {33561#(< ~counter~0 43)} is VALID [2022-04-28 06:01:47,935 INFO L290 TraceCheckUtils]: 24: Hoare triple {33586#(< ~counter~0 42)} assume !!(0 != ~r~0); {33586#(< ~counter~0 42)} is VALID [2022-04-28 06:01:47,936 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {33108#true} {33586#(< ~counter~0 42)} #94#return; {33586#(< ~counter~0 42)} is VALID [2022-04-28 06:01:47,936 INFO L290 TraceCheckUtils]: 22: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-28 06:01:47,936 INFO L290 TraceCheckUtils]: 21: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-28 06:01:47,936 INFO L290 TraceCheckUtils]: 20: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-28 06:01:47,936 INFO L272 TraceCheckUtils]: 19: Hoare triple {33586#(< ~counter~0 42)} call __VERIFIER_assert((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-28 06:01:47,937 INFO L290 TraceCheckUtils]: 18: Hoare triple {33586#(< ~counter~0 42)} assume !!(#t~post6 < 50);havoc #t~post6; {33586#(< ~counter~0 42)} is VALID [2022-04-28 06:01:47,937 INFO L290 TraceCheckUtils]: 17: Hoare triple {33611#(< ~counter~0 41)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {33586#(< ~counter~0 42)} is VALID [2022-04-28 06:01:47,937 INFO L290 TraceCheckUtils]: 16: Hoare triple {33611#(< ~counter~0 41)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {33611#(< ~counter~0 41)} is VALID [2022-04-28 06:01:47,938 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {33108#true} {33611#(< ~counter~0 41)} #92#return; {33611#(< ~counter~0 41)} is VALID [2022-04-28 06:01:47,938 INFO L290 TraceCheckUtils]: 14: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-28 06:01:47,938 INFO L290 TraceCheckUtils]: 13: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-28 06:01:47,938 INFO L290 TraceCheckUtils]: 12: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-28 06:01:47,938 INFO L272 TraceCheckUtils]: 11: Hoare triple {33611#(< ~counter~0 41)} 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-28 06:01:47,938 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {33108#true} {33611#(< ~counter~0 41)} #90#return; {33611#(< ~counter~0 41)} is VALID [2022-04-28 06:01:47,939 INFO L290 TraceCheckUtils]: 9: Hoare triple {33108#true} assume true; {33108#true} is VALID [2022-04-28 06:01:47,939 INFO L290 TraceCheckUtils]: 8: Hoare triple {33108#true} assume !(0 == ~cond); {33108#true} is VALID [2022-04-28 06:01:47,939 INFO L290 TraceCheckUtils]: 7: Hoare triple {33108#true} ~cond := #in~cond; {33108#true} is VALID [2022-04-28 06:01:47,939 INFO L272 TraceCheckUtils]: 6: Hoare triple {33611#(< ~counter~0 41)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {33108#true} is VALID [2022-04-28 06:01:47,939 INFO L290 TraceCheckUtils]: 5: Hoare triple {33611#(< ~counter~0 41)} 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 41)} is VALID [2022-04-28 06:01:47,939 INFO L272 TraceCheckUtils]: 4: Hoare triple {33611#(< ~counter~0 41)} call #t~ret9 := main(); {33611#(< ~counter~0 41)} is VALID [2022-04-28 06:01:47,940 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33611#(< ~counter~0 41)} {33108#true} #102#return; {33611#(< ~counter~0 41)} is VALID [2022-04-28 06:01:47,940 INFO L290 TraceCheckUtils]: 2: Hoare triple {33611#(< ~counter~0 41)} assume true; {33611#(< ~counter~0 41)} is VALID [2022-04-28 06:01:47,940 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 41)} is VALID [2022-04-28 06:01:47,940 INFO L272 TraceCheckUtils]: 0: Hoare triple {33108#true} call ULTIMATE.init(); {33108#true} is VALID [2022-04-28 06:01:47,941 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-28 06:01:47,941 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:01:47,941 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [142710946] [2022-04-28 06:01:47,941 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:01:47,941 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1243555108] [2022-04-28 06:01:47,941 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1243555108] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:01:47,941 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:01:47,942 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-28 06:01:47,942 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:01:47,942 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1659474342] [2022-04-28 06:01:47,942 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1659474342] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:01:47,942 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:01:47,942 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 06:01:47,943 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [645536883] [2022-04-28 06:01:47,943 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:01:47,943 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-28 06:01:47,943 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:01:47,943 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-28 06:01:48,011 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-28 06:01:48,011 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 06:01:48,011 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:01:48,011 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 06:01:48,012 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-28 06:01:48,012 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-28 06:01:49,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:01:49,450 INFO L93 Difference]: Finished difference Result 386 states and 504 transitions. [2022-04-28 06:01:49,451 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-28 06:01:49,451 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-28 06:01:49,451 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:01:49,451 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-28 06:01:49,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 197 transitions. [2022-04-28 06:01:49,452 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-28 06:01:49,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 197 transitions. [2022-04-28 06:01:49,455 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 197 transitions. [2022-04-28 06:01:49,617 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-28 06:01:49,624 INFO L225 Difference]: With dead ends: 386 [2022-04-28 06:01:49,624 INFO L226 Difference]: Without dead ends: 381 [2022-04-28 06:01:49,624 INFO L412 NwaCegarLoop]: 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-28 06:01:49,624 INFO L413 NwaCegarLoop]: 57 mSDtfsCounter, 186 mSDsluCounter, 172 mSDsCounter, 0 mSdLazyCounter, 126 mSolverCounterSat, 140 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s 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.3s IncrementalHoareTripleChecker+Time [2022-04-28 06:01:49,626 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [186 Valid, 229 Invalid, 266 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [140 Valid, 126 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 06:01:49,626 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 381 states. [2022-04-28 06:01:50,229 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 381 to 366. [2022-04-28 06:01:50,229 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:01:50,230 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-28 06:01:50,230 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-28 06:01:50,247 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-28 06:01:50,254 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:01:50,254 INFO L93 Difference]: Finished difference Result 381 states and 495 transitions. [2022-04-28 06:01:50,254 INFO L276 IsEmpty]: Start isEmpty. Operand 381 states and 495 transitions. [2022-04-28 06:01:50,254 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:01:50,254 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:01:50,255 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-28 06:01:50,255 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-28 06:01:50,277 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:01:50,277 INFO L93 Difference]: Finished difference Result 381 states and 495 transitions. [2022-04-28 06:01:50,277 INFO L276 IsEmpty]: Start isEmpty. Operand 381 states and 495 transitions. [2022-04-28 06:01:50,278 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:01:50,278 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:01:50,278 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:01:50,278 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:01:50,279 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-28 06:01:50,286 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 366 states to 366 states and 478 transitions. [2022-04-28 06:01:50,286 INFO L78 Accepts]: Start accepts. Automaton has 366 states and 478 transitions. Word has length 89 [2022-04-28 06:01:50,295 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:01:50,295 INFO L495 AbstractCegarLoop]: Abstraction has 366 states and 478 transitions. [2022-04-28 06:01:50,296 INFO L496 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-28 06:01:50,296 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 366 states and 478 transitions. [2022-04-28 06:02:06,500 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 478 edges. 475 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-28 06:02:06,501 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 478 transitions. [2022-04-28 06:02:06,501 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-28 06:02:06,502 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:02:06,502 INFO L195 NwaCegarLoop]: 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-28 06:02:06,508 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Forceful destruction successful, exit code 0 [2022-04-28 06:02:06,702 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 27 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable25 [2022-04-28 06:02:06,702 INFO L420 AbstractCegarLoop]: === Iteration 27 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:02:06,702 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:02:06,703 INFO L85 PathProgramCache]: Analyzing trace with hash -345961389, now seen corresponding path program 5 times [2022-04-28 06:02:06,703 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:02:06,703 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1776329409] [2022-04-28 06:02:06,703 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:02:06,703 INFO L85 PathProgramCache]: Analyzing trace with hash -345961389, now seen corresponding path program 6 times [2022-04-28 06:02:06,703 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:02:06,703 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1329162503] [2022-04-28 06:02:06,703 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:02:06,703 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:02:06,716 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:02:06,716 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [801948322] [2022-04-28 06:02:06,717 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 06:02:06,717 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:02:06,717 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:02:06,720 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:02:06,731 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Waiting until timeout for monitored process [2022-04-28 06:02:06,884 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-04-28 06:02:06,884 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:02:06,885 INFO L263 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 06:02:06,902 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:02:06,904 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:02:07,336 INFO L272 TraceCheckUtils]: 0: Hoare triple {35943#true} call ULTIMATE.init(); {35943#true} is VALID [2022-04-28 06:02:07,337 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-28 06:02:07,337 INFO L290 TraceCheckUtils]: 2: Hoare triple {35951#(<= ~counter~0 0)} assume true; {35951#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:07,338 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35951#(<= ~counter~0 0)} {35943#true} #102#return; {35951#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:07,338 INFO L272 TraceCheckUtils]: 4: Hoare triple {35951#(<= ~counter~0 0)} call #t~ret9 := main(); {35951#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:07,338 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-28 06:02:07,339 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-28 06:02:07,339 INFO L290 TraceCheckUtils]: 7: Hoare triple {35951#(<= ~counter~0 0)} ~cond := #in~cond; {35951#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:07,339 INFO L290 TraceCheckUtils]: 8: Hoare triple {35951#(<= ~counter~0 0)} assume !(0 == ~cond); {35951#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:07,340 INFO L290 TraceCheckUtils]: 9: Hoare triple {35951#(<= ~counter~0 0)} assume true; {35951#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:07,340 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {35951#(<= ~counter~0 0)} {35951#(<= ~counter~0 0)} #90#return; {35951#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:07,340 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-28 06:02:07,341 INFO L290 TraceCheckUtils]: 12: Hoare triple {35951#(<= ~counter~0 0)} ~cond := #in~cond; {35951#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:07,341 INFO L290 TraceCheckUtils]: 13: Hoare triple {35951#(<= ~counter~0 0)} assume !(0 == ~cond); {35951#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:07,341 INFO L290 TraceCheckUtils]: 14: Hoare triple {35951#(<= ~counter~0 0)} assume true; {35951#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:07,342 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {35951#(<= ~counter~0 0)} {35951#(<= ~counter~0 0)} #92#return; {35951#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:07,342 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-28 06:02:07,343 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-28 06:02:07,343 INFO L290 TraceCheckUtils]: 18: Hoare triple {36000#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {36000#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:07,344 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-28 06:02:07,344 INFO L290 TraceCheckUtils]: 20: Hoare triple {36000#(<= ~counter~0 1)} ~cond := #in~cond; {36000#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:07,344 INFO L290 TraceCheckUtils]: 21: Hoare triple {36000#(<= ~counter~0 1)} assume !(0 == ~cond); {36000#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:07,345 INFO L290 TraceCheckUtils]: 22: Hoare triple {36000#(<= ~counter~0 1)} assume true; {36000#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:07,345 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {36000#(<= ~counter~0 1)} {36000#(<= ~counter~0 1)} #94#return; {36000#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:07,345 INFO L290 TraceCheckUtils]: 24: Hoare triple {36000#(<= ~counter~0 1)} assume !!(0 != ~r~0); {36000#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:07,346 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-28 06:02:07,346 INFO L290 TraceCheckUtils]: 26: Hoare triple {36025#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {36025#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:07,347 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-28 06:02:07,347 INFO L290 TraceCheckUtils]: 28: Hoare triple {36025#(<= ~counter~0 2)} ~cond := #in~cond; {36025#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:07,347 INFO L290 TraceCheckUtils]: 29: Hoare triple {36025#(<= ~counter~0 2)} assume !(0 == ~cond); {36025#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:07,347 INFO L290 TraceCheckUtils]: 30: Hoare triple {36025#(<= ~counter~0 2)} assume true; {36025#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:07,348 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {36025#(<= ~counter~0 2)} {36025#(<= ~counter~0 2)} #96#return; {36025#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:07,348 INFO L290 TraceCheckUtils]: 32: Hoare triple {36025#(<= ~counter~0 2)} assume !(~r~0 > 0); {36025#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:07,349 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-28 06:02:07,349 INFO L290 TraceCheckUtils]: 34: Hoare triple {36050#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {36050#(<= ~counter~0 3)} is VALID [2022-04-28 06:02:07,350 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-28 06:02:07,350 INFO L290 TraceCheckUtils]: 36: Hoare triple {36050#(<= ~counter~0 3)} ~cond := #in~cond; {36050#(<= ~counter~0 3)} is VALID [2022-04-28 06:02:07,350 INFO L290 TraceCheckUtils]: 37: Hoare triple {36050#(<= ~counter~0 3)} assume !(0 == ~cond); {36050#(<= ~counter~0 3)} is VALID [2022-04-28 06:02:07,350 INFO L290 TraceCheckUtils]: 38: Hoare triple {36050#(<= ~counter~0 3)} assume true; {36050#(<= ~counter~0 3)} is VALID [2022-04-28 06:02:07,351 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {36050#(<= ~counter~0 3)} {36050#(<= ~counter~0 3)} #98#return; {36050#(<= ~counter~0 3)} is VALID [2022-04-28 06:02:07,364 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-28 06:02:07,380 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-28 06:02:07,380 INFO L290 TraceCheckUtils]: 42: Hoare triple {36075#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {36075#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:07,381 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-28 06:02:07,381 INFO L290 TraceCheckUtils]: 44: Hoare triple {36075#(<= ~counter~0 4)} ~cond := #in~cond; {36075#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:07,381 INFO L290 TraceCheckUtils]: 45: Hoare triple {36075#(<= ~counter~0 4)} assume !(0 == ~cond); {36075#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:07,382 INFO L290 TraceCheckUtils]: 46: Hoare triple {36075#(<= ~counter~0 4)} assume true; {36075#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:07,382 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {36075#(<= ~counter~0 4)} {36075#(<= ~counter~0 4)} #98#return; {36075#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:07,383 INFO L290 TraceCheckUtils]: 48: Hoare triple {36075#(<= ~counter~0 4)} assume !(~r~0 < 0); {36075#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:07,383 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-28 06:02:07,384 INFO L290 TraceCheckUtils]: 50: Hoare triple {36100#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {36100#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:07,384 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-28 06:02:07,384 INFO L290 TraceCheckUtils]: 52: Hoare triple {36100#(<= ~counter~0 5)} ~cond := #in~cond; {36100#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:07,385 INFO L290 TraceCheckUtils]: 53: Hoare triple {36100#(<= ~counter~0 5)} assume !(0 == ~cond); {36100#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:07,385 INFO L290 TraceCheckUtils]: 54: Hoare triple {36100#(<= ~counter~0 5)} assume true; {36100#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:07,385 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {36100#(<= ~counter~0 5)} {36100#(<= ~counter~0 5)} #94#return; {36100#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:07,386 INFO L290 TraceCheckUtils]: 56: Hoare triple {36100#(<= ~counter~0 5)} assume !!(0 != ~r~0); {36100#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:07,386 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-28 06:02:07,386 INFO L290 TraceCheckUtils]: 58: Hoare triple {36125#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {36125#(<= ~counter~0 6)} is VALID [2022-04-28 06:02:07,387 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-28 06:02:07,387 INFO L290 TraceCheckUtils]: 60: Hoare triple {36125#(<= ~counter~0 6)} ~cond := #in~cond; {36125#(<= ~counter~0 6)} is VALID [2022-04-28 06:02:07,388 INFO L290 TraceCheckUtils]: 61: Hoare triple {36125#(<= ~counter~0 6)} assume !(0 == ~cond); {36125#(<= ~counter~0 6)} is VALID [2022-04-28 06:02:07,388 INFO L290 TraceCheckUtils]: 62: Hoare triple {36125#(<= ~counter~0 6)} assume true; {36125#(<= ~counter~0 6)} is VALID [2022-04-28 06:02:07,388 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {36125#(<= ~counter~0 6)} {36125#(<= ~counter~0 6)} #96#return; {36125#(<= ~counter~0 6)} is VALID [2022-04-28 06:02:07,389 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-28 06:02:07,389 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-28 06:02:07,390 INFO L290 TraceCheckUtils]: 66: Hoare triple {36150#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {36150#(<= ~counter~0 7)} is VALID [2022-04-28 06:02:07,390 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-28 06:02:07,390 INFO L290 TraceCheckUtils]: 68: Hoare triple {36150#(<= ~counter~0 7)} ~cond := #in~cond; {36150#(<= ~counter~0 7)} is VALID [2022-04-28 06:02:07,391 INFO L290 TraceCheckUtils]: 69: Hoare triple {36150#(<= ~counter~0 7)} assume !(0 == ~cond); {36150#(<= ~counter~0 7)} is VALID [2022-04-28 06:02:07,391 INFO L290 TraceCheckUtils]: 70: Hoare triple {36150#(<= ~counter~0 7)} assume true; {36150#(<= ~counter~0 7)} is VALID [2022-04-28 06:02:07,391 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {36150#(<= ~counter~0 7)} {36150#(<= ~counter~0 7)} #96#return; {36150#(<= ~counter~0 7)} is VALID [2022-04-28 06:02:07,392 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-28 06:02:07,392 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-28 06:02:07,393 INFO L290 TraceCheckUtils]: 74: Hoare triple {36175#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {36175#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:07,393 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-28 06:02:07,393 INFO L290 TraceCheckUtils]: 76: Hoare triple {36175#(<= ~counter~0 8)} ~cond := #in~cond; {36175#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:07,394 INFO L290 TraceCheckUtils]: 77: Hoare triple {36175#(<= ~counter~0 8)} assume !(0 == ~cond); {36175#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:07,394 INFO L290 TraceCheckUtils]: 78: Hoare triple {36175#(<= ~counter~0 8)} assume true; {36175#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:07,395 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {36175#(<= ~counter~0 8)} {36175#(<= ~counter~0 8)} #96#return; {36175#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:07,395 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-28 06:02:07,395 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-28 06:02:07,396 INFO L290 TraceCheckUtils]: 82: Hoare triple {36200#(<= |main_#t~post7| 8)} assume !(#t~post7 < 50);havoc #t~post7; {35944#false} is VALID [2022-04-28 06:02:07,396 INFO L290 TraceCheckUtils]: 83: Hoare triple {35944#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {35944#false} is VALID [2022-04-28 06:02:07,396 INFO L290 TraceCheckUtils]: 84: Hoare triple {35944#false} assume !(#t~post8 < 50);havoc #t~post8; {35944#false} is VALID [2022-04-28 06:02:07,396 INFO L290 TraceCheckUtils]: 85: Hoare triple {35944#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {35944#false} is VALID [2022-04-28 06:02:07,396 INFO L290 TraceCheckUtils]: 86: Hoare triple {35944#false} assume !(#t~post6 < 50);havoc #t~post6; {35944#false} is VALID [2022-04-28 06:02:07,396 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-28 06:02:07,396 INFO L290 TraceCheckUtils]: 88: Hoare triple {35944#false} ~cond := #in~cond; {35944#false} is VALID [2022-04-28 06:02:07,396 INFO L290 TraceCheckUtils]: 89: Hoare triple {35944#false} assume 0 == ~cond; {35944#false} is VALID [2022-04-28 06:02:07,396 INFO L290 TraceCheckUtils]: 90: Hoare triple {35944#false} assume !false; {35944#false} is VALID [2022-04-28 06:02:07,396 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-28 06:02:07,396 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:02:07,856 INFO L290 TraceCheckUtils]: 90: Hoare triple {35944#false} assume !false; {35944#false} is VALID [2022-04-28 06:02:07,856 INFO L290 TraceCheckUtils]: 89: Hoare triple {35944#false} assume 0 == ~cond; {35944#false} is VALID [2022-04-28 06:02:07,856 INFO L290 TraceCheckUtils]: 88: Hoare triple {35944#false} ~cond := #in~cond; {35944#false} is VALID [2022-04-28 06:02:07,856 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-28 06:02:07,856 INFO L290 TraceCheckUtils]: 86: Hoare triple {35944#false} assume !(#t~post6 < 50);havoc #t~post6; {35944#false} is VALID [2022-04-28 06:02:07,856 INFO L290 TraceCheckUtils]: 85: Hoare triple {35944#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {35944#false} is VALID [2022-04-28 06:02:07,856 INFO L290 TraceCheckUtils]: 84: Hoare triple {35944#false} assume !(#t~post8 < 50);havoc #t~post8; {35944#false} is VALID [2022-04-28 06:02:07,856 INFO L290 TraceCheckUtils]: 83: Hoare triple {35944#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {35944#false} is VALID [2022-04-28 06:02:07,857 INFO L290 TraceCheckUtils]: 82: Hoare triple {36252#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {35944#false} is VALID [2022-04-28 06:02:07,857 INFO L290 TraceCheckUtils]: 81: Hoare triple {36256#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36252#(< |main_#t~post7| 50)} is VALID [2022-04-28 06:02:07,857 INFO L290 TraceCheckUtils]: 80: Hoare triple {36256#(< ~counter~0 50)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {36256#(< ~counter~0 50)} is VALID [2022-04-28 06:02:07,858 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {35943#true} {36256#(< ~counter~0 50)} #96#return; {36256#(< ~counter~0 50)} is VALID [2022-04-28 06:02:07,858 INFO L290 TraceCheckUtils]: 78: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-28 06:02:07,858 INFO L290 TraceCheckUtils]: 77: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-28 06:02:07,858 INFO L290 TraceCheckUtils]: 76: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-28 06:02:07,858 INFO L272 TraceCheckUtils]: 75: Hoare triple {36256#(< ~counter~0 50)} call __VERIFIER_assert((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-28 06:02:07,858 INFO L290 TraceCheckUtils]: 74: Hoare triple {36256#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {36256#(< ~counter~0 50)} is VALID [2022-04-28 06:02:07,859 INFO L290 TraceCheckUtils]: 73: Hoare triple {36281#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36256#(< ~counter~0 50)} is VALID [2022-04-28 06:02:07,860 INFO L290 TraceCheckUtils]: 72: Hoare triple {36281#(< ~counter~0 49)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {36281#(< ~counter~0 49)} is VALID [2022-04-28 06:02:07,860 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {35943#true} {36281#(< ~counter~0 49)} #96#return; {36281#(< ~counter~0 49)} is VALID [2022-04-28 06:02:07,860 INFO L290 TraceCheckUtils]: 70: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-28 06:02:07,860 INFO L290 TraceCheckUtils]: 69: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-28 06:02:07,860 INFO L290 TraceCheckUtils]: 68: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-28 06:02:07,861 INFO L272 TraceCheckUtils]: 67: Hoare triple {36281#(< ~counter~0 49)} call __VERIFIER_assert((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-28 06:02:07,861 INFO L290 TraceCheckUtils]: 66: Hoare triple {36281#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {36281#(< ~counter~0 49)} is VALID [2022-04-28 06:02:07,861 INFO L290 TraceCheckUtils]: 65: Hoare triple {36306#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36281#(< ~counter~0 49)} is VALID [2022-04-28 06:02:07,862 INFO L290 TraceCheckUtils]: 64: Hoare triple {36306#(< ~counter~0 48)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {36306#(< ~counter~0 48)} is VALID [2022-04-28 06:02:07,862 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {35943#true} {36306#(< ~counter~0 48)} #96#return; {36306#(< ~counter~0 48)} is VALID [2022-04-28 06:02:07,862 INFO L290 TraceCheckUtils]: 62: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-28 06:02:07,862 INFO L290 TraceCheckUtils]: 61: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-28 06:02:07,862 INFO L290 TraceCheckUtils]: 60: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-28 06:02:07,862 INFO L272 TraceCheckUtils]: 59: Hoare triple {36306#(< ~counter~0 48)} call __VERIFIER_assert((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-28 06:02:07,863 INFO L290 TraceCheckUtils]: 58: Hoare triple {36306#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {36306#(< ~counter~0 48)} is VALID [2022-04-28 06:02:07,863 INFO L290 TraceCheckUtils]: 57: Hoare triple {36331#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36306#(< ~counter~0 48)} is VALID [2022-04-28 06:02:07,864 INFO L290 TraceCheckUtils]: 56: Hoare triple {36331#(< ~counter~0 47)} assume !!(0 != ~r~0); {36331#(< ~counter~0 47)} is VALID [2022-04-28 06:02:07,864 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {35943#true} {36331#(< ~counter~0 47)} #94#return; {36331#(< ~counter~0 47)} is VALID [2022-04-28 06:02:07,864 INFO L290 TraceCheckUtils]: 54: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-28 06:02:07,864 INFO L290 TraceCheckUtils]: 53: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-28 06:02:07,864 INFO L290 TraceCheckUtils]: 52: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-28 06:02:07,864 INFO L272 TraceCheckUtils]: 51: Hoare triple {36331#(< ~counter~0 47)} call __VERIFIER_assert((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-28 06:02:07,865 INFO L290 TraceCheckUtils]: 50: Hoare triple {36331#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {36331#(< ~counter~0 47)} is VALID [2022-04-28 06:02:07,865 INFO L290 TraceCheckUtils]: 49: Hoare triple {36356#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36331#(< ~counter~0 47)} is VALID [2022-04-28 06:02:07,865 INFO L290 TraceCheckUtils]: 48: Hoare triple {36356#(< ~counter~0 46)} assume !(~r~0 < 0); {36356#(< ~counter~0 46)} is VALID [2022-04-28 06:02:07,866 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {35943#true} {36356#(< ~counter~0 46)} #98#return; {36356#(< ~counter~0 46)} is VALID [2022-04-28 06:02:07,866 INFO L290 TraceCheckUtils]: 46: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-28 06:02:07,866 INFO L290 TraceCheckUtils]: 45: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-28 06:02:07,866 INFO L290 TraceCheckUtils]: 44: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-28 06:02:07,866 INFO L272 TraceCheckUtils]: 43: Hoare triple {36356#(< ~counter~0 46)} call __VERIFIER_assert((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-28 06:02:07,866 INFO L290 TraceCheckUtils]: 42: Hoare triple {36356#(< ~counter~0 46)} assume !!(#t~post8 < 50);havoc #t~post8; {36356#(< ~counter~0 46)} is VALID [2022-04-28 06:02:07,867 INFO L290 TraceCheckUtils]: 41: Hoare triple {36381#(< ~counter~0 45)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36356#(< ~counter~0 46)} is VALID [2022-04-28 06:02:07,867 INFO L290 TraceCheckUtils]: 40: Hoare triple {36381#(< ~counter~0 45)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {36381#(< ~counter~0 45)} is VALID [2022-04-28 06:02:07,868 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {35943#true} {36381#(< ~counter~0 45)} #98#return; {36381#(< ~counter~0 45)} is VALID [2022-04-28 06:02:07,868 INFO L290 TraceCheckUtils]: 38: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-28 06:02:07,868 INFO L290 TraceCheckUtils]: 37: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-28 06:02:07,868 INFO L290 TraceCheckUtils]: 36: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-28 06:02:07,868 INFO L272 TraceCheckUtils]: 35: Hoare triple {36381#(< ~counter~0 45)} call __VERIFIER_assert((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-28 06:02:07,868 INFO L290 TraceCheckUtils]: 34: Hoare triple {36381#(< ~counter~0 45)} assume !!(#t~post8 < 50);havoc #t~post8; {36381#(< ~counter~0 45)} is VALID [2022-04-28 06:02:07,869 INFO L290 TraceCheckUtils]: 33: Hoare triple {36406#(< ~counter~0 44)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36381#(< ~counter~0 45)} is VALID [2022-04-28 06:02:07,869 INFO L290 TraceCheckUtils]: 32: Hoare triple {36406#(< ~counter~0 44)} assume !(~r~0 > 0); {36406#(< ~counter~0 44)} is VALID [2022-04-28 06:02:07,870 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {35943#true} {36406#(< ~counter~0 44)} #96#return; {36406#(< ~counter~0 44)} is VALID [2022-04-28 06:02:07,870 INFO L290 TraceCheckUtils]: 30: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-28 06:02:07,870 INFO L290 TraceCheckUtils]: 29: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-28 06:02:07,870 INFO L290 TraceCheckUtils]: 28: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-28 06:02:07,870 INFO L272 TraceCheckUtils]: 27: Hoare triple {36406#(< ~counter~0 44)} call __VERIFIER_assert((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-28 06:02:07,870 INFO L290 TraceCheckUtils]: 26: Hoare triple {36406#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {36406#(< ~counter~0 44)} is VALID [2022-04-28 06:02:07,871 INFO L290 TraceCheckUtils]: 25: Hoare triple {36431#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36406#(< ~counter~0 44)} is VALID [2022-04-28 06:02:07,871 INFO L290 TraceCheckUtils]: 24: Hoare triple {36431#(< ~counter~0 43)} assume !!(0 != ~r~0); {36431#(< ~counter~0 43)} is VALID [2022-04-28 06:02:07,872 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {35943#true} {36431#(< ~counter~0 43)} #94#return; {36431#(< ~counter~0 43)} is VALID [2022-04-28 06:02:07,872 INFO L290 TraceCheckUtils]: 22: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-28 06:02:07,872 INFO L290 TraceCheckUtils]: 21: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-28 06:02:07,872 INFO L290 TraceCheckUtils]: 20: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-28 06:02:07,872 INFO L272 TraceCheckUtils]: 19: Hoare triple {36431#(< ~counter~0 43)} call __VERIFIER_assert((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-28 06:02:07,872 INFO L290 TraceCheckUtils]: 18: Hoare triple {36431#(< ~counter~0 43)} assume !!(#t~post6 < 50);havoc #t~post6; {36431#(< ~counter~0 43)} is VALID [2022-04-28 06:02:07,873 INFO L290 TraceCheckUtils]: 17: Hoare triple {36456#(< ~counter~0 42)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36431#(< ~counter~0 43)} is VALID [2022-04-28 06:02:07,873 INFO L290 TraceCheckUtils]: 16: Hoare triple {36456#(< ~counter~0 42)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {36456#(< ~counter~0 42)} is VALID [2022-04-28 06:02:07,873 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {35943#true} {36456#(< ~counter~0 42)} #92#return; {36456#(< ~counter~0 42)} is VALID [2022-04-28 06:02:07,874 INFO L290 TraceCheckUtils]: 14: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-28 06:02:07,874 INFO L290 TraceCheckUtils]: 13: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-28 06:02:07,874 INFO L290 TraceCheckUtils]: 12: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-28 06:02:07,874 INFO L272 TraceCheckUtils]: 11: Hoare triple {36456#(< ~counter~0 42)} 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-28 06:02:07,874 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {35943#true} {36456#(< ~counter~0 42)} #90#return; {36456#(< ~counter~0 42)} is VALID [2022-04-28 06:02:07,874 INFO L290 TraceCheckUtils]: 9: Hoare triple {35943#true} assume true; {35943#true} is VALID [2022-04-28 06:02:07,874 INFO L290 TraceCheckUtils]: 8: Hoare triple {35943#true} assume !(0 == ~cond); {35943#true} is VALID [2022-04-28 06:02:07,874 INFO L290 TraceCheckUtils]: 7: Hoare triple {35943#true} ~cond := #in~cond; {35943#true} is VALID [2022-04-28 06:02:07,874 INFO L272 TraceCheckUtils]: 6: Hoare triple {36456#(< ~counter~0 42)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {35943#true} is VALID [2022-04-28 06:02:07,875 INFO L290 TraceCheckUtils]: 5: Hoare triple {36456#(< ~counter~0 42)} 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 42)} is VALID [2022-04-28 06:02:07,875 INFO L272 TraceCheckUtils]: 4: Hoare triple {36456#(< ~counter~0 42)} call #t~ret9 := main(); {36456#(< ~counter~0 42)} is VALID [2022-04-28 06:02:07,875 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36456#(< ~counter~0 42)} {35943#true} #102#return; {36456#(< ~counter~0 42)} is VALID [2022-04-28 06:02:07,876 INFO L290 TraceCheckUtils]: 2: Hoare triple {36456#(< ~counter~0 42)} assume true; {36456#(< ~counter~0 42)} is VALID [2022-04-28 06:02:07,876 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 42)} is VALID [2022-04-28 06:02:07,876 INFO L272 TraceCheckUtils]: 0: Hoare triple {35943#true} call ULTIMATE.init(); {35943#true} is VALID [2022-04-28 06:02:07,876 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-28 06:02:07,877 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:02:07,877 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1329162503] [2022-04-28 06:02:07,877 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:02:07,877 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [801948322] [2022-04-28 06:02:07,877 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [801948322] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:02:07,877 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:02:07,877 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-28 06:02:07,877 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:02:07,877 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1776329409] [2022-04-28 06:02:07,877 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1776329409] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:02:07,877 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:02:07,877 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 06:02:07,877 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1944629683] [2022-04-28 06:02:07,878 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:02:07,878 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-28 06:02:07,878 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:02:07,878 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-28 06:02:07,943 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:02:07,943 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 06:02:07,943 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:02:07,944 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 06:02:07,944 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-28 06:02:07,944 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-28 06:02:09,227 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:09,228 INFO L93 Difference]: Finished difference Result 455 states and 606 transitions. [2022-04-28 06:02:09,228 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-28 06:02:09,228 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-28 06:02:09,228 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:02:09,228 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-28 06:02:09,229 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 197 transitions. [2022-04-28 06:02:09,230 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-28 06:02:09,235 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 197 transitions. [2022-04-28 06:02:09,235 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 197 transitions. [2022-04-28 06:02:09,391 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-28 06:02:09,398 INFO L225 Difference]: With dead ends: 455 [2022-04-28 06:02:09,398 INFO L226 Difference]: Without dead ends: 366 [2022-04-28 06:02:09,399 INFO L412 NwaCegarLoop]: 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-28 06:02:09,399 INFO L413 NwaCegarLoop]: 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-28 06:02:09,399 INFO L414 NwaCegarLoop]: 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-28 06:02:09,400 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 366 states. [2022-04-28 06:02:10,228 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 366 to 366. [2022-04-28 06:02:10,228 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:02:10,229 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-28 06:02:10,229 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-28 06:02:10,230 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-28 06:02:10,235 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:10,235 INFO L93 Difference]: Finished difference Result 366 states and 474 transitions. [2022-04-28 06:02:10,235 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 474 transitions. [2022-04-28 06:02:10,236 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:10,236 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:10,236 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-28 06:02:10,237 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-28 06:02:10,242 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:10,242 INFO L93 Difference]: Finished difference Result 366 states and 474 transitions. [2022-04-28 06:02:10,243 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 474 transitions. [2022-04-28 06:02:10,243 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:10,243 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:10,243 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:02:10,243 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:02:10,244 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-28 06:02:10,250 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 366 states to 366 states and 474 transitions. [2022-04-28 06:02:10,250 INFO L78 Accepts]: Start accepts. Automaton has 366 states and 474 transitions. Word has length 91 [2022-04-28 06:02:10,251 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:02:10,251 INFO L495 AbstractCegarLoop]: Abstraction has 366 states and 474 transitions. [2022-04-28 06:02:10,251 INFO L496 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-28 06:02:10,275 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 366 states and 474 transitions. [2022-04-28 06:02:23,463 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 474 edges. 470 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-28 06:02:23,463 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 474 transitions. [2022-04-28 06:02:23,464 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-28 06:02:23,464 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:02:23,464 INFO L195 NwaCegarLoop]: 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-28 06:02:23,474 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Forceful destruction successful, exit code 0 [2022-04-28 06:02:23,665 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 28 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable26 [2022-04-28 06:02:23,665 INFO L420 AbstractCegarLoop]: === Iteration 28 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:02:23,665 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:02:23,665 INFO L85 PathProgramCache]: Analyzing trace with hash 1660747519, now seen corresponding path program 7 times [2022-04-28 06:02:23,665 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:02:23,665 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [851834369] [2022-04-28 06:02:23,666 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:02:23,666 INFO L85 PathProgramCache]: Analyzing trace with hash 1660747519, now seen corresponding path program 8 times [2022-04-28 06:02:23,666 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:02:23,666 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1964377096] [2022-04-28 06:02:23,666 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:02:23,666 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:02:23,702 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:02:23,702 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [266655862] [2022-04-28 06:02:23,702 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:02:23,702 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:02:23,702 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:02:23,703 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:02:23,732 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Waiting until timeout for monitored process [2022-04-28 06:02:23,793 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:02:23,793 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:02:23,794 INFO L263 TraceCheckSpWp]: Trace formula consists of 249 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 06:02:23,814 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:02:23,815 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:02:24,341 INFO L272 TraceCheckUtils]: 0: Hoare triple {38898#true} call ULTIMATE.init(); {38898#true} is VALID [2022-04-28 06:02:24,341 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-28 06:02:24,341 INFO L290 TraceCheckUtils]: 2: Hoare triple {38906#(<= ~counter~0 0)} assume true; {38906#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:24,342 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38906#(<= ~counter~0 0)} {38898#true} #102#return; {38906#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:24,342 INFO L272 TraceCheckUtils]: 4: Hoare triple {38906#(<= ~counter~0 0)} call #t~ret9 := main(); {38906#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:24,342 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-28 06:02:24,343 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-28 06:02:24,343 INFO L290 TraceCheckUtils]: 7: Hoare triple {38906#(<= ~counter~0 0)} ~cond := #in~cond; {38906#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:24,343 INFO L290 TraceCheckUtils]: 8: Hoare triple {38906#(<= ~counter~0 0)} assume !(0 == ~cond); {38906#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:24,344 INFO L290 TraceCheckUtils]: 9: Hoare triple {38906#(<= ~counter~0 0)} assume true; {38906#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:24,344 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38906#(<= ~counter~0 0)} {38906#(<= ~counter~0 0)} #90#return; {38906#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:24,344 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-28 06:02:24,345 INFO L290 TraceCheckUtils]: 12: Hoare triple {38906#(<= ~counter~0 0)} ~cond := #in~cond; {38906#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:24,345 INFO L290 TraceCheckUtils]: 13: Hoare triple {38906#(<= ~counter~0 0)} assume !(0 == ~cond); {38906#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:24,345 INFO L290 TraceCheckUtils]: 14: Hoare triple {38906#(<= ~counter~0 0)} assume true; {38906#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:24,346 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {38906#(<= ~counter~0 0)} {38906#(<= ~counter~0 0)} #92#return; {38906#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:24,346 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-28 06:02:24,347 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-28 06:02:24,347 INFO L290 TraceCheckUtils]: 18: Hoare triple {38955#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {38955#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:24,348 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-28 06:02:24,348 INFO L290 TraceCheckUtils]: 20: Hoare triple {38955#(<= ~counter~0 1)} ~cond := #in~cond; {38955#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:24,348 INFO L290 TraceCheckUtils]: 21: Hoare triple {38955#(<= ~counter~0 1)} assume !(0 == ~cond); {38955#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:24,348 INFO L290 TraceCheckUtils]: 22: Hoare triple {38955#(<= ~counter~0 1)} assume true; {38955#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:24,349 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {38955#(<= ~counter~0 1)} {38955#(<= ~counter~0 1)} #94#return; {38955#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:24,349 INFO L290 TraceCheckUtils]: 24: Hoare triple {38955#(<= ~counter~0 1)} assume !!(0 != ~r~0); {38955#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:24,350 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-28 06:02:24,350 INFO L290 TraceCheckUtils]: 26: Hoare triple {38980#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {38980#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:24,351 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-28 06:02:24,351 INFO L290 TraceCheckUtils]: 28: Hoare triple {38980#(<= ~counter~0 2)} ~cond := #in~cond; {38980#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:24,351 INFO L290 TraceCheckUtils]: 29: Hoare triple {38980#(<= ~counter~0 2)} assume !(0 == ~cond); {38980#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:24,351 INFO L290 TraceCheckUtils]: 30: Hoare triple {38980#(<= ~counter~0 2)} assume true; {38980#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:24,352 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {38980#(<= ~counter~0 2)} {38980#(<= ~counter~0 2)} #96#return; {38980#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:24,352 INFO L290 TraceCheckUtils]: 32: Hoare triple {38980#(<= ~counter~0 2)} assume !(~r~0 > 0); {38980#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:24,353 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-28 06:02:24,353 INFO L290 TraceCheckUtils]: 34: Hoare triple {39005#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {39005#(<= ~counter~0 3)} is VALID [2022-04-28 06:02:24,353 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-28 06:02:24,354 INFO L290 TraceCheckUtils]: 36: Hoare triple {39005#(<= ~counter~0 3)} ~cond := #in~cond; {39005#(<= ~counter~0 3)} is VALID [2022-04-28 06:02:24,354 INFO L290 TraceCheckUtils]: 37: Hoare triple {39005#(<= ~counter~0 3)} assume !(0 == ~cond); {39005#(<= ~counter~0 3)} is VALID [2022-04-28 06:02:24,354 INFO L290 TraceCheckUtils]: 38: Hoare triple {39005#(<= ~counter~0 3)} assume true; {39005#(<= ~counter~0 3)} is VALID [2022-04-28 06:02:24,355 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {39005#(<= ~counter~0 3)} {39005#(<= ~counter~0 3)} #98#return; {39005#(<= ~counter~0 3)} is VALID [2022-04-28 06:02:24,355 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-28 06:02:24,356 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-28 06:02:24,356 INFO L290 TraceCheckUtils]: 42: Hoare triple {39030#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {39030#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:24,356 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-28 06:02:24,357 INFO L290 TraceCheckUtils]: 44: Hoare triple {39030#(<= ~counter~0 4)} ~cond := #in~cond; {39030#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:24,357 INFO L290 TraceCheckUtils]: 45: Hoare triple {39030#(<= ~counter~0 4)} assume !(0 == ~cond); {39030#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:24,357 INFO L290 TraceCheckUtils]: 46: Hoare triple {39030#(<= ~counter~0 4)} assume true; {39030#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:24,358 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {39030#(<= ~counter~0 4)} {39030#(<= ~counter~0 4)} #98#return; {39030#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:24,358 INFO L290 TraceCheckUtils]: 48: Hoare triple {39030#(<= ~counter~0 4)} assume !(~r~0 < 0); {39030#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:24,359 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-28 06:02:24,359 INFO L290 TraceCheckUtils]: 50: Hoare triple {39055#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {39055#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:24,359 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-28 06:02:24,360 INFO L290 TraceCheckUtils]: 52: Hoare triple {39055#(<= ~counter~0 5)} ~cond := #in~cond; {39055#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:24,360 INFO L290 TraceCheckUtils]: 53: Hoare triple {39055#(<= ~counter~0 5)} assume !(0 == ~cond); {39055#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:24,360 INFO L290 TraceCheckUtils]: 54: Hoare triple {39055#(<= ~counter~0 5)} assume true; {39055#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:24,361 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {39055#(<= ~counter~0 5)} {39055#(<= ~counter~0 5)} #94#return; {39055#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:24,361 INFO L290 TraceCheckUtils]: 56: Hoare triple {39055#(<= ~counter~0 5)} assume !!(0 != ~r~0); {39055#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:24,362 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-28 06:02:24,362 INFO L290 TraceCheckUtils]: 58: Hoare triple {39080#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {39080#(<= ~counter~0 6)} is VALID [2022-04-28 06:02:24,362 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-28 06:02:24,363 INFO L290 TraceCheckUtils]: 60: Hoare triple {39080#(<= ~counter~0 6)} ~cond := #in~cond; {39080#(<= ~counter~0 6)} is VALID [2022-04-28 06:02:24,363 INFO L290 TraceCheckUtils]: 61: Hoare triple {39080#(<= ~counter~0 6)} assume !(0 == ~cond); {39080#(<= ~counter~0 6)} is VALID [2022-04-28 06:02:24,363 INFO L290 TraceCheckUtils]: 62: Hoare triple {39080#(<= ~counter~0 6)} assume true; {39080#(<= ~counter~0 6)} is VALID [2022-04-28 06:02:24,364 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {39080#(<= ~counter~0 6)} {39080#(<= ~counter~0 6)} #96#return; {39080#(<= ~counter~0 6)} is VALID [2022-04-28 06:02:24,364 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-28 06:02:24,364 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-28 06:02:24,365 INFO L290 TraceCheckUtils]: 66: Hoare triple {39105#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {39105#(<= ~counter~0 7)} is VALID [2022-04-28 06:02:24,365 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-28 06:02:24,365 INFO L290 TraceCheckUtils]: 68: Hoare triple {39105#(<= ~counter~0 7)} ~cond := #in~cond; {39105#(<= ~counter~0 7)} is VALID [2022-04-28 06:02:24,366 INFO L290 TraceCheckUtils]: 69: Hoare triple {39105#(<= ~counter~0 7)} assume !(0 == ~cond); {39105#(<= ~counter~0 7)} is VALID [2022-04-28 06:02:24,366 INFO L290 TraceCheckUtils]: 70: Hoare triple {39105#(<= ~counter~0 7)} assume true; {39105#(<= ~counter~0 7)} is VALID [2022-04-28 06:02:24,366 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {39105#(<= ~counter~0 7)} {39105#(<= ~counter~0 7)} #96#return; {39105#(<= ~counter~0 7)} is VALID [2022-04-28 06:02:24,367 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-28 06:02:24,367 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-28 06:02:24,368 INFO L290 TraceCheckUtils]: 74: Hoare triple {39130#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {39130#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:24,368 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-28 06:02:24,368 INFO L290 TraceCheckUtils]: 76: Hoare triple {39130#(<= ~counter~0 8)} ~cond := #in~cond; {39130#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:24,369 INFO L290 TraceCheckUtils]: 77: Hoare triple {39130#(<= ~counter~0 8)} assume !(0 == ~cond); {39130#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:24,369 INFO L290 TraceCheckUtils]: 78: Hoare triple {39130#(<= ~counter~0 8)} assume true; {39130#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:24,369 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {39130#(<= ~counter~0 8)} {39130#(<= ~counter~0 8)} #96#return; {39130#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:24,370 INFO L290 TraceCheckUtils]: 80: Hoare triple {39130#(<= ~counter~0 8)} assume !(~r~0 > 0); {39130#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:24,370 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-28 06:02:24,370 INFO L290 TraceCheckUtils]: 82: Hoare triple {39155#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {39155#(<= ~counter~0 9)} is VALID [2022-04-28 06:02:24,371 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-28 06:02:24,371 INFO L290 TraceCheckUtils]: 84: Hoare triple {39155#(<= ~counter~0 9)} ~cond := #in~cond; {39155#(<= ~counter~0 9)} is VALID [2022-04-28 06:02:24,372 INFO L290 TraceCheckUtils]: 85: Hoare triple {39155#(<= ~counter~0 9)} assume !(0 == ~cond); {39155#(<= ~counter~0 9)} is VALID [2022-04-28 06:02:24,372 INFO L290 TraceCheckUtils]: 86: Hoare triple {39155#(<= ~counter~0 9)} assume true; {39155#(<= ~counter~0 9)} is VALID [2022-04-28 06:02:24,372 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {39155#(<= ~counter~0 9)} {39155#(<= ~counter~0 9)} #98#return; {39155#(<= ~counter~0 9)} is VALID [2022-04-28 06:02:24,373 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-28 06:02:24,373 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-28 06:02:24,373 INFO L290 TraceCheckUtils]: 90: Hoare triple {39180#(<= |main_#t~post8| 9)} assume !(#t~post8 < 50);havoc #t~post8; {38899#false} is VALID [2022-04-28 06:02:24,373 INFO L290 TraceCheckUtils]: 91: Hoare triple {38899#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38899#false} is VALID [2022-04-28 06:02:24,373 INFO L290 TraceCheckUtils]: 92: Hoare triple {38899#false} assume !(#t~post6 < 50);havoc #t~post6; {38899#false} is VALID [2022-04-28 06:02:24,373 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-28 06:02:24,374 INFO L290 TraceCheckUtils]: 94: Hoare triple {38899#false} ~cond := #in~cond; {38899#false} is VALID [2022-04-28 06:02:24,374 INFO L290 TraceCheckUtils]: 95: Hoare triple {38899#false} assume 0 == ~cond; {38899#false} is VALID [2022-04-28 06:02:24,374 INFO L290 TraceCheckUtils]: 96: Hoare triple {38899#false} assume !false; {38899#false} is VALID [2022-04-28 06:02:24,374 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-28 06:02:24,374 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:02:24,907 INFO L290 TraceCheckUtils]: 96: Hoare triple {38899#false} assume !false; {38899#false} is VALID [2022-04-28 06:02:24,907 INFO L290 TraceCheckUtils]: 95: Hoare triple {38899#false} assume 0 == ~cond; {38899#false} is VALID [2022-04-28 06:02:24,907 INFO L290 TraceCheckUtils]: 94: Hoare triple {38899#false} ~cond := #in~cond; {38899#false} is VALID [2022-04-28 06:02:24,907 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-28 06:02:24,908 INFO L290 TraceCheckUtils]: 92: Hoare triple {38899#false} assume !(#t~post6 < 50);havoc #t~post6; {38899#false} is VALID [2022-04-28 06:02:24,908 INFO L290 TraceCheckUtils]: 91: Hoare triple {38899#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38899#false} is VALID [2022-04-28 06:02:24,908 INFO L290 TraceCheckUtils]: 90: Hoare triple {39220#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {38899#false} is VALID [2022-04-28 06:02:24,908 INFO L290 TraceCheckUtils]: 89: Hoare triple {39224#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {39220#(< |main_#t~post8| 50)} is VALID [2022-04-28 06:02:24,908 INFO L290 TraceCheckUtils]: 88: Hoare triple {39224#(< ~counter~0 50)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {39224#(< ~counter~0 50)} is VALID [2022-04-28 06:02:24,909 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {38898#true} {39224#(< ~counter~0 50)} #98#return; {39224#(< ~counter~0 50)} is VALID [2022-04-28 06:02:24,909 INFO L290 TraceCheckUtils]: 86: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-28 06:02:24,909 INFO L290 TraceCheckUtils]: 85: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-28 06:02:24,909 INFO L290 TraceCheckUtils]: 84: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-28 06:02:24,909 INFO L272 TraceCheckUtils]: 83: Hoare triple {39224#(< ~counter~0 50)} call __VERIFIER_assert((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-28 06:02:24,909 INFO L290 TraceCheckUtils]: 82: Hoare triple {39224#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {39224#(< ~counter~0 50)} is VALID [2022-04-28 06:02:24,910 INFO L290 TraceCheckUtils]: 81: Hoare triple {39249#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {39224#(< ~counter~0 50)} is VALID [2022-04-28 06:02:24,911 INFO L290 TraceCheckUtils]: 80: Hoare triple {39249#(< ~counter~0 49)} assume !(~r~0 > 0); {39249#(< ~counter~0 49)} is VALID [2022-04-28 06:02:24,911 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {38898#true} {39249#(< ~counter~0 49)} #96#return; {39249#(< ~counter~0 49)} is VALID [2022-04-28 06:02:24,911 INFO L290 TraceCheckUtils]: 78: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-28 06:02:24,911 INFO L290 TraceCheckUtils]: 77: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-28 06:02:24,911 INFO L290 TraceCheckUtils]: 76: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-28 06:02:24,912 INFO L272 TraceCheckUtils]: 75: Hoare triple {39249#(< ~counter~0 49)} call __VERIFIER_assert((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-28 06:02:24,912 INFO L290 TraceCheckUtils]: 74: Hoare triple {39249#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {39249#(< ~counter~0 49)} is VALID [2022-04-28 06:02:24,912 INFO L290 TraceCheckUtils]: 73: Hoare triple {39274#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {39249#(< ~counter~0 49)} is VALID [2022-04-28 06:02:24,913 INFO L290 TraceCheckUtils]: 72: Hoare triple {39274#(< ~counter~0 48)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {39274#(< ~counter~0 48)} is VALID [2022-04-28 06:02:24,913 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {38898#true} {39274#(< ~counter~0 48)} #96#return; {39274#(< ~counter~0 48)} is VALID [2022-04-28 06:02:24,913 INFO L290 TraceCheckUtils]: 70: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-28 06:02:24,913 INFO L290 TraceCheckUtils]: 69: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-28 06:02:24,913 INFO L290 TraceCheckUtils]: 68: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-28 06:02:24,913 INFO L272 TraceCheckUtils]: 67: Hoare triple {39274#(< ~counter~0 48)} call __VERIFIER_assert((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-28 06:02:24,914 INFO L290 TraceCheckUtils]: 66: Hoare triple {39274#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {39274#(< ~counter~0 48)} is VALID [2022-04-28 06:02:24,914 INFO L290 TraceCheckUtils]: 65: Hoare triple {39299#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {39274#(< ~counter~0 48)} is VALID [2022-04-28 06:02:24,915 INFO L290 TraceCheckUtils]: 64: Hoare triple {39299#(< ~counter~0 47)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {39299#(< ~counter~0 47)} is VALID [2022-04-28 06:02:24,915 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {38898#true} {39299#(< ~counter~0 47)} #96#return; {39299#(< ~counter~0 47)} is VALID [2022-04-28 06:02:24,915 INFO L290 TraceCheckUtils]: 62: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-28 06:02:24,915 INFO L290 TraceCheckUtils]: 61: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-28 06:02:24,915 INFO L290 TraceCheckUtils]: 60: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-28 06:02:24,915 INFO L272 TraceCheckUtils]: 59: Hoare triple {39299#(< ~counter~0 47)} call __VERIFIER_assert((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-28 06:02:24,916 INFO L290 TraceCheckUtils]: 58: Hoare triple {39299#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {39299#(< ~counter~0 47)} is VALID [2022-04-28 06:02:24,916 INFO L290 TraceCheckUtils]: 57: Hoare triple {39324#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {39299#(< ~counter~0 47)} is VALID [2022-04-28 06:02:24,916 INFO L290 TraceCheckUtils]: 56: Hoare triple {39324#(< ~counter~0 46)} assume !!(0 != ~r~0); {39324#(< ~counter~0 46)} is VALID [2022-04-28 06:02:24,917 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {38898#true} {39324#(< ~counter~0 46)} #94#return; {39324#(< ~counter~0 46)} is VALID [2022-04-28 06:02:24,917 INFO L290 TraceCheckUtils]: 54: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-28 06:02:24,917 INFO L290 TraceCheckUtils]: 53: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-28 06:02:24,917 INFO L290 TraceCheckUtils]: 52: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-28 06:02:24,917 INFO L272 TraceCheckUtils]: 51: Hoare triple {39324#(< ~counter~0 46)} call __VERIFIER_assert((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-28 06:02:24,917 INFO L290 TraceCheckUtils]: 50: Hoare triple {39324#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {39324#(< ~counter~0 46)} is VALID [2022-04-28 06:02:24,918 INFO L290 TraceCheckUtils]: 49: Hoare triple {39349#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {39324#(< ~counter~0 46)} is VALID [2022-04-28 06:02:24,918 INFO L290 TraceCheckUtils]: 48: Hoare triple {39349#(< ~counter~0 45)} assume !(~r~0 < 0); {39349#(< ~counter~0 45)} is VALID [2022-04-28 06:02:24,919 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {38898#true} {39349#(< ~counter~0 45)} #98#return; {39349#(< ~counter~0 45)} is VALID [2022-04-28 06:02:24,919 INFO L290 TraceCheckUtils]: 46: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-28 06:02:24,919 INFO L290 TraceCheckUtils]: 45: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-28 06:02:24,919 INFO L290 TraceCheckUtils]: 44: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-28 06:02:24,919 INFO L272 TraceCheckUtils]: 43: Hoare triple {39349#(< ~counter~0 45)} call __VERIFIER_assert((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-28 06:02:24,919 INFO L290 TraceCheckUtils]: 42: Hoare triple {39349#(< ~counter~0 45)} assume !!(#t~post8 < 50);havoc #t~post8; {39349#(< ~counter~0 45)} is VALID [2022-04-28 06:02:24,920 INFO L290 TraceCheckUtils]: 41: Hoare triple {39374#(< ~counter~0 44)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {39349#(< ~counter~0 45)} is VALID [2022-04-28 06:02:24,920 INFO L290 TraceCheckUtils]: 40: Hoare triple {39374#(< ~counter~0 44)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {39374#(< ~counter~0 44)} is VALID [2022-04-28 06:02:24,921 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {38898#true} {39374#(< ~counter~0 44)} #98#return; {39374#(< ~counter~0 44)} is VALID [2022-04-28 06:02:24,921 INFO L290 TraceCheckUtils]: 38: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-28 06:02:24,921 INFO L290 TraceCheckUtils]: 37: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-28 06:02:24,921 INFO L290 TraceCheckUtils]: 36: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-28 06:02:24,921 INFO L272 TraceCheckUtils]: 35: Hoare triple {39374#(< ~counter~0 44)} call __VERIFIER_assert((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-28 06:02:24,921 INFO L290 TraceCheckUtils]: 34: Hoare triple {39374#(< ~counter~0 44)} assume !!(#t~post8 < 50);havoc #t~post8; {39374#(< ~counter~0 44)} is VALID [2022-04-28 06:02:24,922 INFO L290 TraceCheckUtils]: 33: Hoare triple {39399#(< ~counter~0 43)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {39374#(< ~counter~0 44)} is VALID [2022-04-28 06:02:24,922 INFO L290 TraceCheckUtils]: 32: Hoare triple {39399#(< ~counter~0 43)} assume !(~r~0 > 0); {39399#(< ~counter~0 43)} is VALID [2022-04-28 06:02:24,923 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {38898#true} {39399#(< ~counter~0 43)} #96#return; {39399#(< ~counter~0 43)} is VALID [2022-04-28 06:02:24,923 INFO L290 TraceCheckUtils]: 30: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-28 06:02:24,923 INFO L290 TraceCheckUtils]: 29: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-28 06:02:24,923 INFO L290 TraceCheckUtils]: 28: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-28 06:02:24,923 INFO L272 TraceCheckUtils]: 27: Hoare triple {39399#(< ~counter~0 43)} call __VERIFIER_assert((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-28 06:02:24,923 INFO L290 TraceCheckUtils]: 26: Hoare triple {39399#(< ~counter~0 43)} assume !!(#t~post7 < 50);havoc #t~post7; {39399#(< ~counter~0 43)} is VALID [2022-04-28 06:02:24,924 INFO L290 TraceCheckUtils]: 25: Hoare triple {39424#(< ~counter~0 42)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {39399#(< ~counter~0 43)} is VALID [2022-04-28 06:02:24,924 INFO L290 TraceCheckUtils]: 24: Hoare triple {39424#(< ~counter~0 42)} assume !!(0 != ~r~0); {39424#(< ~counter~0 42)} is VALID [2022-04-28 06:02:24,925 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {38898#true} {39424#(< ~counter~0 42)} #94#return; {39424#(< ~counter~0 42)} is VALID [2022-04-28 06:02:24,925 INFO L290 TraceCheckUtils]: 22: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-28 06:02:24,925 INFO L290 TraceCheckUtils]: 21: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-28 06:02:24,925 INFO L290 TraceCheckUtils]: 20: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-28 06:02:24,925 INFO L272 TraceCheckUtils]: 19: Hoare triple {39424#(< ~counter~0 42)} call __VERIFIER_assert((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-28 06:02:24,925 INFO L290 TraceCheckUtils]: 18: Hoare triple {39424#(< ~counter~0 42)} assume !!(#t~post6 < 50);havoc #t~post6; {39424#(< ~counter~0 42)} is VALID [2022-04-28 06:02:24,926 INFO L290 TraceCheckUtils]: 17: Hoare triple {39449#(< ~counter~0 41)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {39424#(< ~counter~0 42)} is VALID [2022-04-28 06:02:24,926 INFO L290 TraceCheckUtils]: 16: Hoare triple {39449#(< ~counter~0 41)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {39449#(< ~counter~0 41)} is VALID [2022-04-28 06:02:24,926 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {38898#true} {39449#(< ~counter~0 41)} #92#return; {39449#(< ~counter~0 41)} is VALID [2022-04-28 06:02:24,926 INFO L290 TraceCheckUtils]: 14: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-28 06:02:24,926 INFO L290 TraceCheckUtils]: 13: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-28 06:02:24,927 INFO L290 TraceCheckUtils]: 12: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-28 06:02:24,927 INFO L272 TraceCheckUtils]: 11: Hoare triple {39449#(< ~counter~0 41)} 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-28 06:02:24,927 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38898#true} {39449#(< ~counter~0 41)} #90#return; {39449#(< ~counter~0 41)} is VALID [2022-04-28 06:02:24,927 INFO L290 TraceCheckUtils]: 9: Hoare triple {38898#true} assume true; {38898#true} is VALID [2022-04-28 06:02:24,927 INFO L290 TraceCheckUtils]: 8: Hoare triple {38898#true} assume !(0 == ~cond); {38898#true} is VALID [2022-04-28 06:02:24,927 INFO L290 TraceCheckUtils]: 7: Hoare triple {38898#true} ~cond := #in~cond; {38898#true} is VALID [2022-04-28 06:02:24,927 INFO L272 TraceCheckUtils]: 6: Hoare triple {39449#(< ~counter~0 41)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {38898#true} is VALID [2022-04-28 06:02:24,928 INFO L290 TraceCheckUtils]: 5: Hoare triple {39449#(< ~counter~0 41)} 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 41)} is VALID [2022-04-28 06:02:24,928 INFO L272 TraceCheckUtils]: 4: Hoare triple {39449#(< ~counter~0 41)} call #t~ret9 := main(); {39449#(< ~counter~0 41)} is VALID [2022-04-28 06:02:24,928 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39449#(< ~counter~0 41)} {38898#true} #102#return; {39449#(< ~counter~0 41)} is VALID [2022-04-28 06:02:24,928 INFO L290 TraceCheckUtils]: 2: Hoare triple {39449#(< ~counter~0 41)} assume true; {39449#(< ~counter~0 41)} is VALID [2022-04-28 06:02:24,929 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 41)} is VALID [2022-04-28 06:02:24,929 INFO L272 TraceCheckUtils]: 0: Hoare triple {38898#true} call ULTIMATE.init(); {38898#true} is VALID [2022-04-28 06:02:24,929 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-28 06:02:24,929 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:02:24,929 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1964377096] [2022-04-28 06:02:24,929 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:02:24,930 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [266655862] [2022-04-28 06:02:24,930 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [266655862] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:02:24,930 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:02:24,930 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-28 06:02:24,930 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:02:24,930 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [851834369] [2022-04-28 06:02:24,930 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [851834369] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:02:24,931 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:02:24,931 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 06:02:24,931 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1164373770] [2022-04-28 06:02:24,931 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:02:24,931 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-28 06:02:24,931 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:02:24,931 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-28 06:02:24,998 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-28 06:02:24,999 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 06:02:24,999 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:02:24,999 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 06:02:24,999 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-28 06:02:24,999 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-28 06:02:26,192 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:26,193 INFO L93 Difference]: Finished difference Result 495 states and 661 transitions. [2022-04-28 06:02:26,193 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-28 06:02:26,193 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-28 06:02:26,193 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:02:26,193 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-28 06:02:26,207 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 218 transitions. [2022-04-28 06:02:26,208 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-28 06:02:26,224 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 218 transitions. [2022-04-28 06:02:26,224 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 218 transitions. [2022-04-28 06:02:26,443 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-28 06:02:26,450 INFO L225 Difference]: With dead ends: 495 [2022-04-28 06:02:26,450 INFO L226 Difference]: Without dead ends: 376 [2022-04-28 06:02:26,450 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 200 GetRequests, 171 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 49 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=383, Invalid=547, Unknown=0, NotChecked=0, Total=930 [2022-04-28 06:02:26,451 INFO L413 NwaCegarLoop]: 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-28 06:02:26,451 INFO L414 NwaCegarLoop]: 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-28 06:02:26,452 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 376 states. [2022-04-28 06:02:27,266 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 376 to 368. [2022-04-28 06:02:27,267 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:02:27,267 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-28 06:02:27,268 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-28 06:02:27,283 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-28 06:02:27,289 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:27,289 INFO L93 Difference]: Finished difference Result 376 states and 483 transitions. [2022-04-28 06:02:27,289 INFO L276 IsEmpty]: Start isEmpty. Operand 376 states and 483 transitions. [2022-04-28 06:02:27,290 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:27,290 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:27,290 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-28 06:02:27,291 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-28 06:02:27,296 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:27,296 INFO L93 Difference]: Finished difference Result 376 states and 483 transitions. [2022-04-28 06:02:27,296 INFO L276 IsEmpty]: Start isEmpty. Operand 376 states and 483 transitions. [2022-04-28 06:02:27,297 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:27,297 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:27,297 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:02:27,297 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:02:27,298 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-28 06:02:27,304 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 368 states to 368 states and 475 transitions. [2022-04-28 06:02:27,304 INFO L78 Accepts]: Start accepts. Automaton has 368 states and 475 transitions. Word has length 97 [2022-04-28 06:02:27,305 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:02:27,305 INFO L495 AbstractCegarLoop]: Abstraction has 368 states and 475 transitions. [2022-04-28 06:02:27,305 INFO L496 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-28 06:02:27,305 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 368 states and 475 transitions. [2022-04-28 06:02:36,958 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 475 edges. 475 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:02:36,958 INFO L276 IsEmpty]: Start isEmpty. Operand 368 states and 475 transitions. [2022-04-28 06:02:36,959 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 100 [2022-04-28 06:02:36,959 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:02:36,959 INFO L195 NwaCegarLoop]: 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-28 06:02:36,981 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Forceful destruction successful, exit code 0 [2022-04-28 06:02:37,160 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 29 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable27 [2022-04-28 06:02:37,160 INFO L420 AbstractCegarLoop]: === Iteration 29 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:02:37,160 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:02:37,160 INFO L85 PathProgramCache]: Analyzing trace with hash 1020733748, now seen corresponding path program 7 times [2022-04-28 06:02:37,160 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:02:37,160 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [468136535] [2022-04-28 06:02:37,161 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:02:37,161 INFO L85 PathProgramCache]: Analyzing trace with hash 1020733748, now seen corresponding path program 8 times [2022-04-28 06:02:37,161 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:02:37,161 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1796499122] [2022-04-28 06:02:37,161 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:02:37,161 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:02:37,177 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:02:37,177 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [824186884] [2022-04-28 06:02:37,177 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:02:37,177 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:02:37,177 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:02:37,179 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:02:37,183 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Waiting until timeout for monitored process [2022-04-28 06:02:37,255 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:02:37,255 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:02:37,256 INFO L263 TraceCheckSpWp]: Trace formula consists of 246 conjuncts, 3 conjunts are in the unsatisfiable core [2022-04-28 06:02:37,281 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:02:37,282 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:02:37,541 INFO L272 TraceCheckUtils]: 0: Hoare triple {41995#true} call ULTIMATE.init(); {41995#true} is VALID [2022-04-28 06:02:37,541 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-28 06:02:37,541 INFO L290 TraceCheckUtils]: 2: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-28 06:02:37,541 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41995#true} {41995#true} #102#return; {41995#true} is VALID [2022-04-28 06:02:37,541 INFO L272 TraceCheckUtils]: 4: Hoare triple {41995#true} call #t~ret9 := main(); {41995#true} is VALID [2022-04-28 06:02:37,541 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-28 06:02:37,542 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-28 06:02:37,542 INFO L290 TraceCheckUtils]: 7: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-28 06:02:37,542 INFO L290 TraceCheckUtils]: 8: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-28 06:02:37,542 INFO L290 TraceCheckUtils]: 9: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-28 06:02:37,542 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41995#true} {41995#true} #90#return; {41995#true} is VALID [2022-04-28 06:02:37,542 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-28 06:02:37,542 INFO L290 TraceCheckUtils]: 12: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-28 06:02:37,542 INFO L290 TraceCheckUtils]: 13: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-28 06:02:37,542 INFO L290 TraceCheckUtils]: 14: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-28 06:02:37,542 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41995#true} {41995#true} #92#return; {41995#true} is VALID [2022-04-28 06:02:37,542 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-28 06:02:37,542 INFO L290 TraceCheckUtils]: 17: Hoare triple {41995#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41995#true} is VALID [2022-04-28 06:02:37,542 INFO L290 TraceCheckUtils]: 18: Hoare triple {41995#true} assume !!(#t~post6 < 50);havoc #t~post6; {41995#true} is VALID [2022-04-28 06:02:37,542 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-28 06:02:37,542 INFO L290 TraceCheckUtils]: 20: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-28 06:02:37,543 INFO L290 TraceCheckUtils]: 21: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-28 06:02:37,543 INFO L290 TraceCheckUtils]: 22: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-28 06:02:37,543 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {41995#true} {41995#true} #94#return; {41995#true} is VALID [2022-04-28 06:02:37,543 INFO L290 TraceCheckUtils]: 24: Hoare triple {41995#true} assume !!(0 != ~r~0); {41995#true} is VALID [2022-04-28 06:02:37,543 INFO L290 TraceCheckUtils]: 25: Hoare triple {41995#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41995#true} is VALID [2022-04-28 06:02:37,543 INFO L290 TraceCheckUtils]: 26: Hoare triple {41995#true} assume !!(#t~post7 < 50);havoc #t~post7; {41995#true} is VALID [2022-04-28 06:02:37,543 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-28 06:02:37,543 INFO L290 TraceCheckUtils]: 28: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-28 06:02:37,543 INFO L290 TraceCheckUtils]: 29: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-28 06:02:37,543 INFO L290 TraceCheckUtils]: 30: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-28 06:02:37,543 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {41995#true} {41995#true} #96#return; {41995#true} is VALID [2022-04-28 06:02:37,543 INFO L290 TraceCheckUtils]: 32: Hoare triple {41995#true} assume !(~r~0 > 0); {41995#true} is VALID [2022-04-28 06:02:37,543 INFO L290 TraceCheckUtils]: 33: Hoare triple {41995#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {41995#true} is VALID [2022-04-28 06:02:37,543 INFO L290 TraceCheckUtils]: 34: Hoare triple {41995#true} assume !!(#t~post8 < 50);havoc #t~post8; {41995#true} is VALID [2022-04-28 06:02:37,543 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-28 06:02:37,544 INFO L290 TraceCheckUtils]: 36: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-28 06:02:37,544 INFO L290 TraceCheckUtils]: 37: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-28 06:02:37,544 INFO L290 TraceCheckUtils]: 38: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-28 06:02:37,544 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {41995#true} {41995#true} #98#return; {41995#true} is VALID [2022-04-28 06:02:37,544 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-28 06:02:37,544 INFO L290 TraceCheckUtils]: 41: Hoare triple {41995#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {41995#true} is VALID [2022-04-28 06:02:37,544 INFO L290 TraceCheckUtils]: 42: Hoare triple {41995#true} assume !!(#t~post8 < 50);havoc #t~post8; {41995#true} is VALID [2022-04-28 06:02:37,544 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-28 06:02:37,544 INFO L290 TraceCheckUtils]: 44: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-28 06:02:37,544 INFO L290 TraceCheckUtils]: 45: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-28 06:02:37,544 INFO L290 TraceCheckUtils]: 46: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-28 06:02:37,544 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {41995#true} {41995#true} #98#return; {41995#true} is VALID [2022-04-28 06:02:37,544 INFO L290 TraceCheckUtils]: 48: Hoare triple {41995#true} assume !(~r~0 < 0); {41995#true} is VALID [2022-04-28 06:02:37,544 INFO L290 TraceCheckUtils]: 49: Hoare triple {41995#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41995#true} is VALID [2022-04-28 06:02:37,544 INFO L290 TraceCheckUtils]: 50: Hoare triple {41995#true} assume !!(#t~post6 < 50);havoc #t~post6; {41995#true} is VALID [2022-04-28 06:02:37,545 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-28 06:02:37,545 INFO L290 TraceCheckUtils]: 52: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-28 06:02:37,545 INFO L290 TraceCheckUtils]: 53: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-28 06:02:37,545 INFO L290 TraceCheckUtils]: 54: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-28 06:02:37,545 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {41995#true} {41995#true} #94#return; {41995#true} is VALID [2022-04-28 06:02:37,545 INFO L290 TraceCheckUtils]: 56: Hoare triple {41995#true} assume !!(0 != ~r~0); {41995#true} is VALID [2022-04-28 06:02:37,545 INFO L290 TraceCheckUtils]: 57: Hoare triple {41995#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41995#true} is VALID [2022-04-28 06:02:37,545 INFO L290 TraceCheckUtils]: 58: Hoare triple {41995#true} assume !!(#t~post7 < 50);havoc #t~post7; {41995#true} is VALID [2022-04-28 06:02:37,545 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-28 06:02:37,545 INFO L290 TraceCheckUtils]: 60: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-28 06:02:37,545 INFO L290 TraceCheckUtils]: 61: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-28 06:02:37,545 INFO L290 TraceCheckUtils]: 62: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-28 06:02:37,545 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {41995#true} {41995#true} #96#return; {41995#true} is VALID [2022-04-28 06:02:37,545 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-28 06:02:37,545 INFO L290 TraceCheckUtils]: 65: Hoare triple {41995#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41995#true} is VALID [2022-04-28 06:02:37,546 INFO L290 TraceCheckUtils]: 66: Hoare triple {41995#true} assume !!(#t~post7 < 50);havoc #t~post7; {41995#true} is VALID [2022-04-28 06:02:37,546 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-28 06:02:37,546 INFO L290 TraceCheckUtils]: 68: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-28 06:02:37,546 INFO L290 TraceCheckUtils]: 69: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-28 06:02:37,546 INFO L290 TraceCheckUtils]: 70: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-28 06:02:37,546 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {41995#true} {41995#true} #96#return; {41995#true} is VALID [2022-04-28 06:02:37,546 INFO L290 TraceCheckUtils]: 72: Hoare triple {41995#true} assume !(~r~0 > 0); {42216#(not (< 0 main_~r~0))} is VALID [2022-04-28 06:02:37,546 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-28 06:02:37,547 INFO L290 TraceCheckUtils]: 74: Hoare triple {42216#(not (< 0 main_~r~0))} assume !!(#t~post8 < 50);havoc #t~post8; {42216#(not (< 0 main_~r~0))} is VALID [2022-04-28 06:02:37,547 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-28 06:02:37,547 INFO L290 TraceCheckUtils]: 76: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-28 06:02:37,547 INFO L290 TraceCheckUtils]: 77: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-28 06:02:37,547 INFO L290 TraceCheckUtils]: 78: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-28 06:02:37,547 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-28 06:02:37,548 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-28 06:02:37,548 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-28 06:02:37,549 INFO L290 TraceCheckUtils]: 82: Hoare triple {42241#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} assume !!(#t~post6 < 50);havoc #t~post6; {42241#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} is VALID [2022-04-28 06:02:37,549 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-28 06:02:37,549 INFO L290 TraceCheckUtils]: 84: Hoare triple {41995#true} ~cond := #in~cond; {41995#true} is VALID [2022-04-28 06:02:37,549 INFO L290 TraceCheckUtils]: 85: Hoare triple {41995#true} assume !(0 == ~cond); {41995#true} is VALID [2022-04-28 06:02:37,549 INFO L290 TraceCheckUtils]: 86: Hoare triple {41995#true} assume true; {41995#true} is VALID [2022-04-28 06:02:37,549 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-28 06:02:37,550 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-28 06:02:37,550 INFO L290 TraceCheckUtils]: 89: Hoare triple {41996#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41996#false} is VALID [2022-04-28 06:02:37,550 INFO L290 TraceCheckUtils]: 90: Hoare triple {41996#false} assume !(#t~post7 < 50);havoc #t~post7; {41996#false} is VALID [2022-04-28 06:02:37,550 INFO L290 TraceCheckUtils]: 91: Hoare triple {41996#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {41996#false} is VALID [2022-04-28 06:02:37,550 INFO L290 TraceCheckUtils]: 92: Hoare triple {41996#false} assume !(#t~post8 < 50);havoc #t~post8; {41996#false} is VALID [2022-04-28 06:02:37,550 INFO L290 TraceCheckUtils]: 93: Hoare triple {41996#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41996#false} is VALID [2022-04-28 06:02:37,550 INFO L290 TraceCheckUtils]: 94: Hoare triple {41996#false} assume !(#t~post6 < 50);havoc #t~post6; {41996#false} is VALID [2022-04-28 06:02:37,550 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-28 06:02:37,550 INFO L290 TraceCheckUtils]: 96: Hoare triple {41996#false} ~cond := #in~cond; {41996#false} is VALID [2022-04-28 06:02:37,550 INFO L290 TraceCheckUtils]: 97: Hoare triple {41996#false} assume 0 == ~cond; {41996#false} is VALID [2022-04-28 06:02:37,550 INFO L290 TraceCheckUtils]: 98: Hoare triple {41996#false} assume !false; {41996#false} is VALID [2022-04-28 06:02:37,551 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-28 06:02:37,551 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 06:02:37,551 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:02:37,551 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1796499122] [2022-04-28 06:02:37,551 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:02:37,551 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [824186884] [2022-04-28 06:02:37,551 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [824186884] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:02:37,551 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:02:37,551 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 06:02:37,551 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:02:37,551 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [468136535] [2022-04-28 06:02:37,552 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [468136535] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:02:37,552 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:02:37,552 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 06:02:37,552 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1004872285] [2022-04-28 06:02:37,552 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:02:37,552 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-28 06:02:37,552 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:02:37,552 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-28 06:02:37,594 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-28 06:02:37,595 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 06:02:37,595 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:02:37,596 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 06:02:37,596 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-28 06:02:37,596 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-28 06:02:38,087 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:38,087 INFO L93 Difference]: Finished difference Result 528 states and 693 transitions. [2022-04-28 06:02:38,087 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 06:02:38,087 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-28 06:02:38,088 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:02:38,088 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-28 06:02:38,089 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 94 transitions. [2022-04-28 06:02:38,089 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-28 06:02:38,089 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 94 transitions. [2022-04-28 06:02:38,089 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 94 transitions. [2022-04-28 06:02:38,135 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-28 06:02:38,142 INFO L225 Difference]: With dead ends: 528 [2022-04-28 06:02:38,142 INFO L226 Difference]: Without dead ends: 386 [2022-04-28 06:02:38,143 INFO L412 NwaCegarLoop]: 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-28 06:02:38,143 INFO L413 NwaCegarLoop]: 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-28 06:02:38,143 INFO L414 NwaCegarLoop]: 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-28 06:02:38,144 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 386 states. [2022-04-28 06:02:38,469 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 386 to 376. [2022-04-28 06:02:38,470 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:02:38,470 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-28 06:02:38,471 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-28 06:02:38,471 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-28 06:02:38,477 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:38,477 INFO L93 Difference]: Finished difference Result 386 states and 499 transitions. [2022-04-28 06:02:38,477 INFO L276 IsEmpty]: Start isEmpty. Operand 386 states and 499 transitions. [2022-04-28 06:02:38,478 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:38,478 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:38,478 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-28 06:02:38,479 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-28 06:02:38,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:38,485 INFO L93 Difference]: Finished difference Result 386 states and 499 transitions. [2022-04-28 06:02:38,485 INFO L276 IsEmpty]: Start isEmpty. Operand 386 states and 499 transitions. [2022-04-28 06:02:38,486 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:38,486 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:38,486 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:02:38,486 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:02:38,487 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-28 06:02:38,493 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 376 states to 376 states and 486 transitions. [2022-04-28 06:02:38,494 INFO L78 Accepts]: Start accepts. Automaton has 376 states and 486 transitions. Word has length 99 [2022-04-28 06:02:38,494 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:02:38,494 INFO L495 AbstractCegarLoop]: Abstraction has 376 states and 486 transitions. [2022-04-28 06:02:38,494 INFO L496 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-28 06:02:38,494 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 376 states and 486 transitions. [2022-04-28 06:02:49,879 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 486 edges. 484 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 06:02:49,879 INFO L276 IsEmpty]: Start isEmpty. Operand 376 states and 486 transitions. [2022-04-28 06:02:49,880 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 100 [2022-04-28 06:02:49,880 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:02:49,880 INFO L195 NwaCegarLoop]: 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-28 06:02:49,901 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Forceful destruction successful, exit code 0 [2022-04-28 06:02:50,080 WARN L477 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-28 06:02:50,080 INFO L420 AbstractCegarLoop]: === Iteration 30 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:02:50,081 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:02:50,081 INFO L85 PathProgramCache]: Analyzing trace with hash 359487094, now seen corresponding path program 9 times [2022-04-28 06:02:50,081 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:02:50,081 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [140828315] [2022-04-28 06:02:50,081 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:02:50,081 INFO L85 PathProgramCache]: Analyzing trace with hash 359487094, now seen corresponding path program 10 times [2022-04-28 06:02:50,081 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:02:50,081 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [895327176] [2022-04-28 06:02:50,081 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:02:50,081 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:02:50,109 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:02:50,109 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1195563246] [2022-04-28 06:02:50,109 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 06:02:50,109 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:02:50,109 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:02:50,112 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:02:50,120 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Waiting until timeout for monitored process [2022-04-28 06:02:50,297 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 06:02:50,297 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:02:50,299 INFO L263 TraceCheckSpWp]: Trace formula consists of 258 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 06:02:50,321 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:02:50,323 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:02:50,807 INFO L272 TraceCheckUtils]: 0: Hoare triple {44875#true} call ULTIMATE.init(); {44875#true} is VALID [2022-04-28 06:02:50,808 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-28 06:02:50,808 INFO L290 TraceCheckUtils]: 2: Hoare triple {44883#(<= ~counter~0 0)} assume true; {44883#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:50,808 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44883#(<= ~counter~0 0)} {44875#true} #102#return; {44883#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:50,809 INFO L272 TraceCheckUtils]: 4: Hoare triple {44883#(<= ~counter~0 0)} call #t~ret9 := main(); {44883#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:50,809 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-28 06:02:50,809 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-28 06:02:50,810 INFO L290 TraceCheckUtils]: 7: Hoare triple {44883#(<= ~counter~0 0)} ~cond := #in~cond; {44883#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:50,810 INFO L290 TraceCheckUtils]: 8: Hoare triple {44883#(<= ~counter~0 0)} assume !(0 == ~cond); {44883#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:50,810 INFO L290 TraceCheckUtils]: 9: Hoare triple {44883#(<= ~counter~0 0)} assume true; {44883#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:50,811 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44883#(<= ~counter~0 0)} {44883#(<= ~counter~0 0)} #90#return; {44883#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:50,811 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-28 06:02:50,811 INFO L290 TraceCheckUtils]: 12: Hoare triple {44883#(<= ~counter~0 0)} ~cond := #in~cond; {44883#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:50,811 INFO L290 TraceCheckUtils]: 13: Hoare triple {44883#(<= ~counter~0 0)} assume !(0 == ~cond); {44883#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:50,812 INFO L290 TraceCheckUtils]: 14: Hoare triple {44883#(<= ~counter~0 0)} assume true; {44883#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:50,812 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {44883#(<= ~counter~0 0)} {44883#(<= ~counter~0 0)} #92#return; {44883#(<= ~counter~0 0)} is VALID [2022-04-28 06:02:50,827 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-28 06:02:50,829 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-28 06:02:50,829 INFO L290 TraceCheckUtils]: 18: Hoare triple {44932#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {44932#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:50,829 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-28 06:02:50,830 INFO L290 TraceCheckUtils]: 20: Hoare triple {44932#(<= ~counter~0 1)} ~cond := #in~cond; {44932#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:50,830 INFO L290 TraceCheckUtils]: 21: Hoare triple {44932#(<= ~counter~0 1)} assume !(0 == ~cond); {44932#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:50,830 INFO L290 TraceCheckUtils]: 22: Hoare triple {44932#(<= ~counter~0 1)} assume true; {44932#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:50,831 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {44932#(<= ~counter~0 1)} {44932#(<= ~counter~0 1)} #94#return; {44932#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:50,831 INFO L290 TraceCheckUtils]: 24: Hoare triple {44932#(<= ~counter~0 1)} assume !!(0 != ~r~0); {44932#(<= ~counter~0 1)} is VALID [2022-04-28 06:02:50,832 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-28 06:02:50,832 INFO L290 TraceCheckUtils]: 26: Hoare triple {44957#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {44957#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:50,833 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-28 06:02:50,833 INFO L290 TraceCheckUtils]: 28: Hoare triple {44957#(<= ~counter~0 2)} ~cond := #in~cond; {44957#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:50,833 INFO L290 TraceCheckUtils]: 29: Hoare triple {44957#(<= ~counter~0 2)} assume !(0 == ~cond); {44957#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:50,840 INFO L290 TraceCheckUtils]: 30: Hoare triple {44957#(<= ~counter~0 2)} assume true; {44957#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:50,841 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {44957#(<= ~counter~0 2)} {44957#(<= ~counter~0 2)} #96#return; {44957#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:50,841 INFO L290 TraceCheckUtils]: 32: Hoare triple {44957#(<= ~counter~0 2)} assume !(~r~0 > 0); {44957#(<= ~counter~0 2)} is VALID [2022-04-28 06:02:50,843 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-28 06:02:50,843 INFO L290 TraceCheckUtils]: 34: Hoare triple {44982#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {44982#(<= ~counter~0 3)} is VALID [2022-04-28 06:02:50,843 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-28 06:02:50,844 INFO L290 TraceCheckUtils]: 36: Hoare triple {44982#(<= ~counter~0 3)} ~cond := #in~cond; {44982#(<= ~counter~0 3)} is VALID [2022-04-28 06:02:50,844 INFO L290 TraceCheckUtils]: 37: Hoare triple {44982#(<= ~counter~0 3)} assume !(0 == ~cond); {44982#(<= ~counter~0 3)} is VALID [2022-04-28 06:02:50,844 INFO L290 TraceCheckUtils]: 38: Hoare triple {44982#(<= ~counter~0 3)} assume true; {44982#(<= ~counter~0 3)} is VALID [2022-04-28 06:02:50,845 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {44982#(<= ~counter~0 3)} {44982#(<= ~counter~0 3)} #98#return; {44982#(<= ~counter~0 3)} is VALID [2022-04-28 06:02:50,845 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-28 06:02:50,846 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-28 06:02:50,846 INFO L290 TraceCheckUtils]: 42: Hoare triple {45007#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {45007#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:50,846 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-28 06:02:50,847 INFO L290 TraceCheckUtils]: 44: Hoare triple {45007#(<= ~counter~0 4)} ~cond := #in~cond; {45007#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:50,847 INFO L290 TraceCheckUtils]: 45: Hoare triple {45007#(<= ~counter~0 4)} assume !(0 == ~cond); {45007#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:50,847 INFO L290 TraceCheckUtils]: 46: Hoare triple {45007#(<= ~counter~0 4)} assume true; {45007#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:50,848 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {45007#(<= ~counter~0 4)} {45007#(<= ~counter~0 4)} #98#return; {45007#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:50,848 INFO L290 TraceCheckUtils]: 48: Hoare triple {45007#(<= ~counter~0 4)} assume !(~r~0 < 0); {45007#(<= ~counter~0 4)} is VALID [2022-04-28 06:02:50,849 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-28 06:02:50,849 INFO L290 TraceCheckUtils]: 50: Hoare triple {45032#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {45032#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:50,849 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-28 06:02:50,850 INFO L290 TraceCheckUtils]: 52: Hoare triple {45032#(<= ~counter~0 5)} ~cond := #in~cond; {45032#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:50,850 INFO L290 TraceCheckUtils]: 53: Hoare triple {45032#(<= ~counter~0 5)} assume !(0 == ~cond); {45032#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:50,850 INFO L290 TraceCheckUtils]: 54: Hoare triple {45032#(<= ~counter~0 5)} assume true; {45032#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:50,851 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {45032#(<= ~counter~0 5)} {45032#(<= ~counter~0 5)} #94#return; {45032#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:50,851 INFO L290 TraceCheckUtils]: 56: Hoare triple {45032#(<= ~counter~0 5)} assume !!(0 != ~r~0); {45032#(<= ~counter~0 5)} is VALID [2022-04-28 06:02:50,852 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-28 06:02:50,852 INFO L290 TraceCheckUtils]: 58: Hoare triple {45057#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {45057#(<= ~counter~0 6)} is VALID [2022-04-28 06:02:50,853 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-28 06:02:50,853 INFO L290 TraceCheckUtils]: 60: Hoare triple {45057#(<= ~counter~0 6)} ~cond := #in~cond; {45057#(<= ~counter~0 6)} is VALID [2022-04-28 06:02:50,853 INFO L290 TraceCheckUtils]: 61: Hoare triple {45057#(<= ~counter~0 6)} assume !(0 == ~cond); {45057#(<= ~counter~0 6)} is VALID [2022-04-28 06:02:50,853 INFO L290 TraceCheckUtils]: 62: Hoare triple {45057#(<= ~counter~0 6)} assume true; {45057#(<= ~counter~0 6)} is VALID [2022-04-28 06:02:50,854 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {45057#(<= ~counter~0 6)} {45057#(<= ~counter~0 6)} #96#return; {45057#(<= ~counter~0 6)} is VALID [2022-04-28 06:02:50,854 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-28 06:02:50,855 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-28 06:02:50,855 INFO L290 TraceCheckUtils]: 66: Hoare triple {45082#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {45082#(<= ~counter~0 7)} is VALID [2022-04-28 06:02:50,856 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-28 06:02:50,856 INFO L290 TraceCheckUtils]: 68: Hoare triple {45082#(<= ~counter~0 7)} ~cond := #in~cond; {45082#(<= ~counter~0 7)} is VALID [2022-04-28 06:02:50,856 INFO L290 TraceCheckUtils]: 69: Hoare triple {45082#(<= ~counter~0 7)} assume !(0 == ~cond); {45082#(<= ~counter~0 7)} is VALID [2022-04-28 06:02:50,856 INFO L290 TraceCheckUtils]: 70: Hoare triple {45082#(<= ~counter~0 7)} assume true; {45082#(<= ~counter~0 7)} is VALID [2022-04-28 06:02:50,857 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {45082#(<= ~counter~0 7)} {45082#(<= ~counter~0 7)} #96#return; {45082#(<= ~counter~0 7)} is VALID [2022-04-28 06:02:50,857 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-28 06:02:50,858 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-28 06:02:50,858 INFO L290 TraceCheckUtils]: 74: Hoare triple {45107#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {45107#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:50,859 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-28 06:02:50,872 INFO L290 TraceCheckUtils]: 76: Hoare triple {45107#(<= ~counter~0 8)} ~cond := #in~cond; {45107#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:50,873 INFO L290 TraceCheckUtils]: 77: Hoare triple {45107#(<= ~counter~0 8)} assume !(0 == ~cond); {45107#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:50,873 INFO L290 TraceCheckUtils]: 78: Hoare triple {45107#(<= ~counter~0 8)} assume true; {45107#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:50,874 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {45107#(<= ~counter~0 8)} {45107#(<= ~counter~0 8)} #96#return; {45107#(<= ~counter~0 8)} is VALID [2022-04-28 06:02:50,874 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-28 06:02:50,875 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-28 06:02:50,875 INFO L290 TraceCheckUtils]: 82: Hoare triple {45132#(<= ~counter~0 9)} assume !!(#t~post7 < 50);havoc #t~post7; {45132#(<= ~counter~0 9)} is VALID [2022-04-28 06:02:50,876 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-28 06:02:50,876 INFO L290 TraceCheckUtils]: 84: Hoare triple {45132#(<= ~counter~0 9)} ~cond := #in~cond; {45132#(<= ~counter~0 9)} is VALID [2022-04-28 06:02:50,877 INFO L290 TraceCheckUtils]: 85: Hoare triple {45132#(<= ~counter~0 9)} assume !(0 == ~cond); {45132#(<= ~counter~0 9)} is VALID [2022-04-28 06:02:50,877 INFO L290 TraceCheckUtils]: 86: Hoare triple {45132#(<= ~counter~0 9)} assume true; {45132#(<= ~counter~0 9)} is VALID [2022-04-28 06:02:50,877 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {45132#(<= ~counter~0 9)} {45132#(<= ~counter~0 9)} #96#return; {45132#(<= ~counter~0 9)} is VALID [2022-04-28 06:02:50,878 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-28 06:02:50,878 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-28 06:02:50,878 INFO L290 TraceCheckUtils]: 90: Hoare triple {45157#(<= |main_#t~post7| 9)} assume !(#t~post7 < 50);havoc #t~post7; {44876#false} is VALID [2022-04-28 06:02:50,878 INFO L290 TraceCheckUtils]: 91: Hoare triple {44876#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {44876#false} is VALID [2022-04-28 06:02:50,878 INFO L290 TraceCheckUtils]: 92: Hoare triple {44876#false} assume !(#t~post8 < 50);havoc #t~post8; {44876#false} is VALID [2022-04-28 06:02:50,879 INFO L290 TraceCheckUtils]: 93: Hoare triple {44876#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {44876#false} is VALID [2022-04-28 06:02:50,879 INFO L290 TraceCheckUtils]: 94: Hoare triple {44876#false} assume !(#t~post6 < 50);havoc #t~post6; {44876#false} is VALID [2022-04-28 06:02:50,879 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-28 06:02:50,879 INFO L290 TraceCheckUtils]: 96: Hoare triple {44876#false} ~cond := #in~cond; {44876#false} is VALID [2022-04-28 06:02:50,879 INFO L290 TraceCheckUtils]: 97: Hoare triple {44876#false} assume 0 == ~cond; {44876#false} is VALID [2022-04-28 06:02:50,879 INFO L290 TraceCheckUtils]: 98: Hoare triple {44876#false} assume !false; {44876#false} is VALID [2022-04-28 06:02:50,879 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-28 06:02:50,879 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:02:51,476 INFO L290 TraceCheckUtils]: 98: Hoare triple {44876#false} assume !false; {44876#false} is VALID [2022-04-28 06:02:51,477 INFO L290 TraceCheckUtils]: 97: Hoare triple {44876#false} assume 0 == ~cond; {44876#false} is VALID [2022-04-28 06:02:51,477 INFO L290 TraceCheckUtils]: 96: Hoare triple {44876#false} ~cond := #in~cond; {44876#false} is VALID [2022-04-28 06:02:51,477 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-28 06:02:51,477 INFO L290 TraceCheckUtils]: 94: Hoare triple {44876#false} assume !(#t~post6 < 50);havoc #t~post6; {44876#false} is VALID [2022-04-28 06:02:51,477 INFO L290 TraceCheckUtils]: 93: Hoare triple {44876#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {44876#false} is VALID [2022-04-28 06:02:51,477 INFO L290 TraceCheckUtils]: 92: Hoare triple {44876#false} assume !(#t~post8 < 50);havoc #t~post8; {44876#false} is VALID [2022-04-28 06:02:51,477 INFO L290 TraceCheckUtils]: 91: Hoare triple {44876#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {44876#false} is VALID [2022-04-28 06:02:51,480 INFO L290 TraceCheckUtils]: 90: Hoare triple {45209#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {44876#false} is VALID [2022-04-28 06:02:51,480 INFO L290 TraceCheckUtils]: 89: Hoare triple {45213#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45209#(< |main_#t~post7| 50)} is VALID [2022-04-28 06:02:51,480 INFO L290 TraceCheckUtils]: 88: Hoare triple {45213#(< ~counter~0 50)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {45213#(< ~counter~0 50)} is VALID [2022-04-28 06:02:51,481 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {44875#true} {45213#(< ~counter~0 50)} #96#return; {45213#(< ~counter~0 50)} is VALID [2022-04-28 06:02:51,481 INFO L290 TraceCheckUtils]: 86: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-28 06:02:51,481 INFO L290 TraceCheckUtils]: 85: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-28 06:02:51,481 INFO L290 TraceCheckUtils]: 84: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-28 06:02:51,481 INFO L272 TraceCheckUtils]: 83: Hoare triple {45213#(< ~counter~0 50)} call __VERIFIER_assert((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-28 06:02:51,482 INFO L290 TraceCheckUtils]: 82: Hoare triple {45213#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {45213#(< ~counter~0 50)} is VALID [2022-04-28 06:02:51,483 INFO L290 TraceCheckUtils]: 81: Hoare triple {45238#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45213#(< ~counter~0 50)} is VALID [2022-04-28 06:02:51,483 INFO L290 TraceCheckUtils]: 80: Hoare triple {45238#(< ~counter~0 49)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {45238#(< ~counter~0 49)} is VALID [2022-04-28 06:02:51,483 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {44875#true} {45238#(< ~counter~0 49)} #96#return; {45238#(< ~counter~0 49)} is VALID [2022-04-28 06:02:51,484 INFO L290 TraceCheckUtils]: 78: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-28 06:02:51,484 INFO L290 TraceCheckUtils]: 77: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-28 06:02:51,484 INFO L290 TraceCheckUtils]: 76: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-28 06:02:51,484 INFO L272 TraceCheckUtils]: 75: Hoare triple {45238#(< ~counter~0 49)} call __VERIFIER_assert((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-28 06:02:51,484 INFO L290 TraceCheckUtils]: 74: Hoare triple {45238#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {45238#(< ~counter~0 49)} is VALID [2022-04-28 06:02:51,485 INFO L290 TraceCheckUtils]: 73: Hoare triple {45263#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45238#(< ~counter~0 49)} is VALID [2022-04-28 06:02:51,485 INFO L290 TraceCheckUtils]: 72: Hoare triple {45263#(< ~counter~0 48)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {45263#(< ~counter~0 48)} is VALID [2022-04-28 06:02:51,485 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {44875#true} {45263#(< ~counter~0 48)} #96#return; {45263#(< ~counter~0 48)} is VALID [2022-04-28 06:02:51,485 INFO L290 TraceCheckUtils]: 70: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-28 06:02:51,486 INFO L290 TraceCheckUtils]: 69: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-28 06:02:51,486 INFO L290 TraceCheckUtils]: 68: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-28 06:02:51,486 INFO L272 TraceCheckUtils]: 67: Hoare triple {45263#(< ~counter~0 48)} call __VERIFIER_assert((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-28 06:02:51,486 INFO L290 TraceCheckUtils]: 66: Hoare triple {45263#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {45263#(< ~counter~0 48)} is VALID [2022-04-28 06:02:51,486 INFO L290 TraceCheckUtils]: 65: Hoare triple {45288#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45263#(< ~counter~0 48)} is VALID [2022-04-28 06:02:51,487 INFO L290 TraceCheckUtils]: 64: Hoare triple {45288#(< ~counter~0 47)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {45288#(< ~counter~0 47)} is VALID [2022-04-28 06:02:51,487 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {44875#true} {45288#(< ~counter~0 47)} #96#return; {45288#(< ~counter~0 47)} is VALID [2022-04-28 06:02:51,487 INFO L290 TraceCheckUtils]: 62: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-28 06:02:51,487 INFO L290 TraceCheckUtils]: 61: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-28 06:02:51,487 INFO L290 TraceCheckUtils]: 60: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-28 06:02:51,488 INFO L272 TraceCheckUtils]: 59: Hoare triple {45288#(< ~counter~0 47)} call __VERIFIER_assert((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-28 06:02:51,488 INFO L290 TraceCheckUtils]: 58: Hoare triple {45288#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {45288#(< ~counter~0 47)} is VALID [2022-04-28 06:02:51,488 INFO L290 TraceCheckUtils]: 57: Hoare triple {45313#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45288#(< ~counter~0 47)} is VALID [2022-04-28 06:02:51,489 INFO L290 TraceCheckUtils]: 56: Hoare triple {45313#(< ~counter~0 46)} assume !!(0 != ~r~0); {45313#(< ~counter~0 46)} is VALID [2022-04-28 06:02:51,489 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {44875#true} {45313#(< ~counter~0 46)} #94#return; {45313#(< ~counter~0 46)} is VALID [2022-04-28 06:02:51,489 INFO L290 TraceCheckUtils]: 54: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-28 06:02:51,489 INFO L290 TraceCheckUtils]: 53: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-28 06:02:51,489 INFO L290 TraceCheckUtils]: 52: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-28 06:02:51,489 INFO L272 TraceCheckUtils]: 51: Hoare triple {45313#(< ~counter~0 46)} call __VERIFIER_assert((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-28 06:02:51,490 INFO L290 TraceCheckUtils]: 50: Hoare triple {45313#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {45313#(< ~counter~0 46)} is VALID [2022-04-28 06:02:51,490 INFO L290 TraceCheckUtils]: 49: Hoare triple {45338#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45313#(< ~counter~0 46)} is VALID [2022-04-28 06:02:51,491 INFO L290 TraceCheckUtils]: 48: Hoare triple {45338#(< ~counter~0 45)} assume !(~r~0 < 0); {45338#(< ~counter~0 45)} is VALID [2022-04-28 06:02:51,491 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {44875#true} {45338#(< ~counter~0 45)} #98#return; {45338#(< ~counter~0 45)} is VALID [2022-04-28 06:02:51,491 INFO L290 TraceCheckUtils]: 46: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-28 06:02:51,491 INFO L290 TraceCheckUtils]: 45: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-28 06:02:51,491 INFO L290 TraceCheckUtils]: 44: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-28 06:02:51,491 INFO L272 TraceCheckUtils]: 43: Hoare triple {45338#(< ~counter~0 45)} call __VERIFIER_assert((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-28 06:02:51,492 INFO L290 TraceCheckUtils]: 42: Hoare triple {45338#(< ~counter~0 45)} assume !!(#t~post8 < 50);havoc #t~post8; {45338#(< ~counter~0 45)} is VALID [2022-04-28 06:02:51,492 INFO L290 TraceCheckUtils]: 41: Hoare triple {45363#(< ~counter~0 44)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45338#(< ~counter~0 45)} is VALID [2022-04-28 06:02:51,493 INFO L290 TraceCheckUtils]: 40: Hoare triple {45363#(< ~counter~0 44)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {45363#(< ~counter~0 44)} is VALID [2022-04-28 06:02:51,493 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {44875#true} {45363#(< ~counter~0 44)} #98#return; {45363#(< ~counter~0 44)} is VALID [2022-04-28 06:02:51,493 INFO L290 TraceCheckUtils]: 38: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-28 06:02:51,493 INFO L290 TraceCheckUtils]: 37: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-28 06:02:51,493 INFO L290 TraceCheckUtils]: 36: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-28 06:02:51,493 INFO L272 TraceCheckUtils]: 35: Hoare triple {45363#(< ~counter~0 44)} call __VERIFIER_assert((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-28 06:02:51,494 INFO L290 TraceCheckUtils]: 34: Hoare triple {45363#(< ~counter~0 44)} assume !!(#t~post8 < 50);havoc #t~post8; {45363#(< ~counter~0 44)} is VALID [2022-04-28 06:02:51,494 INFO L290 TraceCheckUtils]: 33: Hoare triple {45388#(< ~counter~0 43)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45363#(< ~counter~0 44)} is VALID [2022-04-28 06:02:51,494 INFO L290 TraceCheckUtils]: 32: Hoare triple {45388#(< ~counter~0 43)} assume !(~r~0 > 0); {45388#(< ~counter~0 43)} is VALID [2022-04-28 06:02:51,495 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {44875#true} {45388#(< ~counter~0 43)} #96#return; {45388#(< ~counter~0 43)} is VALID [2022-04-28 06:02:51,495 INFO L290 TraceCheckUtils]: 30: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-28 06:02:51,495 INFO L290 TraceCheckUtils]: 29: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-28 06:02:51,495 INFO L290 TraceCheckUtils]: 28: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-28 06:02:51,495 INFO L272 TraceCheckUtils]: 27: Hoare triple {45388#(< ~counter~0 43)} call __VERIFIER_assert((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-28 06:02:51,496 INFO L290 TraceCheckUtils]: 26: Hoare triple {45388#(< ~counter~0 43)} assume !!(#t~post7 < 50);havoc #t~post7; {45388#(< ~counter~0 43)} is VALID [2022-04-28 06:02:51,496 INFO L290 TraceCheckUtils]: 25: Hoare triple {45413#(< ~counter~0 42)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45388#(< ~counter~0 43)} is VALID [2022-04-28 06:02:51,496 INFO L290 TraceCheckUtils]: 24: Hoare triple {45413#(< ~counter~0 42)} assume !!(0 != ~r~0); {45413#(< ~counter~0 42)} is VALID [2022-04-28 06:02:51,497 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {44875#true} {45413#(< ~counter~0 42)} #94#return; {45413#(< ~counter~0 42)} is VALID [2022-04-28 06:02:51,497 INFO L290 TraceCheckUtils]: 22: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-28 06:02:51,497 INFO L290 TraceCheckUtils]: 21: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-28 06:02:51,497 INFO L290 TraceCheckUtils]: 20: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-28 06:02:51,497 INFO L272 TraceCheckUtils]: 19: Hoare triple {45413#(< ~counter~0 42)} call __VERIFIER_assert((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-28 06:02:51,498 INFO L290 TraceCheckUtils]: 18: Hoare triple {45413#(< ~counter~0 42)} assume !!(#t~post6 < 50);havoc #t~post6; {45413#(< ~counter~0 42)} is VALID [2022-04-28 06:02:51,498 INFO L290 TraceCheckUtils]: 17: Hoare triple {45438#(< ~counter~0 41)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45413#(< ~counter~0 42)} is VALID [2022-04-28 06:02:51,498 INFO L290 TraceCheckUtils]: 16: Hoare triple {45438#(< ~counter~0 41)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {45438#(< ~counter~0 41)} is VALID [2022-04-28 06:02:51,499 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {44875#true} {45438#(< ~counter~0 41)} #92#return; {45438#(< ~counter~0 41)} is VALID [2022-04-28 06:02:51,499 INFO L290 TraceCheckUtils]: 14: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-28 06:02:51,499 INFO L290 TraceCheckUtils]: 13: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-28 06:02:51,499 INFO L290 TraceCheckUtils]: 12: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-28 06:02:51,499 INFO L272 TraceCheckUtils]: 11: Hoare triple {45438#(< ~counter~0 41)} 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-28 06:02:51,500 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44875#true} {45438#(< ~counter~0 41)} #90#return; {45438#(< ~counter~0 41)} is VALID [2022-04-28 06:02:51,500 INFO L290 TraceCheckUtils]: 9: Hoare triple {44875#true} assume true; {44875#true} is VALID [2022-04-28 06:02:51,500 INFO L290 TraceCheckUtils]: 8: Hoare triple {44875#true} assume !(0 == ~cond); {44875#true} is VALID [2022-04-28 06:02:51,500 INFO L290 TraceCheckUtils]: 7: Hoare triple {44875#true} ~cond := #in~cond; {44875#true} is VALID [2022-04-28 06:02:51,500 INFO L272 TraceCheckUtils]: 6: Hoare triple {45438#(< ~counter~0 41)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {44875#true} is VALID [2022-04-28 06:02:51,500 INFO L290 TraceCheckUtils]: 5: Hoare triple {45438#(< ~counter~0 41)} 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 41)} is VALID [2022-04-28 06:02:51,500 INFO L272 TraceCheckUtils]: 4: Hoare triple {45438#(< ~counter~0 41)} call #t~ret9 := main(); {45438#(< ~counter~0 41)} is VALID [2022-04-28 06:02:51,501 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45438#(< ~counter~0 41)} {44875#true} #102#return; {45438#(< ~counter~0 41)} is VALID [2022-04-28 06:02:51,501 INFO L290 TraceCheckUtils]: 2: Hoare triple {45438#(< ~counter~0 41)} assume true; {45438#(< ~counter~0 41)} is VALID [2022-04-28 06:02:51,501 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 41)} is VALID [2022-04-28 06:02:51,502 INFO L272 TraceCheckUtils]: 0: Hoare triple {44875#true} call ULTIMATE.init(); {44875#true} is VALID [2022-04-28 06:02:51,502 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-28 06:02:51,502 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:02:51,502 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [895327176] [2022-04-28 06:02:51,502 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:02:51,502 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1195563246] [2022-04-28 06:02:51,502 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1195563246] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:02:51,502 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:02:51,502 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-28 06:02:51,503 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:02:51,503 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [140828315] [2022-04-28 06:02:51,503 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [140828315] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:02:51,503 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:02:51,503 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 06:02:51,503 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1196459428] [2022-04-28 06:02:51,503 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:02:51,503 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-28 06:02:51,503 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:02:51,504 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-28 06:02:51,574 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-28 06:02:51,574 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 06:02:51,575 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:02:51,575 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 06:02:51,575 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-28 06:02:51,575 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-28 06:02:52,957 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:52,957 INFO L93 Difference]: Finished difference Result 499 states and 663 transitions. [2022-04-28 06:02:52,957 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-28 06:02:52,958 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-28 06:02:52,971 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:02:52,975 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-28 06:02:52,976 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 216 transitions. [2022-04-28 06:02:52,977 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-28 06:02:52,978 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 216 transitions. [2022-04-28 06:02:52,978 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 216 transitions. [2022-04-28 06:02:53,254 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-28 06:02:53,262 INFO L225 Difference]: With dead ends: 499 [2022-04-28 06:02:53,262 INFO L226 Difference]: Without dead ends: 388 [2022-04-28 06:02:53,263 INFO L412 NwaCegarLoop]: 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-28 06:02:53,264 INFO L413 NwaCegarLoop]: 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-28 06:02:53,264 INFO L414 NwaCegarLoop]: 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-28 06:02:53,265 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 388 states. [2022-04-28 06:02:54,036 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 388 to 388. [2022-04-28 06:02:54,036 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:02:54,037 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-28 06:02:54,037 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-28 06:02:54,037 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-28 06:02:54,044 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:54,044 INFO L93 Difference]: Finished difference Result 388 states and 498 transitions. [2022-04-28 06:02:54,044 INFO L276 IsEmpty]: Start isEmpty. Operand 388 states and 498 transitions. [2022-04-28 06:02:54,044 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:54,044 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:54,045 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-28 06:02:54,045 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-28 06:02:54,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:54,070 INFO L93 Difference]: Finished difference Result 388 states and 498 transitions. [2022-04-28 06:02:54,070 INFO L276 IsEmpty]: Start isEmpty. Operand 388 states and 498 transitions. [2022-04-28 06:02:54,070 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:54,070 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:54,070 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:02:54,070 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:02:54,071 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-28 06:02:54,078 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 388 states to 388 states and 498 transitions. [2022-04-28 06:02:54,079 INFO L78 Accepts]: Start accepts. Automaton has 388 states and 498 transitions. Word has length 99 [2022-04-28 06:02:54,079 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:02:54,079 INFO L495 AbstractCegarLoop]: Abstraction has 388 states and 498 transitions. [2022-04-28 06:02:54,079 INFO L496 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-28 06:02:54,079 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 388 states and 498 transitions. [2022-04-28 06:03:08,446 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 498 edges. 495 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-28 06:03:08,446 INFO L276 IsEmpty]: Start isEmpty. Operand 388 states and 498 transitions. [2022-04-28 06:03:08,447 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 104 [2022-04-28 06:03:08,447 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:03:08,447 INFO L195 NwaCegarLoop]: 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-28 06:03:08,469 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Forceful destruction successful, exit code 0 [2022-04-28 06:03:08,647 WARN L477 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-28 06:03:08,647 INFO L420 AbstractCegarLoop]: === Iteration 31 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:03:08,648 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:03:08,648 INFO L85 PathProgramCache]: Analyzing trace with hash -1761003221, now seen corresponding path program 3 times [2022-04-28 06:03:08,648 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:03:08,648 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [753811000] [2022-04-28 06:03:08,648 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:03:08,648 INFO L85 PathProgramCache]: Analyzing trace with hash -1761003221, now seen corresponding path program 4 times [2022-04-28 06:03:08,648 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:03:08,648 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [272187603] [2022-04-28 06:03:08,648 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:03:08,649 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:03:08,674 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:03:08,674 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [7431266] [2022-04-28 06:03:08,674 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 06:03:08,674 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:03:08,674 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:03:08,676 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:03:08,699 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Waiting until timeout for monitored process [2022-04-28 06:03:08,821 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 06:03:08,821 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:03:08,833 INFO L263 TraceCheckSpWp]: Trace formula consists of 259 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-28 06:03:08,853 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:03:08,855 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:03:09,469 INFO L272 TraceCheckUtils]: 0: Hoare triple {48058#true} call ULTIMATE.init(); {48058#true} is VALID [2022-04-28 06:03:09,469 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-28 06:03:09,470 INFO L290 TraceCheckUtils]: 2: Hoare triple {48066#(<= ~counter~0 0)} assume true; {48066#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:09,470 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {48066#(<= ~counter~0 0)} {48058#true} #102#return; {48066#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:09,470 INFO L272 TraceCheckUtils]: 4: Hoare triple {48066#(<= ~counter~0 0)} call #t~ret9 := main(); {48066#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:09,471 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-28 06:03:09,471 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-28 06:03:09,471 INFO L290 TraceCheckUtils]: 7: Hoare triple {48066#(<= ~counter~0 0)} ~cond := #in~cond; {48066#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:09,472 INFO L290 TraceCheckUtils]: 8: Hoare triple {48066#(<= ~counter~0 0)} assume !(0 == ~cond); {48066#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:09,472 INFO L290 TraceCheckUtils]: 9: Hoare triple {48066#(<= ~counter~0 0)} assume true; {48066#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:09,472 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {48066#(<= ~counter~0 0)} {48066#(<= ~counter~0 0)} #90#return; {48066#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:09,473 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-28 06:03:09,473 INFO L290 TraceCheckUtils]: 12: Hoare triple {48066#(<= ~counter~0 0)} ~cond := #in~cond; {48066#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:09,473 INFO L290 TraceCheckUtils]: 13: Hoare triple {48066#(<= ~counter~0 0)} assume !(0 == ~cond); {48066#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:09,474 INFO L290 TraceCheckUtils]: 14: Hoare triple {48066#(<= ~counter~0 0)} assume true; {48066#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:09,474 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {48066#(<= ~counter~0 0)} {48066#(<= ~counter~0 0)} #92#return; {48066#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:09,474 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-28 06:03:09,475 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-28 06:03:09,485 INFO L290 TraceCheckUtils]: 18: Hoare triple {48115#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {48115#(<= ~counter~0 1)} is VALID [2022-04-28 06:03:09,486 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-28 06:03:09,486 INFO L290 TraceCheckUtils]: 20: Hoare triple {48115#(<= ~counter~0 1)} ~cond := #in~cond; {48115#(<= ~counter~0 1)} is VALID [2022-04-28 06:03:09,486 INFO L290 TraceCheckUtils]: 21: Hoare triple {48115#(<= ~counter~0 1)} assume !(0 == ~cond); {48115#(<= ~counter~0 1)} is VALID [2022-04-28 06:03:09,487 INFO L290 TraceCheckUtils]: 22: Hoare triple {48115#(<= ~counter~0 1)} assume true; {48115#(<= ~counter~0 1)} is VALID [2022-04-28 06:03:09,487 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {48115#(<= ~counter~0 1)} {48115#(<= ~counter~0 1)} #94#return; {48115#(<= ~counter~0 1)} is VALID [2022-04-28 06:03:09,487 INFO L290 TraceCheckUtils]: 24: Hoare triple {48115#(<= ~counter~0 1)} assume !!(0 != ~r~0); {48115#(<= ~counter~0 1)} is VALID [2022-04-28 06:03:09,489 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-28 06:03:09,489 INFO L290 TraceCheckUtils]: 26: Hoare triple {48140#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {48140#(<= ~counter~0 2)} is VALID [2022-04-28 06:03:09,489 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-28 06:03:09,490 INFO L290 TraceCheckUtils]: 28: Hoare triple {48140#(<= ~counter~0 2)} ~cond := #in~cond; {48140#(<= ~counter~0 2)} is VALID [2022-04-28 06:03:09,490 INFO L290 TraceCheckUtils]: 29: Hoare triple {48140#(<= ~counter~0 2)} assume !(0 == ~cond); {48140#(<= ~counter~0 2)} is VALID [2022-04-28 06:03:09,490 INFO L290 TraceCheckUtils]: 30: Hoare triple {48140#(<= ~counter~0 2)} assume true; {48140#(<= ~counter~0 2)} is VALID [2022-04-28 06:03:09,491 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {48140#(<= ~counter~0 2)} {48140#(<= ~counter~0 2)} #96#return; {48140#(<= ~counter~0 2)} is VALID [2022-04-28 06:03:09,491 INFO L290 TraceCheckUtils]: 32: Hoare triple {48140#(<= ~counter~0 2)} assume !(~r~0 > 0); {48140#(<= ~counter~0 2)} is VALID [2022-04-28 06:03:09,492 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-28 06:03:09,492 INFO L290 TraceCheckUtils]: 34: Hoare triple {48165#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {48165#(<= ~counter~0 3)} is VALID [2022-04-28 06:03:09,493 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-28 06:03:09,493 INFO L290 TraceCheckUtils]: 36: Hoare triple {48165#(<= ~counter~0 3)} ~cond := #in~cond; {48165#(<= ~counter~0 3)} is VALID [2022-04-28 06:03:09,493 INFO L290 TraceCheckUtils]: 37: Hoare triple {48165#(<= ~counter~0 3)} assume !(0 == ~cond); {48165#(<= ~counter~0 3)} is VALID [2022-04-28 06:03:09,493 INFO L290 TraceCheckUtils]: 38: Hoare triple {48165#(<= ~counter~0 3)} assume true; {48165#(<= ~counter~0 3)} is VALID [2022-04-28 06:03:09,494 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {48165#(<= ~counter~0 3)} {48165#(<= ~counter~0 3)} #98#return; {48165#(<= ~counter~0 3)} is VALID [2022-04-28 06:03:09,494 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-28 06:03:09,495 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-28 06:03:09,495 INFO L290 TraceCheckUtils]: 42: Hoare triple {48190#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {48190#(<= ~counter~0 4)} is VALID [2022-04-28 06:03:09,496 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-28 06:03:09,496 INFO L290 TraceCheckUtils]: 44: Hoare triple {48190#(<= ~counter~0 4)} ~cond := #in~cond; {48190#(<= ~counter~0 4)} is VALID [2022-04-28 06:03:09,496 INFO L290 TraceCheckUtils]: 45: Hoare triple {48190#(<= ~counter~0 4)} assume !(0 == ~cond); {48190#(<= ~counter~0 4)} is VALID [2022-04-28 06:03:09,497 INFO L290 TraceCheckUtils]: 46: Hoare triple {48190#(<= ~counter~0 4)} assume true; {48190#(<= ~counter~0 4)} is VALID [2022-04-28 06:03:09,497 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {48190#(<= ~counter~0 4)} {48190#(<= ~counter~0 4)} #98#return; {48190#(<= ~counter~0 4)} is VALID [2022-04-28 06:03:09,497 INFO L290 TraceCheckUtils]: 48: Hoare triple {48190#(<= ~counter~0 4)} assume !(~r~0 < 0); {48190#(<= ~counter~0 4)} is VALID [2022-04-28 06:03:09,498 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-28 06:03:09,498 INFO L290 TraceCheckUtils]: 50: Hoare triple {48215#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {48215#(<= ~counter~0 5)} is VALID [2022-04-28 06:03:09,499 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-28 06:03:09,499 INFO L290 TraceCheckUtils]: 52: Hoare triple {48215#(<= ~counter~0 5)} ~cond := #in~cond; {48215#(<= ~counter~0 5)} is VALID [2022-04-28 06:03:09,499 INFO L290 TraceCheckUtils]: 53: Hoare triple {48215#(<= ~counter~0 5)} assume !(0 == ~cond); {48215#(<= ~counter~0 5)} is VALID [2022-04-28 06:03:09,500 INFO L290 TraceCheckUtils]: 54: Hoare triple {48215#(<= ~counter~0 5)} assume true; {48215#(<= ~counter~0 5)} is VALID [2022-04-28 06:03:09,500 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {48215#(<= ~counter~0 5)} {48215#(<= ~counter~0 5)} #94#return; {48215#(<= ~counter~0 5)} is VALID [2022-04-28 06:03:09,500 INFO L290 TraceCheckUtils]: 56: Hoare triple {48215#(<= ~counter~0 5)} assume !!(0 != ~r~0); {48215#(<= ~counter~0 5)} is VALID [2022-04-28 06:03:09,501 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-28 06:03:09,501 INFO L290 TraceCheckUtils]: 58: Hoare triple {48240#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {48240#(<= ~counter~0 6)} is VALID [2022-04-28 06:03:09,502 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-28 06:03:09,502 INFO L290 TraceCheckUtils]: 60: Hoare triple {48240#(<= ~counter~0 6)} ~cond := #in~cond; {48240#(<= ~counter~0 6)} is VALID [2022-04-28 06:03:09,502 INFO L290 TraceCheckUtils]: 61: Hoare triple {48240#(<= ~counter~0 6)} assume !(0 == ~cond); {48240#(<= ~counter~0 6)} is VALID [2022-04-28 06:03:09,503 INFO L290 TraceCheckUtils]: 62: Hoare triple {48240#(<= ~counter~0 6)} assume true; {48240#(<= ~counter~0 6)} is VALID [2022-04-28 06:03:09,503 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {48240#(<= ~counter~0 6)} {48240#(<= ~counter~0 6)} #96#return; {48240#(<= ~counter~0 6)} is VALID [2022-04-28 06:03:09,503 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-28 06:03:09,504 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-28 06:03:09,504 INFO L290 TraceCheckUtils]: 66: Hoare triple {48265#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {48265#(<= ~counter~0 7)} is VALID [2022-04-28 06:03:09,505 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-28 06:03:09,505 INFO L290 TraceCheckUtils]: 68: Hoare triple {48265#(<= ~counter~0 7)} ~cond := #in~cond; {48265#(<= ~counter~0 7)} is VALID [2022-04-28 06:03:09,505 INFO L290 TraceCheckUtils]: 69: Hoare triple {48265#(<= ~counter~0 7)} assume !(0 == ~cond); {48265#(<= ~counter~0 7)} is VALID [2022-04-28 06:03:09,506 INFO L290 TraceCheckUtils]: 70: Hoare triple {48265#(<= ~counter~0 7)} assume true; {48265#(<= ~counter~0 7)} is VALID [2022-04-28 06:03:09,506 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {48265#(<= ~counter~0 7)} {48265#(<= ~counter~0 7)} #96#return; {48265#(<= ~counter~0 7)} is VALID [2022-04-28 06:03:09,506 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-28 06:03:09,507 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-28 06:03:09,507 INFO L290 TraceCheckUtils]: 74: Hoare triple {48290#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {48290#(<= ~counter~0 8)} is VALID [2022-04-28 06:03:09,508 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-28 06:03:09,508 INFO L290 TraceCheckUtils]: 76: Hoare triple {48290#(<= ~counter~0 8)} ~cond := #in~cond; {48290#(<= ~counter~0 8)} is VALID [2022-04-28 06:03:09,508 INFO L290 TraceCheckUtils]: 77: Hoare triple {48290#(<= ~counter~0 8)} assume !(0 == ~cond); {48290#(<= ~counter~0 8)} is VALID [2022-04-28 06:03:09,509 INFO L290 TraceCheckUtils]: 78: Hoare triple {48290#(<= ~counter~0 8)} assume true; {48290#(<= ~counter~0 8)} is VALID [2022-04-28 06:03:09,509 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {48290#(<= ~counter~0 8)} {48290#(<= ~counter~0 8)} #96#return; {48290#(<= ~counter~0 8)} is VALID [2022-04-28 06:03:09,509 INFO L290 TraceCheckUtils]: 80: Hoare triple {48290#(<= ~counter~0 8)} assume !(~r~0 > 0); {48290#(<= ~counter~0 8)} is VALID [2022-04-28 06:03:09,510 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-28 06:03:09,510 INFO L290 TraceCheckUtils]: 82: Hoare triple {48315#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {48315#(<= ~counter~0 9)} is VALID [2022-04-28 06:03:09,511 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-28 06:03:09,511 INFO L290 TraceCheckUtils]: 84: Hoare triple {48315#(<= ~counter~0 9)} ~cond := #in~cond; {48315#(<= ~counter~0 9)} is VALID [2022-04-28 06:03:09,511 INFO L290 TraceCheckUtils]: 85: Hoare triple {48315#(<= ~counter~0 9)} assume !(0 == ~cond); {48315#(<= ~counter~0 9)} is VALID [2022-04-28 06:03:09,512 INFO L290 TraceCheckUtils]: 86: Hoare triple {48315#(<= ~counter~0 9)} assume true; {48315#(<= ~counter~0 9)} is VALID [2022-04-28 06:03:09,512 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {48315#(<= ~counter~0 9)} {48315#(<= ~counter~0 9)} #98#return; {48315#(<= ~counter~0 9)} is VALID [2022-04-28 06:03:09,512 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-28 06:03:09,513 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-28 06:03:09,513 INFO L290 TraceCheckUtils]: 90: Hoare triple {48340#(<= ~counter~0 10)} assume !!(#t~post8 < 50);havoc #t~post8; {48340#(<= ~counter~0 10)} is VALID [2022-04-28 06:03:09,514 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-28 06:03:09,514 INFO L290 TraceCheckUtils]: 92: Hoare triple {48340#(<= ~counter~0 10)} ~cond := #in~cond; {48340#(<= ~counter~0 10)} is VALID [2022-04-28 06:03:09,514 INFO L290 TraceCheckUtils]: 93: Hoare triple {48340#(<= ~counter~0 10)} assume !(0 == ~cond); {48340#(<= ~counter~0 10)} is VALID [2022-04-28 06:03:09,515 INFO L290 TraceCheckUtils]: 94: Hoare triple {48340#(<= ~counter~0 10)} assume true; {48340#(<= ~counter~0 10)} is VALID [2022-04-28 06:03:09,515 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {48340#(<= ~counter~0 10)} {48340#(<= ~counter~0 10)} #98#return; {48340#(<= ~counter~0 10)} is VALID [2022-04-28 06:03:09,515 INFO L290 TraceCheckUtils]: 96: Hoare triple {48340#(<= ~counter~0 10)} assume !(~r~0 < 0); {48340#(<= ~counter~0 10)} is VALID [2022-04-28 06:03:09,516 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-28 06:03:09,516 INFO L290 TraceCheckUtils]: 98: Hoare triple {48365#(<= |main_#t~post6| 10)} assume !(#t~post6 < 50);havoc #t~post6; {48059#false} is VALID [2022-04-28 06:03:09,516 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-28 06:03:09,516 INFO L290 TraceCheckUtils]: 100: Hoare triple {48059#false} ~cond := #in~cond; {48059#false} is VALID [2022-04-28 06:03:09,516 INFO L290 TraceCheckUtils]: 101: Hoare triple {48059#false} assume 0 == ~cond; {48059#false} is VALID [2022-04-28 06:03:09,516 INFO L290 TraceCheckUtils]: 102: Hoare triple {48059#false} assume !false; {48059#false} is VALID [2022-04-28 06:03:09,517 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-28 06:03:09,517 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:03:10,100 INFO L290 TraceCheckUtils]: 102: Hoare triple {48059#false} assume !false; {48059#false} is VALID [2022-04-28 06:03:10,100 INFO L290 TraceCheckUtils]: 101: Hoare triple {48059#false} assume 0 == ~cond; {48059#false} is VALID [2022-04-28 06:03:10,100 INFO L290 TraceCheckUtils]: 100: Hoare triple {48059#false} ~cond := #in~cond; {48059#false} is VALID [2022-04-28 06:03:10,100 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-28 06:03:10,100 INFO L290 TraceCheckUtils]: 98: Hoare triple {48393#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {48059#false} is VALID [2022-04-28 06:03:10,101 INFO L290 TraceCheckUtils]: 97: Hoare triple {48397#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {48393#(< |main_#t~post6| 50)} is VALID [2022-04-28 06:03:10,101 INFO L290 TraceCheckUtils]: 96: Hoare triple {48397#(< ~counter~0 50)} assume !(~r~0 < 0); {48397#(< ~counter~0 50)} is VALID [2022-04-28 06:03:10,101 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {48058#true} {48397#(< ~counter~0 50)} #98#return; {48397#(< ~counter~0 50)} is VALID [2022-04-28 06:03:10,102 INFO L290 TraceCheckUtils]: 94: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-28 06:03:10,102 INFO L290 TraceCheckUtils]: 93: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-28 06:03:10,102 INFO L290 TraceCheckUtils]: 92: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-28 06:03:10,102 INFO L272 TraceCheckUtils]: 91: Hoare triple {48397#(< ~counter~0 50)} call __VERIFIER_assert((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-28 06:03:10,102 INFO L290 TraceCheckUtils]: 90: Hoare triple {48397#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {48397#(< ~counter~0 50)} is VALID [2022-04-28 06:03:10,103 INFO L290 TraceCheckUtils]: 89: Hoare triple {48422#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {48397#(< ~counter~0 50)} is VALID [2022-04-28 06:03:10,103 INFO L290 TraceCheckUtils]: 88: Hoare triple {48422#(< ~counter~0 49)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {48422#(< ~counter~0 49)} is VALID [2022-04-28 06:03:10,104 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {48058#true} {48422#(< ~counter~0 49)} #98#return; {48422#(< ~counter~0 49)} is VALID [2022-04-28 06:03:10,104 INFO L290 TraceCheckUtils]: 86: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-28 06:03:10,104 INFO L290 TraceCheckUtils]: 85: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-28 06:03:10,104 INFO L290 TraceCheckUtils]: 84: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-28 06:03:10,104 INFO L272 TraceCheckUtils]: 83: Hoare triple {48422#(< ~counter~0 49)} call __VERIFIER_assert((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-28 06:03:10,104 INFO L290 TraceCheckUtils]: 82: Hoare triple {48422#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {48422#(< ~counter~0 49)} is VALID [2022-04-28 06:03:10,105 INFO L290 TraceCheckUtils]: 81: Hoare triple {48447#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {48422#(< ~counter~0 49)} is VALID [2022-04-28 06:03:10,105 INFO L290 TraceCheckUtils]: 80: Hoare triple {48447#(< ~counter~0 48)} assume !(~r~0 > 0); {48447#(< ~counter~0 48)} is VALID [2022-04-28 06:03:10,106 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {48058#true} {48447#(< ~counter~0 48)} #96#return; {48447#(< ~counter~0 48)} is VALID [2022-04-28 06:03:10,106 INFO L290 TraceCheckUtils]: 78: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-28 06:03:10,106 INFO L290 TraceCheckUtils]: 77: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-28 06:03:10,106 INFO L290 TraceCheckUtils]: 76: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-28 06:03:10,106 INFO L272 TraceCheckUtils]: 75: Hoare triple {48447#(< ~counter~0 48)} call __VERIFIER_assert((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-28 06:03:10,106 INFO L290 TraceCheckUtils]: 74: Hoare triple {48447#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {48447#(< ~counter~0 48)} is VALID [2022-04-28 06:03:10,107 INFO L290 TraceCheckUtils]: 73: Hoare triple {48472#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {48447#(< ~counter~0 48)} is VALID [2022-04-28 06:03:10,107 INFO L290 TraceCheckUtils]: 72: Hoare triple {48472#(< ~counter~0 47)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {48472#(< ~counter~0 47)} is VALID [2022-04-28 06:03:10,108 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {48058#true} {48472#(< ~counter~0 47)} #96#return; {48472#(< ~counter~0 47)} is VALID [2022-04-28 06:03:10,108 INFO L290 TraceCheckUtils]: 70: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-28 06:03:10,108 INFO L290 TraceCheckUtils]: 69: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-28 06:03:10,108 INFO L290 TraceCheckUtils]: 68: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-28 06:03:10,108 INFO L272 TraceCheckUtils]: 67: Hoare triple {48472#(< ~counter~0 47)} call __VERIFIER_assert((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-28 06:03:10,108 INFO L290 TraceCheckUtils]: 66: Hoare triple {48472#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {48472#(< ~counter~0 47)} is VALID [2022-04-28 06:03:10,109 INFO L290 TraceCheckUtils]: 65: Hoare triple {48497#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {48472#(< ~counter~0 47)} is VALID [2022-04-28 06:03:10,109 INFO L290 TraceCheckUtils]: 64: Hoare triple {48497#(< ~counter~0 46)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {48497#(< ~counter~0 46)} is VALID [2022-04-28 06:03:10,110 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {48058#true} {48497#(< ~counter~0 46)} #96#return; {48497#(< ~counter~0 46)} is VALID [2022-04-28 06:03:10,110 INFO L290 TraceCheckUtils]: 62: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-28 06:03:10,110 INFO L290 TraceCheckUtils]: 61: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-28 06:03:10,110 INFO L290 TraceCheckUtils]: 60: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-28 06:03:10,110 INFO L272 TraceCheckUtils]: 59: Hoare triple {48497#(< ~counter~0 46)} call __VERIFIER_assert((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-28 06:03:10,110 INFO L290 TraceCheckUtils]: 58: Hoare triple {48497#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {48497#(< ~counter~0 46)} is VALID [2022-04-28 06:03:10,111 INFO L290 TraceCheckUtils]: 57: Hoare triple {48522#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {48497#(< ~counter~0 46)} is VALID [2022-04-28 06:03:10,111 INFO L290 TraceCheckUtils]: 56: Hoare triple {48522#(< ~counter~0 45)} assume !!(0 != ~r~0); {48522#(< ~counter~0 45)} is VALID [2022-04-28 06:03:10,112 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {48058#true} {48522#(< ~counter~0 45)} #94#return; {48522#(< ~counter~0 45)} is VALID [2022-04-28 06:03:10,112 INFO L290 TraceCheckUtils]: 54: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-28 06:03:10,112 INFO L290 TraceCheckUtils]: 53: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-28 06:03:10,112 INFO L290 TraceCheckUtils]: 52: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-28 06:03:10,112 INFO L272 TraceCheckUtils]: 51: Hoare triple {48522#(< ~counter~0 45)} call __VERIFIER_assert((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-28 06:03:10,112 INFO L290 TraceCheckUtils]: 50: Hoare triple {48522#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {48522#(< ~counter~0 45)} is VALID [2022-04-28 06:03:10,113 INFO L290 TraceCheckUtils]: 49: Hoare triple {48547#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {48522#(< ~counter~0 45)} is VALID [2022-04-28 06:03:10,113 INFO L290 TraceCheckUtils]: 48: Hoare triple {48547#(< ~counter~0 44)} assume !(~r~0 < 0); {48547#(< ~counter~0 44)} is VALID [2022-04-28 06:03:10,114 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {48058#true} {48547#(< ~counter~0 44)} #98#return; {48547#(< ~counter~0 44)} is VALID [2022-04-28 06:03:10,114 INFO L290 TraceCheckUtils]: 46: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-28 06:03:10,114 INFO L290 TraceCheckUtils]: 45: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-28 06:03:10,114 INFO L290 TraceCheckUtils]: 44: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-28 06:03:10,114 INFO L272 TraceCheckUtils]: 43: Hoare triple {48547#(< ~counter~0 44)} call __VERIFIER_assert((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-28 06:03:10,114 INFO L290 TraceCheckUtils]: 42: Hoare triple {48547#(< ~counter~0 44)} assume !!(#t~post8 < 50);havoc #t~post8; {48547#(< ~counter~0 44)} is VALID [2022-04-28 06:03:10,115 INFO L290 TraceCheckUtils]: 41: Hoare triple {48572#(< ~counter~0 43)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {48547#(< ~counter~0 44)} is VALID [2022-04-28 06:03:10,115 INFO L290 TraceCheckUtils]: 40: Hoare triple {48572#(< ~counter~0 43)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {48572#(< ~counter~0 43)} is VALID [2022-04-28 06:03:10,116 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {48058#true} {48572#(< ~counter~0 43)} #98#return; {48572#(< ~counter~0 43)} is VALID [2022-04-28 06:03:10,116 INFO L290 TraceCheckUtils]: 38: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-28 06:03:10,116 INFO L290 TraceCheckUtils]: 37: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-28 06:03:10,116 INFO L290 TraceCheckUtils]: 36: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-28 06:03:10,116 INFO L272 TraceCheckUtils]: 35: Hoare triple {48572#(< ~counter~0 43)} call __VERIFIER_assert((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-28 06:03:10,116 INFO L290 TraceCheckUtils]: 34: Hoare triple {48572#(< ~counter~0 43)} assume !!(#t~post8 < 50);havoc #t~post8; {48572#(< ~counter~0 43)} is VALID [2022-04-28 06:03:10,117 INFO L290 TraceCheckUtils]: 33: Hoare triple {48597#(< ~counter~0 42)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {48572#(< ~counter~0 43)} is VALID [2022-04-28 06:03:10,117 INFO L290 TraceCheckUtils]: 32: Hoare triple {48597#(< ~counter~0 42)} assume !(~r~0 > 0); {48597#(< ~counter~0 42)} is VALID [2022-04-28 06:03:10,118 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {48058#true} {48597#(< ~counter~0 42)} #96#return; {48597#(< ~counter~0 42)} is VALID [2022-04-28 06:03:10,118 INFO L290 TraceCheckUtils]: 30: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-28 06:03:10,118 INFO L290 TraceCheckUtils]: 29: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-28 06:03:10,118 INFO L290 TraceCheckUtils]: 28: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-28 06:03:10,118 INFO L272 TraceCheckUtils]: 27: Hoare triple {48597#(< ~counter~0 42)} call __VERIFIER_assert((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-28 06:03:10,118 INFO L290 TraceCheckUtils]: 26: Hoare triple {48597#(< ~counter~0 42)} assume !!(#t~post7 < 50);havoc #t~post7; {48597#(< ~counter~0 42)} is VALID [2022-04-28 06:03:10,119 INFO L290 TraceCheckUtils]: 25: Hoare triple {48622#(< ~counter~0 41)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {48597#(< ~counter~0 42)} is VALID [2022-04-28 06:03:10,119 INFO L290 TraceCheckUtils]: 24: Hoare triple {48622#(< ~counter~0 41)} assume !!(0 != ~r~0); {48622#(< ~counter~0 41)} is VALID [2022-04-28 06:03:10,119 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {48058#true} {48622#(< ~counter~0 41)} #94#return; {48622#(< ~counter~0 41)} is VALID [2022-04-28 06:03:10,120 INFO L290 TraceCheckUtils]: 22: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-28 06:03:10,120 INFO L290 TraceCheckUtils]: 21: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-28 06:03:10,120 INFO L290 TraceCheckUtils]: 20: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-28 06:03:10,120 INFO L272 TraceCheckUtils]: 19: Hoare triple {48622#(< ~counter~0 41)} call __VERIFIER_assert((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-28 06:03:10,120 INFO L290 TraceCheckUtils]: 18: Hoare triple {48622#(< ~counter~0 41)} assume !!(#t~post6 < 50);havoc #t~post6; {48622#(< ~counter~0 41)} is VALID [2022-04-28 06:03:10,121 INFO L290 TraceCheckUtils]: 17: Hoare triple {48647#(< ~counter~0 40)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {48622#(< ~counter~0 41)} is VALID [2022-04-28 06:03:10,121 INFO L290 TraceCheckUtils]: 16: Hoare triple {48647#(< ~counter~0 40)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {48647#(< ~counter~0 40)} is VALID [2022-04-28 06:03:10,121 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {48058#true} {48647#(< ~counter~0 40)} #92#return; {48647#(< ~counter~0 40)} is VALID [2022-04-28 06:03:10,121 INFO L290 TraceCheckUtils]: 14: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-28 06:03:10,121 INFO L290 TraceCheckUtils]: 13: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-28 06:03:10,121 INFO L290 TraceCheckUtils]: 12: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-28 06:03:10,122 INFO L272 TraceCheckUtils]: 11: Hoare triple {48647#(< ~counter~0 40)} 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-28 06:03:10,122 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {48058#true} {48647#(< ~counter~0 40)} #90#return; {48647#(< ~counter~0 40)} is VALID [2022-04-28 06:03:10,122 INFO L290 TraceCheckUtils]: 9: Hoare triple {48058#true} assume true; {48058#true} is VALID [2022-04-28 06:03:10,122 INFO L290 TraceCheckUtils]: 8: Hoare triple {48058#true} assume !(0 == ~cond); {48058#true} is VALID [2022-04-28 06:03:10,122 INFO L290 TraceCheckUtils]: 7: Hoare triple {48058#true} ~cond := #in~cond; {48058#true} is VALID [2022-04-28 06:03:10,122 INFO L272 TraceCheckUtils]: 6: Hoare triple {48647#(< ~counter~0 40)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {48058#true} is VALID [2022-04-28 06:03:10,122 INFO L290 TraceCheckUtils]: 5: Hoare triple {48647#(< ~counter~0 40)} 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; {48647#(< ~counter~0 40)} is VALID [2022-04-28 06:03:10,123 INFO L272 TraceCheckUtils]: 4: Hoare triple {48647#(< ~counter~0 40)} call #t~ret9 := main(); {48647#(< ~counter~0 40)} is VALID [2022-04-28 06:03:10,123 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {48647#(< ~counter~0 40)} {48058#true} #102#return; {48647#(< ~counter~0 40)} is VALID [2022-04-28 06:03:10,123 INFO L290 TraceCheckUtils]: 2: Hoare triple {48647#(< ~counter~0 40)} assume true; {48647#(< ~counter~0 40)} is VALID [2022-04-28 06:03:10,124 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; {48647#(< ~counter~0 40)} is VALID [2022-04-28 06:03:10,124 INFO L272 TraceCheckUtils]: 0: Hoare triple {48058#true} call ULTIMATE.init(); {48058#true} is VALID [2022-04-28 06:03:10,124 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-28 06:03:10,124 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:03:10,124 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [272187603] [2022-04-28 06:03:10,125 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:03:10,125 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [7431266] [2022-04-28 06:03:10,125 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [7431266] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:03:10,125 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:03:10,125 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 26 [2022-04-28 06:03:10,125 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:03:10,125 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [753811000] [2022-04-28 06:03:10,125 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [753811000] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:03:10,125 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:03:10,125 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 06:03:10,125 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1960567866] [2022-04-28 06:03:10,125 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:03:10,127 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-28 06:03:10,127 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:03:10,127 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-28 06:03:10,213 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-28 06:03:10,213 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 06:03:10,213 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:03:10,214 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 06:03:10,214 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=281, Invalid=369, Unknown=0, NotChecked=0, Total=650 [2022-04-28 06:03:10,214 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-28 06:03:11,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:03:11,584 INFO L93 Difference]: Finished difference Result 435 states and 559 transitions. [2022-04-28 06:03:11,585 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-28 06:03:11,585 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-28 06:03:11,585 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:03:11,585 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-28 06:03:11,586 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 214 transitions. [2022-04-28 06:03:11,587 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-28 06:03:11,593 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 214 transitions. [2022-04-28 06:03:11,593 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 214 transitions. [2022-04-28 06:03:11,769 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-28 06:03:11,783 INFO L225 Difference]: With dead ends: 435 [2022-04-28 06:03:11,783 INFO L226 Difference]: Without dead ends: 424 [2022-04-28 06:03:11,784 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 212 GetRequests, 181 SyntacticMatches, 0 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 52 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=438, Invalid=618, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 06:03:11,784 INFO L413 NwaCegarLoop]: 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-28 06:03:11,784 INFO L414 NwaCegarLoop]: 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-28 06:03:11,785 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 424 states. [2022-04-28 06:03:12,676 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 424 to 405. [2022-04-28 06:03:12,676 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:03:12,676 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-28 06:03:12,677 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-28 06:03:12,677 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-28 06:03:12,698 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:03:12,698 INFO L93 Difference]: Finished difference Result 424 states and 544 transitions. [2022-04-28 06:03:12,698 INFO L276 IsEmpty]: Start isEmpty. Operand 424 states and 544 transitions. [2022-04-28 06:03:12,699 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:03:12,699 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:03:12,699 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-28 06:03:12,706 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-28 06:03:12,716 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:03:12,717 INFO L93 Difference]: Finished difference Result 424 states and 544 transitions. [2022-04-28 06:03:12,717 INFO L276 IsEmpty]: Start isEmpty. Operand 424 states and 544 transitions. [2022-04-28 06:03:12,717 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:03:12,717 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:03:12,717 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:03:12,717 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:03:12,718 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-28 06:03:12,747 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 405 states to 405 states and 522 transitions. [2022-04-28 06:03:12,748 INFO L78 Accepts]: Start accepts. Automaton has 405 states and 522 transitions. Word has length 103 [2022-04-28 06:03:12,748 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:03:12,748 INFO L495 AbstractCegarLoop]: Abstraction has 405 states and 522 transitions. [2022-04-28 06:03:12,748 INFO L496 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-28 06:03:12,748 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 405 states and 522 transitions. [2022-04-28 06:03:27,022 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 522 edges. 520 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 06:03:27,022 INFO L276 IsEmpty]: Start isEmpty. Operand 405 states and 522 transitions. [2022-04-28 06:03:27,023 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2022-04-28 06:03:27,023 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:03:27,023 INFO L195 NwaCegarLoop]: 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-28 06:03:27,041 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Forceful destruction successful, exit code 0 [2022-04-28 06:03:27,224 WARN L477 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-28 06:03:27,224 INFO L420 AbstractCegarLoop]: === Iteration 32 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:03:27,224 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:03:27,224 INFO L85 PathProgramCache]: Analyzing trace with hash 1733340336, now seen corresponding path program 9 times [2022-04-28 06:03:27,224 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:03:27,224 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [710448305] [2022-04-28 06:03:27,225 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:03:27,225 INFO L85 PathProgramCache]: Analyzing trace with hash 1733340336, now seen corresponding path program 10 times [2022-04-28 06:03:27,225 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:03:27,225 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1244005863] [2022-04-28 06:03:27,225 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:03:27,225 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:03:27,243 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:03:27,243 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [390430815] [2022-04-28 06:03:27,243 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 06:03:27,244 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:03:27,244 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:03:27,245 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:03:27,246 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Waiting until timeout for monitored process [2022-04-28 06:03:27,306 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 06:03:27,307 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:03:27,307 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 06:03:27,321 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:03:27,322 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:03:28,137 INFO L272 TraceCheckUtils]: 0: Hoare triple {51243#true} call ULTIMATE.init(); {51243#true} is VALID [2022-04-28 06:03:28,137 INFO L290 TraceCheckUtils]: 1: Hoare triple {51243#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {51243#true} is VALID [2022-04-28 06:03:28,137 INFO L290 TraceCheckUtils]: 2: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,137 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {51243#true} {51243#true} #102#return; {51243#true} is VALID [2022-04-28 06:03:28,137 INFO L272 TraceCheckUtils]: 4: Hoare triple {51243#true} call #t~ret9 := main(); {51243#true} is VALID [2022-04-28 06:03:28,137 INFO L290 TraceCheckUtils]: 5: Hoare triple {51243#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; {51243#true} is VALID [2022-04-28 06:03:28,137 INFO L272 TraceCheckUtils]: 6: Hoare triple {51243#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {51243#true} is VALID [2022-04-28 06:03:28,137 INFO L290 TraceCheckUtils]: 7: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,137 INFO L290 TraceCheckUtils]: 8: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,137 INFO L290 TraceCheckUtils]: 9: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,137 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {51243#true} {51243#true} #90#return; {51243#true} is VALID [2022-04-28 06:03:28,137 INFO L272 TraceCheckUtils]: 11: Hoare triple {51243#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)); {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L290 TraceCheckUtils]: 12: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L290 TraceCheckUtils]: 13: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L290 TraceCheckUtils]: 14: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {51243#true} {51243#true} #92#return; {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L290 TraceCheckUtils]: 16: Hoare triple {51243#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L290 TraceCheckUtils]: 17: Hoare triple {51243#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L290 TraceCheckUtils]: 18: Hoare triple {51243#true} assume !!(#t~post6 < 50);havoc #t~post6; {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L272 TraceCheckUtils]: 19: Hoare triple {51243#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)); {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L290 TraceCheckUtils]: 20: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L290 TraceCheckUtils]: 21: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L290 TraceCheckUtils]: 22: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {51243#true} {51243#true} #94#return; {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L290 TraceCheckUtils]: 24: Hoare triple {51243#true} assume !!(0 != ~r~0); {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L290 TraceCheckUtils]: 25: Hoare triple {51243#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L290 TraceCheckUtils]: 26: Hoare triple {51243#true} assume !!(#t~post7 < 50);havoc #t~post7; {51243#true} is VALID [2022-04-28 06:03:28,138 INFO L272 TraceCheckUtils]: 27: Hoare triple {51243#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)); {51243#true} is VALID [2022-04-28 06:03:28,139 INFO L290 TraceCheckUtils]: 28: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,139 INFO L290 TraceCheckUtils]: 29: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,139 INFO L290 TraceCheckUtils]: 30: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,139 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {51243#true} {51243#true} #96#return; {51243#true} is VALID [2022-04-28 06:03:28,139 INFO L290 TraceCheckUtils]: 32: Hoare triple {51243#true} assume !(~r~0 > 0); {51243#true} is VALID [2022-04-28 06:03:28,139 INFO L290 TraceCheckUtils]: 33: Hoare triple {51243#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51243#true} is VALID [2022-04-28 06:03:28,139 INFO L290 TraceCheckUtils]: 34: Hoare triple {51243#true} assume !!(#t~post8 < 50);havoc #t~post8; {51243#true} is VALID [2022-04-28 06:03:28,139 INFO L272 TraceCheckUtils]: 35: Hoare triple {51243#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)); {51243#true} is VALID [2022-04-28 06:03:28,139 INFO L290 TraceCheckUtils]: 36: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,139 INFO L290 TraceCheckUtils]: 37: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,139 INFO L290 TraceCheckUtils]: 38: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,139 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {51243#true} {51243#true} #98#return; {51243#true} is VALID [2022-04-28 06:03:28,141 INFO L290 TraceCheckUtils]: 40: Hoare triple {51243#true} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {51368#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-28 06:03:28,141 INFO L290 TraceCheckUtils]: 41: Hoare triple {51368#(< (+ main_~r~0 2) main_~u~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51368#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-28 06:03:28,141 INFO L290 TraceCheckUtils]: 42: Hoare triple {51368#(< (+ main_~r~0 2) main_~u~0)} assume !!(#t~post8 < 50);havoc #t~post8; {51368#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-28 06:03:28,141 INFO L272 TraceCheckUtils]: 43: Hoare triple {51368#(< (+ 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)); {51243#true} is VALID [2022-04-28 06:03:28,142 INFO L290 TraceCheckUtils]: 44: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,142 INFO L290 TraceCheckUtils]: 45: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,142 INFO L290 TraceCheckUtils]: 46: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,142 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {51243#true} {51368#(< (+ main_~r~0 2) main_~u~0)} #98#return; {51368#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-28 06:03:28,142 INFO L290 TraceCheckUtils]: 48: Hoare triple {51368#(< (+ main_~r~0 2) main_~u~0)} assume !(~r~0 < 0); {51368#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-28 06:03:28,142 INFO L290 TraceCheckUtils]: 49: Hoare triple {51368#(< (+ main_~r~0 2) main_~u~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {51368#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-28 06:03:28,143 INFO L290 TraceCheckUtils]: 50: Hoare triple {51368#(< (+ main_~r~0 2) main_~u~0)} assume !!(#t~post6 < 50);havoc #t~post6; {51368#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-28 06:03:28,143 INFO L272 TraceCheckUtils]: 51: Hoare triple {51368#(< (+ 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)); {51243#true} is VALID [2022-04-28 06:03:28,143 INFO L290 TraceCheckUtils]: 52: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,143 INFO L290 TraceCheckUtils]: 53: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,143 INFO L290 TraceCheckUtils]: 54: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,143 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {51243#true} {51368#(< (+ main_~r~0 2) main_~u~0)} #94#return; {51368#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-28 06:03:28,143 INFO L290 TraceCheckUtils]: 56: Hoare triple {51368#(< (+ main_~r~0 2) main_~u~0)} assume !!(0 != ~r~0); {51368#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-28 06:03:28,144 INFO L290 TraceCheckUtils]: 57: Hoare triple {51368#(< (+ main_~r~0 2) main_~u~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51368#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-28 06:03:28,144 INFO L290 TraceCheckUtils]: 58: Hoare triple {51368#(< (+ main_~r~0 2) main_~u~0)} assume !!(#t~post7 < 50);havoc #t~post7; {51368#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-28 06:03:28,144 INFO L272 TraceCheckUtils]: 59: Hoare triple {51368#(< (+ 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)); {51243#true} is VALID [2022-04-28 06:03:28,144 INFO L290 TraceCheckUtils]: 60: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,144 INFO L290 TraceCheckUtils]: 61: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,144 INFO L290 TraceCheckUtils]: 62: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,144 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {51243#true} {51368#(< (+ main_~r~0 2) main_~u~0)} #96#return; {51368#(< (+ main_~r~0 2) main_~u~0)} is VALID [2022-04-28 06:03:28,145 INFO L290 TraceCheckUtils]: 64: Hoare triple {51368#(< (+ main_~r~0 2) main_~u~0)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {51441#(< (+ main_~v~0 main_~r~0) main_~u~0)} is VALID [2022-04-28 06:03:28,145 INFO L290 TraceCheckUtils]: 65: Hoare triple {51441#(< (+ main_~v~0 main_~r~0) main_~u~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51441#(< (+ main_~v~0 main_~r~0) main_~u~0)} is VALID [2022-04-28 06:03:28,146 INFO L290 TraceCheckUtils]: 66: Hoare triple {51441#(< (+ main_~v~0 main_~r~0) main_~u~0)} assume !!(#t~post7 < 50);havoc #t~post7; {51441#(< (+ main_~v~0 main_~r~0) main_~u~0)} is VALID [2022-04-28 06:03:28,146 INFO L272 TraceCheckUtils]: 67: Hoare triple {51441#(< (+ 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)); {51243#true} is VALID [2022-04-28 06:03:28,146 INFO L290 TraceCheckUtils]: 68: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,146 INFO L290 TraceCheckUtils]: 69: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,146 INFO L290 TraceCheckUtils]: 70: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,146 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {51243#true} {51441#(< (+ main_~v~0 main_~r~0) main_~u~0)} #96#return; {51441#(< (+ main_~v~0 main_~r~0) main_~u~0)} is VALID [2022-04-28 06:03:28,150 INFO L290 TraceCheckUtils]: 72: Hoare triple {51441#(< (+ main_~v~0 main_~r~0) main_~u~0)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {51466#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:03:28,150 INFO L290 TraceCheckUtils]: 73: Hoare triple {51466#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51466#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:03:28,150 INFO L290 TraceCheckUtils]: 74: Hoare triple {51466#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} assume !!(#t~post7 < 50);havoc #t~post7; {51466#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:03:28,151 INFO L272 TraceCheckUtils]: 75: Hoare triple {51466#(< 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)); {51243#true} is VALID [2022-04-28 06:03:28,151 INFO L290 TraceCheckUtils]: 76: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,151 INFO L290 TraceCheckUtils]: 77: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,151 INFO L290 TraceCheckUtils]: 78: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,151 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {51243#true} {51466#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} #96#return; {51466#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:03:28,151 INFO L290 TraceCheckUtils]: 80: Hoare triple {51466#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} assume !(~r~0 > 0); {51466#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:03:28,151 INFO L290 TraceCheckUtils]: 81: Hoare triple {51466#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51466#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:03:28,152 INFO L290 TraceCheckUtils]: 82: Hoare triple {51466#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} assume !!(#t~post8 < 50);havoc #t~post8; {51466#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:03:28,152 INFO L272 TraceCheckUtils]: 83: Hoare triple {51466#(< 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)); {51243#true} is VALID [2022-04-28 06:03:28,152 INFO L290 TraceCheckUtils]: 84: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,152 INFO L290 TraceCheckUtils]: 85: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,152 INFO L290 TraceCheckUtils]: 86: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,152 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {51243#true} {51466#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} #98#return; {51466#(< 0 (div (+ (- 1) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:03:28,153 INFO L290 TraceCheckUtils]: 88: Hoare triple {51466#(< 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; {51515#(< 0 (div (+ (- 1) main_~r~0) 2))} is VALID [2022-04-28 06:03:28,154 INFO L290 TraceCheckUtils]: 89: Hoare triple {51515#(< 0 (div (+ (- 1) main_~r~0) 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51515#(< 0 (div (+ (- 1) main_~r~0) 2))} is VALID [2022-04-28 06:03:28,154 INFO L290 TraceCheckUtils]: 90: Hoare triple {51515#(< 0 (div (+ (- 1) main_~r~0) 2))} assume !!(#t~post8 < 50);havoc #t~post8; {51515#(< 0 (div (+ (- 1) main_~r~0) 2))} is VALID [2022-04-28 06:03:28,154 INFO L272 TraceCheckUtils]: 91: Hoare triple {51515#(< 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)); {51243#true} is VALID [2022-04-28 06:03:28,154 INFO L290 TraceCheckUtils]: 92: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,154 INFO L290 TraceCheckUtils]: 93: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,154 INFO L290 TraceCheckUtils]: 94: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,154 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {51243#true} {51515#(< 0 (div (+ (- 1) main_~r~0) 2))} #98#return; {51515#(< 0 (div (+ (- 1) main_~r~0) 2))} is VALID [2022-04-28 06:03:28,155 INFO L290 TraceCheckUtils]: 96: Hoare triple {51515#(< 0 (div (+ (- 1) main_~r~0) 2))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {51244#false} is VALID [2022-04-28 06:03:28,155 INFO L290 TraceCheckUtils]: 97: Hoare triple {51244#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51244#false} is VALID [2022-04-28 06:03:28,155 INFO L290 TraceCheckUtils]: 98: Hoare triple {51244#false} assume !(#t~post8 < 50);havoc #t~post8; {51244#false} is VALID [2022-04-28 06:03:28,155 INFO L290 TraceCheckUtils]: 99: Hoare triple {51244#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {51244#false} is VALID [2022-04-28 06:03:28,155 INFO L290 TraceCheckUtils]: 100: Hoare triple {51244#false} assume !(#t~post6 < 50);havoc #t~post6; {51244#false} is VALID [2022-04-28 06:03:28,155 INFO L272 TraceCheckUtils]: 101: Hoare triple {51244#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)); {51244#false} is VALID [2022-04-28 06:03:28,155 INFO L290 TraceCheckUtils]: 102: Hoare triple {51244#false} ~cond := #in~cond; {51244#false} is VALID [2022-04-28 06:03:28,156 INFO L290 TraceCheckUtils]: 103: Hoare triple {51244#false} assume 0 == ~cond; {51244#false} is VALID [2022-04-28 06:03:28,156 INFO L290 TraceCheckUtils]: 104: Hoare triple {51244#false} assume !false; {51244#false} is VALID [2022-04-28 06:03:28,156 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-28 06:03:28,156 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:03:28,508 INFO L290 TraceCheckUtils]: 104: Hoare triple {51244#false} assume !false; {51244#false} is VALID [2022-04-28 06:03:28,508 INFO L290 TraceCheckUtils]: 103: Hoare triple {51244#false} assume 0 == ~cond; {51244#false} is VALID [2022-04-28 06:03:28,508 INFO L290 TraceCheckUtils]: 102: Hoare triple {51244#false} ~cond := #in~cond; {51244#false} is VALID [2022-04-28 06:03:28,508 INFO L272 TraceCheckUtils]: 101: Hoare triple {51244#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)); {51244#false} is VALID [2022-04-28 06:03:28,508 INFO L290 TraceCheckUtils]: 100: Hoare triple {51244#false} assume !(#t~post6 < 50);havoc #t~post6; {51244#false} is VALID [2022-04-28 06:03:28,508 INFO L290 TraceCheckUtils]: 99: Hoare triple {51244#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {51244#false} is VALID [2022-04-28 06:03:28,508 INFO L290 TraceCheckUtils]: 98: Hoare triple {51244#false} assume !(#t~post8 < 50);havoc #t~post8; {51244#false} is VALID [2022-04-28 06:03:28,508 INFO L290 TraceCheckUtils]: 97: Hoare triple {51244#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51244#false} is VALID [2022-04-28 06:03:28,508 INFO L290 TraceCheckUtils]: 96: Hoare triple {51588#(not (< main_~r~0 0))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {51244#false} is VALID [2022-04-28 06:03:28,509 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {51243#true} {51588#(not (< main_~r~0 0))} #98#return; {51588#(not (< main_~r~0 0))} is VALID [2022-04-28 06:03:28,509 INFO L290 TraceCheckUtils]: 94: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,509 INFO L290 TraceCheckUtils]: 93: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,509 INFO L290 TraceCheckUtils]: 92: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,509 INFO L272 TraceCheckUtils]: 91: Hoare triple {51588#(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)); {51243#true} is VALID [2022-04-28 06:03:28,509 INFO L290 TraceCheckUtils]: 90: Hoare triple {51588#(not (< main_~r~0 0))} assume !!(#t~post8 < 50);havoc #t~post8; {51588#(not (< main_~r~0 0))} is VALID [2022-04-28 06:03:28,510 INFO L290 TraceCheckUtils]: 89: Hoare triple {51588#(not (< main_~r~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51588#(not (< main_~r~0 0))} is VALID [2022-04-28 06:03:28,510 INFO L290 TraceCheckUtils]: 88: Hoare triple {51613#(<= 0 (+ main_~u~0 main_~r~0))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {51588#(not (< main_~r~0 0))} is VALID [2022-04-28 06:03:28,511 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {51243#true} {51613#(<= 0 (+ main_~u~0 main_~r~0))} #98#return; {51613#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:03:28,511 INFO L290 TraceCheckUtils]: 86: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,511 INFO L290 TraceCheckUtils]: 85: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,511 INFO L290 TraceCheckUtils]: 84: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,511 INFO L272 TraceCheckUtils]: 83: Hoare triple {51613#(<= 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)); {51243#true} is VALID [2022-04-28 06:03:28,511 INFO L290 TraceCheckUtils]: 82: Hoare triple {51613#(<= 0 (+ main_~u~0 main_~r~0))} assume !!(#t~post8 < 50);havoc #t~post8; {51613#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:03:28,511 INFO L290 TraceCheckUtils]: 81: Hoare triple {51613#(<= 0 (+ main_~u~0 main_~r~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51613#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:03:28,512 INFO L290 TraceCheckUtils]: 80: Hoare triple {51613#(<= 0 (+ main_~u~0 main_~r~0))} assume !(~r~0 > 0); {51613#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:03:28,512 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {51243#true} {51613#(<= 0 (+ main_~u~0 main_~r~0))} #96#return; {51613#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:03:28,512 INFO L290 TraceCheckUtils]: 78: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,512 INFO L290 TraceCheckUtils]: 77: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,512 INFO L290 TraceCheckUtils]: 76: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,512 INFO L272 TraceCheckUtils]: 75: Hoare triple {51613#(<= 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)); {51243#true} is VALID [2022-04-28 06:03:28,512 INFO L290 TraceCheckUtils]: 74: Hoare triple {51613#(<= 0 (+ main_~u~0 main_~r~0))} assume !!(#t~post7 < 50);havoc #t~post7; {51613#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:03:28,513 INFO L290 TraceCheckUtils]: 73: Hoare triple {51613#(<= 0 (+ main_~u~0 main_~r~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51613#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:03:28,513 INFO L290 TraceCheckUtils]: 72: Hoare triple {51662#(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; {51613#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:03:28,514 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {51243#true} {51662#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} #96#return; {51662#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-28 06:03:28,514 INFO L290 TraceCheckUtils]: 70: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,514 INFO L290 TraceCheckUtils]: 69: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,514 INFO L290 TraceCheckUtils]: 68: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,514 INFO L272 TraceCheckUtils]: 67: Hoare triple {51662#(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)); {51243#true} is VALID [2022-04-28 06:03:28,514 INFO L290 TraceCheckUtils]: 66: Hoare triple {51662#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {51662#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-28 06:03:28,514 INFO L290 TraceCheckUtils]: 65: Hoare triple {51662#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51662#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-28 06:03:28,515 INFO L290 TraceCheckUtils]: 64: Hoare triple {51687#(<= main_~r~0 main_~u~0)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {51662#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-28 06:03:28,516 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {51243#true} {51687#(<= main_~r~0 main_~u~0)} #96#return; {51687#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:03:28,516 INFO L290 TraceCheckUtils]: 62: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,516 INFO L290 TraceCheckUtils]: 61: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,516 INFO L290 TraceCheckUtils]: 60: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,516 INFO L272 TraceCheckUtils]: 59: Hoare triple {51687#(<= 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)); {51243#true} is VALID [2022-04-28 06:03:28,516 INFO L290 TraceCheckUtils]: 58: Hoare triple {51687#(<= main_~r~0 main_~u~0)} assume !!(#t~post7 < 50);havoc #t~post7; {51687#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:03:28,517 INFO L290 TraceCheckUtils]: 57: Hoare triple {51687#(<= main_~r~0 main_~u~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51687#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:03:28,517 INFO L290 TraceCheckUtils]: 56: Hoare triple {51687#(<= main_~r~0 main_~u~0)} assume !!(0 != ~r~0); {51687#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:03:28,517 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {51243#true} {51687#(<= main_~r~0 main_~u~0)} #94#return; {51687#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:03:28,517 INFO L290 TraceCheckUtils]: 54: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,517 INFO L290 TraceCheckUtils]: 53: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,517 INFO L290 TraceCheckUtils]: 52: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,517 INFO L272 TraceCheckUtils]: 51: Hoare triple {51687#(<= 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)); {51243#true} is VALID [2022-04-28 06:03:28,518 INFO L290 TraceCheckUtils]: 50: Hoare triple {51687#(<= main_~r~0 main_~u~0)} assume !!(#t~post6 < 50);havoc #t~post6; {51687#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:03:28,518 INFO L290 TraceCheckUtils]: 49: Hoare triple {51687#(<= main_~r~0 main_~u~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {51687#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:03:28,518 INFO L290 TraceCheckUtils]: 48: Hoare triple {51687#(<= main_~r~0 main_~u~0)} assume !(~r~0 < 0); {51687#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:03:28,518 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {51243#true} {51687#(<= main_~r~0 main_~u~0)} #98#return; {51687#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:03:28,518 INFO L290 TraceCheckUtils]: 46: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,519 INFO L290 TraceCheckUtils]: 45: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,519 INFO L290 TraceCheckUtils]: 44: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,519 INFO L272 TraceCheckUtils]: 43: Hoare triple {51687#(<= 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)); {51243#true} is VALID [2022-04-28 06:03:28,519 INFO L290 TraceCheckUtils]: 42: Hoare triple {51687#(<= main_~r~0 main_~u~0)} assume !!(#t~post8 < 50);havoc #t~post8; {51687#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:03:28,519 INFO L290 TraceCheckUtils]: 41: Hoare triple {51687#(<= main_~r~0 main_~u~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51687#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:03:28,520 INFO L290 TraceCheckUtils]: 40: Hoare triple {51243#true} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {51687#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:03:28,520 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {51243#true} {51243#true} #98#return; {51243#true} is VALID [2022-04-28 06:03:28,520 INFO L290 TraceCheckUtils]: 38: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,520 INFO L290 TraceCheckUtils]: 37: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,520 INFO L290 TraceCheckUtils]: 36: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,520 INFO L272 TraceCheckUtils]: 35: Hoare triple {51243#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)); {51243#true} is VALID [2022-04-28 06:03:28,520 INFO L290 TraceCheckUtils]: 34: Hoare triple {51243#true} assume !!(#t~post8 < 50);havoc #t~post8; {51243#true} is VALID [2022-04-28 06:03:28,520 INFO L290 TraceCheckUtils]: 33: Hoare triple {51243#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51243#true} is VALID [2022-04-28 06:03:28,520 INFO L290 TraceCheckUtils]: 32: Hoare triple {51243#true} assume !(~r~0 > 0); {51243#true} is VALID [2022-04-28 06:03:28,520 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {51243#true} {51243#true} #96#return; {51243#true} is VALID [2022-04-28 06:03:28,521 INFO L290 TraceCheckUtils]: 30: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,521 INFO L290 TraceCheckUtils]: 29: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,521 INFO L290 TraceCheckUtils]: 28: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,521 INFO L272 TraceCheckUtils]: 27: Hoare triple {51243#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)); {51243#true} is VALID [2022-04-28 06:03:28,521 INFO L290 TraceCheckUtils]: 26: Hoare triple {51243#true} assume !!(#t~post7 < 50);havoc #t~post7; {51243#true} is VALID [2022-04-28 06:03:28,521 INFO L290 TraceCheckUtils]: 25: Hoare triple {51243#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51243#true} is VALID [2022-04-28 06:03:28,521 INFO L290 TraceCheckUtils]: 24: Hoare triple {51243#true} assume !!(0 != ~r~0); {51243#true} is VALID [2022-04-28 06:03:28,521 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {51243#true} {51243#true} #94#return; {51243#true} is VALID [2022-04-28 06:03:28,521 INFO L290 TraceCheckUtils]: 22: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,521 INFO L290 TraceCheckUtils]: 21: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,521 INFO L290 TraceCheckUtils]: 20: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,521 INFO L272 TraceCheckUtils]: 19: Hoare triple {51243#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)); {51243#true} is VALID [2022-04-28 06:03:28,521 INFO L290 TraceCheckUtils]: 18: Hoare triple {51243#true} assume !!(#t~post6 < 50);havoc #t~post6; {51243#true} is VALID [2022-04-28 06:03:28,521 INFO L290 TraceCheckUtils]: 17: Hoare triple {51243#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {51243#true} is VALID [2022-04-28 06:03:28,521 INFO L290 TraceCheckUtils]: 16: Hoare triple {51243#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {51243#true} {51243#true} #92#return; {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L290 TraceCheckUtils]: 14: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L290 TraceCheckUtils]: 13: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L290 TraceCheckUtils]: 12: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L272 TraceCheckUtils]: 11: Hoare triple {51243#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)); {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {51243#true} {51243#true} #90#return; {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L290 TraceCheckUtils]: 9: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L290 TraceCheckUtils]: 8: Hoare triple {51243#true} assume !(0 == ~cond); {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L290 TraceCheckUtils]: 7: Hoare triple {51243#true} ~cond := #in~cond; {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L272 TraceCheckUtils]: 6: Hoare triple {51243#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L290 TraceCheckUtils]: 5: Hoare triple {51243#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; {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L272 TraceCheckUtils]: 4: Hoare triple {51243#true} call #t~ret9 := main(); {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {51243#true} {51243#true} #102#return; {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L290 TraceCheckUtils]: 2: Hoare triple {51243#true} assume true; {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L290 TraceCheckUtils]: 1: Hoare triple {51243#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {51243#true} is VALID [2022-04-28 06:03:28,522 INFO L272 TraceCheckUtils]: 0: Hoare triple {51243#true} call ULTIMATE.init(); {51243#true} is VALID [2022-04-28 06:03:28,523 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-28 06:03:28,523 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:03:28,523 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1244005863] [2022-04-28 06:03:28,523 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:03:28,523 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [390430815] [2022-04-28 06:03:28,523 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [390430815] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:03:28,523 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:03:28,523 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-28 06:03:28,523 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:03:28,524 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [710448305] [2022-04-28 06:03:28,524 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [710448305] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:03:28,524 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:03:28,524 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 06:03:28,524 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [510849652] [2022-04-28 06:03:28,524 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:03:28,525 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-28 06:03:28,525 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:03:28,525 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-28 06:03:28,612 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:03:28,613 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 06:03:28,613 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:03:28,613 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 06:03:28,614 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-28 06:03:28,614 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-28 06:03:29,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:03:29,900 INFO L93 Difference]: Finished difference Result 677 states and 928 transitions. [2022-04-28 06:03:29,900 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 06:03:29,900 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-28 06:03:29,900 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:03:29,900 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-28 06:03:29,901 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 171 transitions. [2022-04-28 06:03:29,901 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-28 06:03:29,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 171 transitions. [2022-04-28 06:03:29,902 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 171 transitions. [2022-04-28 06:03:30,014 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-28 06:03:30,061 INFO L225 Difference]: With dead ends: 677 [2022-04-28 06:03:30,062 INFO L226 Difference]: Without dead ends: 616 [2022-04-28 06:03:30,063 INFO L412 NwaCegarLoop]: 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-28 06:03:30,063 INFO L413 NwaCegarLoop]: 96 mSDtfsCounter, 36 mSDsluCounter, 187 mSDsCounter, 0 mSdLazyCounter, 183 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 283 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-28 06:03:30,064 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [39 Valid, 283 Invalid, 192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 183 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 06:03:30,065 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 616 states. [2022-04-28 06:03:30,908 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 616 to 532. [2022-04-28 06:03:30,908 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:03:30,909 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-28 06:03:30,910 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-28 06:03:30,910 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-28 06:03:30,926 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:03:30,926 INFO L93 Difference]: Finished difference Result 616 states and 837 transitions. [2022-04-28 06:03:30,926 INFO L276 IsEmpty]: Start isEmpty. Operand 616 states and 837 transitions. [2022-04-28 06:03:30,936 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:03:30,936 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:03:30,951 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-28 06:03:30,952 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-28 06:03:30,972 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:03:30,972 INFO L93 Difference]: Finished difference Result 616 states and 837 transitions. [2022-04-28 06:03:30,972 INFO L276 IsEmpty]: Start isEmpty. Operand 616 states and 837 transitions. [2022-04-28 06:03:30,973 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:03:30,973 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:03:30,973 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:03:30,973 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:03:30,974 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-28 06:03:31,001 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 532 states to 532 states and 716 transitions. [2022-04-28 06:03:31,001 INFO L78 Accepts]: Start accepts. Automaton has 532 states and 716 transitions. Word has length 105 [2022-04-28 06:03:31,001 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:03:31,001 INFO L495 AbstractCegarLoop]: Abstraction has 532 states and 716 transitions. [2022-04-28 06:03:31,001 INFO L496 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-28 06:03:31,002 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 532 states and 716 transitions. [2022-04-28 06:03:46,886 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 716 edges. 711 inductive. 0 not inductive. 5 times theorem prover too weak to decide inductivity. [2022-04-28 06:03:46,887 INFO L276 IsEmpty]: Start isEmpty. Operand 532 states and 716 transitions. [2022-04-28 06:03:46,888 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2022-04-28 06:03:46,888 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:03:46,888 INFO L195 NwaCegarLoop]: 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-28 06:03:46,907 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-28 06:03:47,088 WARN L477 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-28 06:03:47,089 INFO L420 AbstractCegarLoop]: === Iteration 33 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:03:47,089 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:03:47,089 INFO L85 PathProgramCache]: Analyzing trace with hash -1666981150, now seen corresponding path program 11 times [2022-04-28 06:03:47,089 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:03:47,089 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1995935463] [2022-04-28 06:03:47,089 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:03:47,089 INFO L85 PathProgramCache]: Analyzing trace with hash -1666981150, now seen corresponding path program 12 times [2022-04-28 06:03:47,090 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:03:47,090 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [343646922] [2022-04-28 06:03:47,090 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:03:47,090 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:03:47,121 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:03:47,121 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [245831572] [2022-04-28 06:03:47,121 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 06:03:47,122 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:03:47,122 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:03:47,123 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:03:47,133 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Waiting until timeout for monitored process [2022-04-28 06:03:47,251 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 06:03:47,251 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:03:47,253 INFO L263 TraceCheckSpWp]: Trace formula consists of 268 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-28 06:03:47,284 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:03:47,288 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:03:47,894 INFO L272 TraceCheckUtils]: 0: Hoare triple {55538#true} call ULTIMATE.init(); {55538#true} is VALID [2022-04-28 06:03:47,894 INFO L290 TraceCheckUtils]: 1: Hoare triple {55538#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,895 INFO L290 TraceCheckUtils]: 2: Hoare triple {55546#(<= ~counter~0 0)} assume true; {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,895 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {55546#(<= ~counter~0 0)} {55538#true} #102#return; {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,895 INFO L272 TraceCheckUtils]: 4: Hoare triple {55546#(<= ~counter~0 0)} call #t~ret9 := main(); {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,896 INFO L290 TraceCheckUtils]: 5: Hoare triple {55546#(<= ~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; {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,896 INFO L272 TraceCheckUtils]: 6: Hoare triple {55546#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,896 INFO L290 TraceCheckUtils]: 7: Hoare triple {55546#(<= ~counter~0 0)} ~cond := #in~cond; {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,897 INFO L290 TraceCheckUtils]: 8: Hoare triple {55546#(<= ~counter~0 0)} assume !(0 == ~cond); {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,897 INFO L290 TraceCheckUtils]: 9: Hoare triple {55546#(<= ~counter~0 0)} assume true; {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,897 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {55546#(<= ~counter~0 0)} {55546#(<= ~counter~0 0)} #90#return; {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,898 INFO L272 TraceCheckUtils]: 11: Hoare triple {55546#(<= ~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)); {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,898 INFO L290 TraceCheckUtils]: 12: Hoare triple {55546#(<= ~counter~0 0)} ~cond := #in~cond; {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,898 INFO L290 TraceCheckUtils]: 13: Hoare triple {55546#(<= ~counter~0 0)} assume !(0 == ~cond); {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,898 INFO L290 TraceCheckUtils]: 14: Hoare triple {55546#(<= ~counter~0 0)} assume true; {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,899 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {55546#(<= ~counter~0 0)} {55546#(<= ~counter~0 0)} #92#return; {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,899 INFO L290 TraceCheckUtils]: 16: Hoare triple {55546#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {55546#(<= ~counter~0 0)} is VALID [2022-04-28 06:03:47,901 INFO L290 TraceCheckUtils]: 17: Hoare triple {55546#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55595#(<= ~counter~0 1)} is VALID [2022-04-28 06:03:47,901 INFO L290 TraceCheckUtils]: 18: Hoare triple {55595#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {55595#(<= ~counter~0 1)} is VALID [2022-04-28 06:03:47,901 INFO L272 TraceCheckUtils]: 19: Hoare triple {55595#(<= ~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)); {55595#(<= ~counter~0 1)} is VALID [2022-04-28 06:03:47,902 INFO L290 TraceCheckUtils]: 20: Hoare triple {55595#(<= ~counter~0 1)} ~cond := #in~cond; {55595#(<= ~counter~0 1)} is VALID [2022-04-28 06:03:47,902 INFO L290 TraceCheckUtils]: 21: Hoare triple {55595#(<= ~counter~0 1)} assume !(0 == ~cond); {55595#(<= ~counter~0 1)} is VALID [2022-04-28 06:03:47,902 INFO L290 TraceCheckUtils]: 22: Hoare triple {55595#(<= ~counter~0 1)} assume true; {55595#(<= ~counter~0 1)} is VALID [2022-04-28 06:03:47,903 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {55595#(<= ~counter~0 1)} {55595#(<= ~counter~0 1)} #94#return; {55595#(<= ~counter~0 1)} is VALID [2022-04-28 06:03:47,903 INFO L290 TraceCheckUtils]: 24: Hoare triple {55595#(<= ~counter~0 1)} assume !!(0 != ~r~0); {55595#(<= ~counter~0 1)} is VALID [2022-04-28 06:03:47,904 INFO L290 TraceCheckUtils]: 25: Hoare triple {55595#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55620#(<= ~counter~0 2)} is VALID [2022-04-28 06:03:47,904 INFO L290 TraceCheckUtils]: 26: Hoare triple {55620#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {55620#(<= ~counter~0 2)} is VALID [2022-04-28 06:03:47,905 INFO L272 TraceCheckUtils]: 27: Hoare triple {55620#(<= ~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)); {55620#(<= ~counter~0 2)} is VALID [2022-04-28 06:03:47,905 INFO L290 TraceCheckUtils]: 28: Hoare triple {55620#(<= ~counter~0 2)} ~cond := #in~cond; {55620#(<= ~counter~0 2)} is VALID [2022-04-28 06:03:47,905 INFO L290 TraceCheckUtils]: 29: Hoare triple {55620#(<= ~counter~0 2)} assume !(0 == ~cond); {55620#(<= ~counter~0 2)} is VALID [2022-04-28 06:03:47,906 INFO L290 TraceCheckUtils]: 30: Hoare triple {55620#(<= ~counter~0 2)} assume true; {55620#(<= ~counter~0 2)} is VALID [2022-04-28 06:03:47,906 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {55620#(<= ~counter~0 2)} {55620#(<= ~counter~0 2)} #96#return; {55620#(<= ~counter~0 2)} is VALID [2022-04-28 06:03:47,907 INFO L290 TraceCheckUtils]: 32: Hoare triple {55620#(<= ~counter~0 2)} assume !(~r~0 > 0); {55620#(<= ~counter~0 2)} is VALID [2022-04-28 06:03:47,907 INFO L290 TraceCheckUtils]: 33: Hoare triple {55620#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55645#(<= ~counter~0 3)} is VALID [2022-04-28 06:03:47,908 INFO L290 TraceCheckUtils]: 34: Hoare triple {55645#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {55645#(<= ~counter~0 3)} is VALID [2022-04-28 06:03:47,908 INFO L272 TraceCheckUtils]: 35: Hoare triple {55645#(<= ~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)); {55645#(<= ~counter~0 3)} is VALID [2022-04-28 06:03:47,908 INFO L290 TraceCheckUtils]: 36: Hoare triple {55645#(<= ~counter~0 3)} ~cond := #in~cond; {55645#(<= ~counter~0 3)} is VALID [2022-04-28 06:03:47,909 INFO L290 TraceCheckUtils]: 37: Hoare triple {55645#(<= ~counter~0 3)} assume !(0 == ~cond); {55645#(<= ~counter~0 3)} is VALID [2022-04-28 06:03:47,909 INFO L290 TraceCheckUtils]: 38: Hoare triple {55645#(<= ~counter~0 3)} assume true; {55645#(<= ~counter~0 3)} is VALID [2022-04-28 06:03:47,909 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {55645#(<= ~counter~0 3)} {55645#(<= ~counter~0 3)} #98#return; {55645#(<= ~counter~0 3)} is VALID [2022-04-28 06:03:47,910 INFO L290 TraceCheckUtils]: 40: Hoare triple {55645#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {55645#(<= ~counter~0 3)} is VALID [2022-04-28 06:03:47,911 INFO L290 TraceCheckUtils]: 41: Hoare triple {55645#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55670#(<= ~counter~0 4)} is VALID [2022-04-28 06:03:47,911 INFO L290 TraceCheckUtils]: 42: Hoare triple {55670#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {55670#(<= ~counter~0 4)} is VALID [2022-04-28 06:03:47,911 INFO L272 TraceCheckUtils]: 43: Hoare triple {55670#(<= ~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)); {55670#(<= ~counter~0 4)} is VALID [2022-04-28 06:03:47,912 INFO L290 TraceCheckUtils]: 44: Hoare triple {55670#(<= ~counter~0 4)} ~cond := #in~cond; {55670#(<= ~counter~0 4)} is VALID [2022-04-28 06:03:47,912 INFO L290 TraceCheckUtils]: 45: Hoare triple {55670#(<= ~counter~0 4)} assume !(0 == ~cond); {55670#(<= ~counter~0 4)} is VALID [2022-04-28 06:03:47,912 INFO L290 TraceCheckUtils]: 46: Hoare triple {55670#(<= ~counter~0 4)} assume true; {55670#(<= ~counter~0 4)} is VALID [2022-04-28 06:03:47,913 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {55670#(<= ~counter~0 4)} {55670#(<= ~counter~0 4)} #98#return; {55670#(<= ~counter~0 4)} is VALID [2022-04-28 06:03:47,913 INFO L290 TraceCheckUtils]: 48: Hoare triple {55670#(<= ~counter~0 4)} assume !(~r~0 < 0); {55670#(<= ~counter~0 4)} is VALID [2022-04-28 06:03:47,914 INFO L290 TraceCheckUtils]: 49: Hoare triple {55670#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55695#(<= ~counter~0 5)} is VALID [2022-04-28 06:03:47,914 INFO L290 TraceCheckUtils]: 50: Hoare triple {55695#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {55695#(<= ~counter~0 5)} is VALID [2022-04-28 06:03:47,915 INFO L272 TraceCheckUtils]: 51: Hoare triple {55695#(<= ~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)); {55695#(<= ~counter~0 5)} is VALID [2022-04-28 06:03:47,915 INFO L290 TraceCheckUtils]: 52: Hoare triple {55695#(<= ~counter~0 5)} ~cond := #in~cond; {55695#(<= ~counter~0 5)} is VALID [2022-04-28 06:03:47,915 INFO L290 TraceCheckUtils]: 53: Hoare triple {55695#(<= ~counter~0 5)} assume !(0 == ~cond); {55695#(<= ~counter~0 5)} is VALID [2022-04-28 06:03:47,915 INFO L290 TraceCheckUtils]: 54: Hoare triple {55695#(<= ~counter~0 5)} assume true; {55695#(<= ~counter~0 5)} is VALID [2022-04-28 06:03:47,916 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {55695#(<= ~counter~0 5)} {55695#(<= ~counter~0 5)} #94#return; {55695#(<= ~counter~0 5)} is VALID [2022-04-28 06:03:47,916 INFO L290 TraceCheckUtils]: 56: Hoare triple {55695#(<= ~counter~0 5)} assume !!(0 != ~r~0); {55695#(<= ~counter~0 5)} is VALID [2022-04-28 06:03:47,917 INFO L290 TraceCheckUtils]: 57: Hoare triple {55695#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55720#(<= ~counter~0 6)} is VALID [2022-04-28 06:03:47,917 INFO L290 TraceCheckUtils]: 58: Hoare triple {55720#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {55720#(<= ~counter~0 6)} is VALID [2022-04-28 06:03:47,918 INFO L272 TraceCheckUtils]: 59: Hoare triple {55720#(<= ~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)); {55720#(<= ~counter~0 6)} is VALID [2022-04-28 06:03:47,918 INFO L290 TraceCheckUtils]: 60: Hoare triple {55720#(<= ~counter~0 6)} ~cond := #in~cond; {55720#(<= ~counter~0 6)} is VALID [2022-04-28 06:03:47,918 INFO L290 TraceCheckUtils]: 61: Hoare triple {55720#(<= ~counter~0 6)} assume !(0 == ~cond); {55720#(<= ~counter~0 6)} is VALID [2022-04-28 06:03:47,919 INFO L290 TraceCheckUtils]: 62: Hoare triple {55720#(<= ~counter~0 6)} assume true; {55720#(<= ~counter~0 6)} is VALID [2022-04-28 06:03:47,919 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {55720#(<= ~counter~0 6)} {55720#(<= ~counter~0 6)} #96#return; {55720#(<= ~counter~0 6)} is VALID [2022-04-28 06:03:47,919 INFO L290 TraceCheckUtils]: 64: Hoare triple {55720#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {55720#(<= ~counter~0 6)} is VALID [2022-04-28 06:03:47,920 INFO L290 TraceCheckUtils]: 65: Hoare triple {55720#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55745#(<= ~counter~0 7)} is VALID [2022-04-28 06:03:47,920 INFO L290 TraceCheckUtils]: 66: Hoare triple {55745#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {55745#(<= ~counter~0 7)} is VALID [2022-04-28 06:03:47,921 INFO L272 TraceCheckUtils]: 67: Hoare triple {55745#(<= ~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)); {55745#(<= ~counter~0 7)} is VALID [2022-04-28 06:03:47,921 INFO L290 TraceCheckUtils]: 68: Hoare triple {55745#(<= ~counter~0 7)} ~cond := #in~cond; {55745#(<= ~counter~0 7)} is VALID [2022-04-28 06:03:47,921 INFO L290 TraceCheckUtils]: 69: Hoare triple {55745#(<= ~counter~0 7)} assume !(0 == ~cond); {55745#(<= ~counter~0 7)} is VALID [2022-04-28 06:03:47,922 INFO L290 TraceCheckUtils]: 70: Hoare triple {55745#(<= ~counter~0 7)} assume true; {55745#(<= ~counter~0 7)} is VALID [2022-04-28 06:03:47,922 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {55745#(<= ~counter~0 7)} {55745#(<= ~counter~0 7)} #96#return; {55745#(<= ~counter~0 7)} is VALID [2022-04-28 06:03:47,922 INFO L290 TraceCheckUtils]: 72: Hoare triple {55745#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {55745#(<= ~counter~0 7)} is VALID [2022-04-28 06:03:47,923 INFO L290 TraceCheckUtils]: 73: Hoare triple {55745#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55770#(<= ~counter~0 8)} is VALID [2022-04-28 06:03:47,923 INFO L290 TraceCheckUtils]: 74: Hoare triple {55770#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {55770#(<= ~counter~0 8)} is VALID [2022-04-28 06:03:47,924 INFO L272 TraceCheckUtils]: 75: Hoare triple {55770#(<= ~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)); {55770#(<= ~counter~0 8)} is VALID [2022-04-28 06:03:47,924 INFO L290 TraceCheckUtils]: 76: Hoare triple {55770#(<= ~counter~0 8)} ~cond := #in~cond; {55770#(<= ~counter~0 8)} is VALID [2022-04-28 06:03:47,924 INFO L290 TraceCheckUtils]: 77: Hoare triple {55770#(<= ~counter~0 8)} assume !(0 == ~cond); {55770#(<= ~counter~0 8)} is VALID [2022-04-28 06:03:47,925 INFO L290 TraceCheckUtils]: 78: Hoare triple {55770#(<= ~counter~0 8)} assume true; {55770#(<= ~counter~0 8)} is VALID [2022-04-28 06:03:47,925 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {55770#(<= ~counter~0 8)} {55770#(<= ~counter~0 8)} #96#return; {55770#(<= ~counter~0 8)} is VALID [2022-04-28 06:03:47,925 INFO L290 TraceCheckUtils]: 80: Hoare triple {55770#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {55770#(<= ~counter~0 8)} is VALID [2022-04-28 06:03:47,926 INFO L290 TraceCheckUtils]: 81: Hoare triple {55770#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55795#(<= ~counter~0 9)} is VALID [2022-04-28 06:03:47,927 INFO L290 TraceCheckUtils]: 82: Hoare triple {55795#(<= ~counter~0 9)} assume !!(#t~post7 < 50);havoc #t~post7; {55795#(<= ~counter~0 9)} is VALID [2022-04-28 06:03:47,927 INFO L272 TraceCheckUtils]: 83: Hoare triple {55795#(<= ~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)); {55795#(<= ~counter~0 9)} is VALID [2022-04-28 06:03:47,927 INFO L290 TraceCheckUtils]: 84: Hoare triple {55795#(<= ~counter~0 9)} ~cond := #in~cond; {55795#(<= ~counter~0 9)} is VALID [2022-04-28 06:03:47,928 INFO L290 TraceCheckUtils]: 85: Hoare triple {55795#(<= ~counter~0 9)} assume !(0 == ~cond); {55795#(<= ~counter~0 9)} is VALID [2022-04-28 06:03:47,928 INFO L290 TraceCheckUtils]: 86: Hoare triple {55795#(<= ~counter~0 9)} assume true; {55795#(<= ~counter~0 9)} is VALID [2022-04-28 06:03:47,929 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {55795#(<= ~counter~0 9)} {55795#(<= ~counter~0 9)} #96#return; {55795#(<= ~counter~0 9)} is VALID [2022-04-28 06:03:47,929 INFO L290 TraceCheckUtils]: 88: Hoare triple {55795#(<= ~counter~0 9)} assume !(~r~0 > 0); {55795#(<= ~counter~0 9)} is VALID [2022-04-28 06:03:47,930 INFO L290 TraceCheckUtils]: 89: Hoare triple {55795#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55820#(<= ~counter~0 10)} is VALID [2022-04-28 06:03:47,930 INFO L290 TraceCheckUtils]: 90: Hoare triple {55820#(<= ~counter~0 10)} assume !!(#t~post8 < 50);havoc #t~post8; {55820#(<= ~counter~0 10)} is VALID [2022-04-28 06:03:47,931 INFO L272 TraceCheckUtils]: 91: Hoare triple {55820#(<= ~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)); {55820#(<= ~counter~0 10)} is VALID [2022-04-28 06:03:47,931 INFO L290 TraceCheckUtils]: 92: Hoare triple {55820#(<= ~counter~0 10)} ~cond := #in~cond; {55820#(<= ~counter~0 10)} is VALID [2022-04-28 06:03:47,931 INFO L290 TraceCheckUtils]: 93: Hoare triple {55820#(<= ~counter~0 10)} assume !(0 == ~cond); {55820#(<= ~counter~0 10)} is VALID [2022-04-28 06:03:47,931 INFO L290 TraceCheckUtils]: 94: Hoare triple {55820#(<= ~counter~0 10)} assume true; {55820#(<= ~counter~0 10)} is VALID [2022-04-28 06:03:47,932 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {55820#(<= ~counter~0 10)} {55820#(<= ~counter~0 10)} #98#return; {55820#(<= ~counter~0 10)} is VALID [2022-04-28 06:03:47,932 INFO L290 TraceCheckUtils]: 96: Hoare triple {55820#(<= ~counter~0 10)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {55820#(<= ~counter~0 10)} is VALID [2022-04-28 06:03:47,932 INFO L290 TraceCheckUtils]: 97: Hoare triple {55820#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55845#(<= |main_#t~post8| 10)} is VALID [2022-04-28 06:03:47,933 INFO L290 TraceCheckUtils]: 98: Hoare triple {55845#(<= |main_#t~post8| 10)} assume !(#t~post8 < 50);havoc #t~post8; {55539#false} is VALID [2022-04-28 06:03:47,941 INFO L290 TraceCheckUtils]: 99: Hoare triple {55539#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55539#false} is VALID [2022-04-28 06:03:47,942 INFO L290 TraceCheckUtils]: 100: Hoare triple {55539#false} assume !(#t~post6 < 50);havoc #t~post6; {55539#false} is VALID [2022-04-28 06:03:47,942 INFO L272 TraceCheckUtils]: 101: Hoare triple {55539#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)); {55539#false} is VALID [2022-04-28 06:03:47,942 INFO L290 TraceCheckUtils]: 102: Hoare triple {55539#false} ~cond := #in~cond; {55539#false} is VALID [2022-04-28 06:03:47,942 INFO L290 TraceCheckUtils]: 103: Hoare triple {55539#false} assume 0 == ~cond; {55539#false} is VALID [2022-04-28 06:03:47,942 INFO L290 TraceCheckUtils]: 104: Hoare triple {55539#false} assume !false; {55539#false} is VALID [2022-04-28 06:03:47,942 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-28 06:03:47,942 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:03:48,548 INFO L290 TraceCheckUtils]: 104: Hoare triple {55539#false} assume !false; {55539#false} is VALID [2022-04-28 06:03:48,548 INFO L290 TraceCheckUtils]: 103: Hoare triple {55539#false} assume 0 == ~cond; {55539#false} is VALID [2022-04-28 06:03:48,548 INFO L290 TraceCheckUtils]: 102: Hoare triple {55539#false} ~cond := #in~cond; {55539#false} is VALID [2022-04-28 06:03:48,548 INFO L272 TraceCheckUtils]: 101: Hoare triple {55539#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)); {55539#false} is VALID [2022-04-28 06:03:48,548 INFO L290 TraceCheckUtils]: 100: Hoare triple {55539#false} assume !(#t~post6 < 50);havoc #t~post6; {55539#false} is VALID [2022-04-28 06:03:48,548 INFO L290 TraceCheckUtils]: 99: Hoare triple {55539#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55539#false} is VALID [2022-04-28 06:03:48,549 INFO L290 TraceCheckUtils]: 98: Hoare triple {55885#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {55539#false} is VALID [2022-04-28 06:03:48,549 INFO L290 TraceCheckUtils]: 97: Hoare triple {55889#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55885#(< |main_#t~post8| 50)} is VALID [2022-04-28 06:03:48,549 INFO L290 TraceCheckUtils]: 96: Hoare triple {55889#(< ~counter~0 50)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {55889#(< ~counter~0 50)} is VALID [2022-04-28 06:03:48,550 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {55538#true} {55889#(< ~counter~0 50)} #98#return; {55889#(< ~counter~0 50)} is VALID [2022-04-28 06:03:48,550 INFO L290 TraceCheckUtils]: 94: Hoare triple {55538#true} assume true; {55538#true} is VALID [2022-04-28 06:03:48,550 INFO L290 TraceCheckUtils]: 93: Hoare triple {55538#true} assume !(0 == ~cond); {55538#true} is VALID [2022-04-28 06:03:48,550 INFO L290 TraceCheckUtils]: 92: Hoare triple {55538#true} ~cond := #in~cond; {55538#true} is VALID [2022-04-28 06:03:48,550 INFO L272 TraceCheckUtils]: 91: Hoare triple {55889#(< ~counter~0 50)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {55538#true} is VALID [2022-04-28 06:03:48,550 INFO L290 TraceCheckUtils]: 90: Hoare triple {55889#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {55889#(< ~counter~0 50)} is VALID [2022-04-28 06:03:48,552 INFO L290 TraceCheckUtils]: 89: Hoare triple {55914#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55889#(< ~counter~0 50)} is VALID [2022-04-28 06:03:48,552 INFO L290 TraceCheckUtils]: 88: Hoare triple {55914#(< ~counter~0 49)} assume !(~r~0 > 0); {55914#(< ~counter~0 49)} is VALID [2022-04-28 06:03:48,553 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {55538#true} {55914#(< ~counter~0 49)} #96#return; {55914#(< ~counter~0 49)} is VALID [2022-04-28 06:03:48,553 INFO L290 TraceCheckUtils]: 86: Hoare triple {55538#true} assume true; {55538#true} is VALID [2022-04-28 06:03:48,553 INFO L290 TraceCheckUtils]: 85: Hoare triple {55538#true} assume !(0 == ~cond); {55538#true} is VALID [2022-04-28 06:03:48,553 INFO L290 TraceCheckUtils]: 84: Hoare triple {55538#true} ~cond := #in~cond; {55538#true} is VALID [2022-04-28 06:03:48,553 INFO L272 TraceCheckUtils]: 83: Hoare triple {55914#(< ~counter~0 49)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {55538#true} is VALID [2022-04-28 06:03:48,553 INFO L290 TraceCheckUtils]: 82: Hoare triple {55914#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {55914#(< ~counter~0 49)} is VALID [2022-04-28 06:03:48,554 INFO L290 TraceCheckUtils]: 81: Hoare triple {55939#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55914#(< ~counter~0 49)} is VALID [2022-04-28 06:03:48,554 INFO L290 TraceCheckUtils]: 80: Hoare triple {55939#(< ~counter~0 48)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {55939#(< ~counter~0 48)} is VALID [2022-04-28 06:03:48,555 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {55538#true} {55939#(< ~counter~0 48)} #96#return; {55939#(< ~counter~0 48)} is VALID [2022-04-28 06:03:48,555 INFO L290 TraceCheckUtils]: 78: Hoare triple {55538#true} assume true; {55538#true} is VALID [2022-04-28 06:03:48,555 INFO L290 TraceCheckUtils]: 77: Hoare triple {55538#true} assume !(0 == ~cond); {55538#true} is VALID [2022-04-28 06:03:48,555 INFO L290 TraceCheckUtils]: 76: Hoare triple {55538#true} ~cond := #in~cond; {55538#true} is VALID [2022-04-28 06:03:48,555 INFO L272 TraceCheckUtils]: 75: Hoare triple {55939#(< ~counter~0 48)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {55538#true} is VALID [2022-04-28 06:03:48,555 INFO L290 TraceCheckUtils]: 74: Hoare triple {55939#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {55939#(< ~counter~0 48)} is VALID [2022-04-28 06:03:48,556 INFO L290 TraceCheckUtils]: 73: Hoare triple {55964#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55939#(< ~counter~0 48)} is VALID [2022-04-28 06:03:48,556 INFO L290 TraceCheckUtils]: 72: Hoare triple {55964#(< ~counter~0 47)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {55964#(< ~counter~0 47)} is VALID [2022-04-28 06:03:48,557 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {55538#true} {55964#(< ~counter~0 47)} #96#return; {55964#(< ~counter~0 47)} is VALID [2022-04-28 06:03:48,557 INFO L290 TraceCheckUtils]: 70: Hoare triple {55538#true} assume true; {55538#true} is VALID [2022-04-28 06:03:48,557 INFO L290 TraceCheckUtils]: 69: Hoare triple {55538#true} assume !(0 == ~cond); {55538#true} is VALID [2022-04-28 06:03:48,557 INFO L290 TraceCheckUtils]: 68: Hoare triple {55538#true} ~cond := #in~cond; {55538#true} is VALID [2022-04-28 06:03:48,557 INFO L272 TraceCheckUtils]: 67: Hoare triple {55964#(< ~counter~0 47)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {55538#true} is VALID [2022-04-28 06:03:48,557 INFO L290 TraceCheckUtils]: 66: Hoare triple {55964#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {55964#(< ~counter~0 47)} is VALID [2022-04-28 06:03:48,558 INFO L290 TraceCheckUtils]: 65: Hoare triple {55989#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55964#(< ~counter~0 47)} is VALID [2022-04-28 06:03:48,558 INFO L290 TraceCheckUtils]: 64: Hoare triple {55989#(< ~counter~0 46)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {55989#(< ~counter~0 46)} is VALID [2022-04-28 06:03:48,559 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {55538#true} {55989#(< ~counter~0 46)} #96#return; {55989#(< ~counter~0 46)} is VALID [2022-04-28 06:03:48,559 INFO L290 TraceCheckUtils]: 62: Hoare triple {55538#true} assume true; {55538#true} is VALID [2022-04-28 06:03:48,559 INFO L290 TraceCheckUtils]: 61: Hoare triple {55538#true} assume !(0 == ~cond); {55538#true} is VALID [2022-04-28 06:03:48,559 INFO L290 TraceCheckUtils]: 60: Hoare triple {55538#true} ~cond := #in~cond; {55538#true} is VALID [2022-04-28 06:03:48,559 INFO L272 TraceCheckUtils]: 59: Hoare triple {55989#(< ~counter~0 46)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {55538#true} is VALID [2022-04-28 06:03:48,559 INFO L290 TraceCheckUtils]: 58: Hoare triple {55989#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {55989#(< ~counter~0 46)} is VALID [2022-04-28 06:03:48,561 INFO L290 TraceCheckUtils]: 57: Hoare triple {56014#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55989#(< ~counter~0 46)} is VALID [2022-04-28 06:03:48,561 INFO L290 TraceCheckUtils]: 56: Hoare triple {56014#(< ~counter~0 45)} assume !!(0 != ~r~0); {56014#(< ~counter~0 45)} is VALID [2022-04-28 06:03:48,561 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {55538#true} {56014#(< ~counter~0 45)} #94#return; {56014#(< ~counter~0 45)} is VALID [2022-04-28 06:03:48,562 INFO L290 TraceCheckUtils]: 54: Hoare triple {55538#true} assume true; {55538#true} is VALID [2022-04-28 06:03:48,562 INFO L290 TraceCheckUtils]: 53: Hoare triple {55538#true} assume !(0 == ~cond); {55538#true} is VALID [2022-04-28 06:03:48,562 INFO L290 TraceCheckUtils]: 52: Hoare triple {55538#true} ~cond := #in~cond; {55538#true} is VALID [2022-04-28 06:03:48,562 INFO L272 TraceCheckUtils]: 51: Hoare triple {56014#(< ~counter~0 45)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {55538#true} is VALID [2022-04-28 06:03:48,562 INFO L290 TraceCheckUtils]: 50: Hoare triple {56014#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {56014#(< ~counter~0 45)} is VALID [2022-04-28 06:03:48,563 INFO L290 TraceCheckUtils]: 49: Hoare triple {56039#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {56014#(< ~counter~0 45)} is VALID [2022-04-28 06:03:48,564 INFO L290 TraceCheckUtils]: 48: Hoare triple {56039#(< ~counter~0 44)} assume !(~r~0 < 0); {56039#(< ~counter~0 44)} is VALID [2022-04-28 06:03:48,564 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {55538#true} {56039#(< ~counter~0 44)} #98#return; {56039#(< ~counter~0 44)} is VALID [2022-04-28 06:03:48,564 INFO L290 TraceCheckUtils]: 46: Hoare triple {55538#true} assume true; {55538#true} is VALID [2022-04-28 06:03:48,564 INFO L290 TraceCheckUtils]: 45: Hoare triple {55538#true} assume !(0 == ~cond); {55538#true} is VALID [2022-04-28 06:03:48,564 INFO L290 TraceCheckUtils]: 44: Hoare triple {55538#true} ~cond := #in~cond; {55538#true} is VALID [2022-04-28 06:03:48,564 INFO L272 TraceCheckUtils]: 43: Hoare triple {56039#(< ~counter~0 44)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {55538#true} is VALID [2022-04-28 06:03:48,565 INFO L290 TraceCheckUtils]: 42: Hoare triple {56039#(< ~counter~0 44)} assume !!(#t~post8 < 50);havoc #t~post8; {56039#(< ~counter~0 44)} is VALID [2022-04-28 06:03:48,565 INFO L290 TraceCheckUtils]: 41: Hoare triple {56064#(< ~counter~0 43)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {56039#(< ~counter~0 44)} is VALID [2022-04-28 06:03:48,566 INFO L290 TraceCheckUtils]: 40: Hoare triple {56064#(< ~counter~0 43)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {56064#(< ~counter~0 43)} is VALID [2022-04-28 06:03:48,566 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {55538#true} {56064#(< ~counter~0 43)} #98#return; {56064#(< ~counter~0 43)} is VALID [2022-04-28 06:03:48,566 INFO L290 TraceCheckUtils]: 38: Hoare triple {55538#true} assume true; {55538#true} is VALID [2022-04-28 06:03:48,566 INFO L290 TraceCheckUtils]: 37: Hoare triple {55538#true} assume !(0 == ~cond); {55538#true} is VALID [2022-04-28 06:03:48,566 INFO L290 TraceCheckUtils]: 36: Hoare triple {55538#true} ~cond := #in~cond; {55538#true} is VALID [2022-04-28 06:03:48,566 INFO L272 TraceCheckUtils]: 35: Hoare triple {56064#(< ~counter~0 43)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {55538#true} is VALID [2022-04-28 06:03:48,567 INFO L290 TraceCheckUtils]: 34: Hoare triple {56064#(< ~counter~0 43)} assume !!(#t~post8 < 50);havoc #t~post8; {56064#(< ~counter~0 43)} is VALID [2022-04-28 06:03:48,567 INFO L290 TraceCheckUtils]: 33: Hoare triple {56089#(< ~counter~0 42)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {56064#(< ~counter~0 43)} is VALID [2022-04-28 06:03:48,568 INFO L290 TraceCheckUtils]: 32: Hoare triple {56089#(< ~counter~0 42)} assume !(~r~0 > 0); {56089#(< ~counter~0 42)} is VALID [2022-04-28 06:03:48,568 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {55538#true} {56089#(< ~counter~0 42)} #96#return; {56089#(< ~counter~0 42)} is VALID [2022-04-28 06:03:48,568 INFO L290 TraceCheckUtils]: 30: Hoare triple {55538#true} assume true; {55538#true} is VALID [2022-04-28 06:03:48,568 INFO L290 TraceCheckUtils]: 29: Hoare triple {55538#true} assume !(0 == ~cond); {55538#true} is VALID [2022-04-28 06:03:48,568 INFO L290 TraceCheckUtils]: 28: Hoare triple {55538#true} ~cond := #in~cond; {55538#true} is VALID [2022-04-28 06:03:48,568 INFO L272 TraceCheckUtils]: 27: Hoare triple {56089#(< ~counter~0 42)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {55538#true} is VALID [2022-04-28 06:03:48,569 INFO L290 TraceCheckUtils]: 26: Hoare triple {56089#(< ~counter~0 42)} assume !!(#t~post7 < 50);havoc #t~post7; {56089#(< ~counter~0 42)} is VALID [2022-04-28 06:03:48,569 INFO L290 TraceCheckUtils]: 25: Hoare triple {56114#(< ~counter~0 41)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {56089#(< ~counter~0 42)} is VALID [2022-04-28 06:03:48,570 INFO L290 TraceCheckUtils]: 24: Hoare triple {56114#(< ~counter~0 41)} assume !!(0 != ~r~0); {56114#(< ~counter~0 41)} is VALID [2022-04-28 06:03:48,570 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {55538#true} {56114#(< ~counter~0 41)} #94#return; {56114#(< ~counter~0 41)} is VALID [2022-04-28 06:03:48,570 INFO L290 TraceCheckUtils]: 22: Hoare triple {55538#true} assume true; {55538#true} is VALID [2022-04-28 06:03:48,570 INFO L290 TraceCheckUtils]: 21: Hoare triple {55538#true} assume !(0 == ~cond); {55538#true} is VALID [2022-04-28 06:03:48,570 INFO L290 TraceCheckUtils]: 20: Hoare triple {55538#true} ~cond := #in~cond; {55538#true} is VALID [2022-04-28 06:03:48,570 INFO L272 TraceCheckUtils]: 19: Hoare triple {56114#(< ~counter~0 41)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {55538#true} is VALID [2022-04-28 06:03:48,571 INFO L290 TraceCheckUtils]: 18: Hoare triple {56114#(< ~counter~0 41)} assume !!(#t~post6 < 50);havoc #t~post6; {56114#(< ~counter~0 41)} is VALID [2022-04-28 06:03:48,571 INFO L290 TraceCheckUtils]: 17: Hoare triple {56139#(< ~counter~0 40)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {56114#(< ~counter~0 41)} is VALID [2022-04-28 06:03:48,572 INFO L290 TraceCheckUtils]: 16: Hoare triple {56139#(< ~counter~0 40)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {56139#(< ~counter~0 40)} is VALID [2022-04-28 06:03:48,572 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {55538#true} {56139#(< ~counter~0 40)} #92#return; {56139#(< ~counter~0 40)} is VALID [2022-04-28 06:03:48,572 INFO L290 TraceCheckUtils]: 14: Hoare triple {55538#true} assume true; {55538#true} is VALID [2022-04-28 06:03:48,572 INFO L290 TraceCheckUtils]: 13: Hoare triple {55538#true} assume !(0 == ~cond); {55538#true} is VALID [2022-04-28 06:03:48,572 INFO L290 TraceCheckUtils]: 12: Hoare triple {55538#true} ~cond := #in~cond; {55538#true} is VALID [2022-04-28 06:03:48,572 INFO L272 TraceCheckUtils]: 11: Hoare triple {56139#(< ~counter~0 40)} 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)); {55538#true} is VALID [2022-04-28 06:03:48,573 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {55538#true} {56139#(< ~counter~0 40)} #90#return; {56139#(< ~counter~0 40)} is VALID [2022-04-28 06:03:48,573 INFO L290 TraceCheckUtils]: 9: Hoare triple {55538#true} assume true; {55538#true} is VALID [2022-04-28 06:03:48,573 INFO L290 TraceCheckUtils]: 8: Hoare triple {55538#true} assume !(0 == ~cond); {55538#true} is VALID [2022-04-28 06:03:48,573 INFO L290 TraceCheckUtils]: 7: Hoare triple {55538#true} ~cond := #in~cond; {55538#true} is VALID [2022-04-28 06:03:48,573 INFO L272 TraceCheckUtils]: 6: Hoare triple {56139#(< ~counter~0 40)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {55538#true} is VALID [2022-04-28 06:03:48,573 INFO L290 TraceCheckUtils]: 5: Hoare triple {56139#(< ~counter~0 40)} 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; {56139#(< ~counter~0 40)} is VALID [2022-04-28 06:03:48,574 INFO L272 TraceCheckUtils]: 4: Hoare triple {56139#(< ~counter~0 40)} call #t~ret9 := main(); {56139#(< ~counter~0 40)} is VALID [2022-04-28 06:03:48,574 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {56139#(< ~counter~0 40)} {55538#true} #102#return; {56139#(< ~counter~0 40)} is VALID [2022-04-28 06:03:48,574 INFO L290 TraceCheckUtils]: 2: Hoare triple {56139#(< ~counter~0 40)} assume true; {56139#(< ~counter~0 40)} is VALID [2022-04-28 06:03:48,575 INFO L290 TraceCheckUtils]: 1: Hoare triple {55538#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {56139#(< ~counter~0 40)} is VALID [2022-04-28 06:03:48,575 INFO L272 TraceCheckUtils]: 0: Hoare triple {55538#true} call ULTIMATE.init(); {55538#true} is VALID [2022-04-28 06:03:48,575 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-28 06:03:48,575 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:03:48,575 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [343646922] [2022-04-28 06:03:48,575 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:03:48,575 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [245831572] [2022-04-28 06:03:48,576 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [245831572] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:03:48,576 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:03:48,576 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 26 [2022-04-28 06:03:48,576 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:03:48,576 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1995935463] [2022-04-28 06:03:48,576 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1995935463] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:03:48,576 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:03:48,576 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 06:03:48,576 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1829549763] [2022-04-28 06:03:48,576 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:03:48,582 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-28 06:03:48,582 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:03:48,582 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-28 06:03:48,684 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-28 06:03:48,684 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 06:03:48,684 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:03:48,684 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 06:03:48,684 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=281, Invalid=369, Unknown=0, NotChecked=0, Total=650 [2022-04-28 06:03:48,685 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-28 06:03:50,422 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:03:50,422 INFO L93 Difference]: Finished difference Result 785 states and 1097 transitions. [2022-04-28 06:03:50,422 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 06:03:50,422 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-28 06:03:50,423 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:03:50,423 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-28 06:03:50,424 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 236 transitions. [2022-04-28 06:03:50,424 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-28 06:03:50,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 236 transitions. [2022-04-28 06:03:50,426 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 236 transitions. [2022-04-28 06:03:50,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-28 06:03:50,692 INFO L225 Difference]: With dead ends: 785 [2022-04-28 06:03:50,692 INFO L226 Difference]: Without dead ends: 560 [2022-04-28 06:03:50,693 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 217 GetRequests, 185 SyntacticMatches, 0 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 59 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=465, Invalid=657, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 06:03:50,693 INFO L413 NwaCegarLoop]: 60 mSDtfsCounter, 137 mSDsluCounter, 202 mSDsCounter, 0 mSdLazyCounter, 119 mSolverCounterSat, 107 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 137 SdHoareTripleChecker+Valid, 262 SdHoareTripleChecker+Invalid, 226 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 107 IncrementalHoareTripleChecker+Valid, 119 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 06:03:50,693 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [137 Valid, 262 Invalid, 226 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [107 Valid, 119 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 06:03:50,694 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 560 states. [2022-04-28 06:03:51,638 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 560 to 550. [2022-04-28 06:03:51,639 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:03:51,639 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-28 06:03:51,640 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-28 06:03:51,640 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-28 06:03:51,651 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:03:51,651 INFO L93 Difference]: Finished difference Result 560 states and 748 transitions. [2022-04-28 06:03:51,651 INFO L276 IsEmpty]: Start isEmpty. Operand 560 states and 748 transitions. [2022-04-28 06:03:51,652 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:03:51,652 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:03:51,652 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-28 06:03:51,653 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-28 06:03:51,673 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:03:51,673 INFO L93 Difference]: Finished difference Result 560 states and 748 transitions. [2022-04-28 06:03:51,673 INFO L276 IsEmpty]: Start isEmpty. Operand 560 states and 748 transitions. [2022-04-28 06:03:51,674 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:03:51,674 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:03:51,674 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:03:51,674 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:03:51,674 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-28 06:03:51,688 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 550 states to 550 states and 738 transitions. [2022-04-28 06:03:51,689 INFO L78 Accepts]: Start accepts. Automaton has 550 states and 738 transitions. Word has length 105 [2022-04-28 06:03:51,689 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:03:51,689 INFO L495 AbstractCegarLoop]: Abstraction has 550 states and 738 transitions. [2022-04-28 06:03:51,689 INFO L496 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-28 06:03:51,689 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 550 states and 738 transitions. [2022-04-28 06:04:06,339 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-28 06:04:06,339 INFO L276 IsEmpty]: Start isEmpty. Operand 550 states and 738 transitions. [2022-04-28 06:04:06,340 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-04-28 06:04:06,340 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:04:06,340 INFO L195 NwaCegarLoop]: 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-28 06:04:06,361 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Forceful destruction successful, exit code 0 [2022-04-28 06:04:06,540 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 34 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable32 [2022-04-28 06:04:06,541 INFO L420 AbstractCegarLoop]: === Iteration 34 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:04:06,541 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:04:06,541 INFO L85 PathProgramCache]: Analyzing trace with hash -2132095591, now seen corresponding path program 11 times [2022-04-28 06:04:06,541 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:04:06,541 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [414330832] [2022-04-28 06:04:06,541 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:04:06,542 INFO L85 PathProgramCache]: Analyzing trace with hash -2132095591, now seen corresponding path program 12 times [2022-04-28 06:04:06,542 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:04:06,542 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [938738122] [2022-04-28 06:04:06,542 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:04:06,542 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:04:06,559 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:04:06,559 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2143200943] [2022-04-28 06:04:06,560 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 06:04:06,560 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:04:06,560 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:04:06,564 INFO L229 MonitoredProcess]: Starting monitored process 35 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:04:06,623 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Waiting until timeout for monitored process [2022-04-28 06:04:06,707 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 06:04:06,707 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:04:06,708 INFO L263 TraceCheckSpWp]: Trace formula consists of 277 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-28 06:04:06,728 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:04:06,729 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:04:07,242 INFO L272 TraceCheckUtils]: 0: Hoare triple {59999#true} call ULTIMATE.init(); {59999#true} is VALID [2022-04-28 06:04:07,242 INFO L290 TraceCheckUtils]: 1: Hoare triple {59999#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,243 INFO L290 TraceCheckUtils]: 2: Hoare triple {60007#(<= ~counter~0 0)} assume true; {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,243 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {60007#(<= ~counter~0 0)} {59999#true} #102#return; {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,243 INFO L272 TraceCheckUtils]: 4: Hoare triple {60007#(<= ~counter~0 0)} call #t~ret9 := main(); {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,244 INFO L290 TraceCheckUtils]: 5: Hoare triple {60007#(<= ~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; {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,244 INFO L272 TraceCheckUtils]: 6: Hoare triple {60007#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,244 INFO L290 TraceCheckUtils]: 7: Hoare triple {60007#(<= ~counter~0 0)} ~cond := #in~cond; {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,245 INFO L290 TraceCheckUtils]: 8: Hoare triple {60007#(<= ~counter~0 0)} assume !(0 == ~cond); {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,245 INFO L290 TraceCheckUtils]: 9: Hoare triple {60007#(<= ~counter~0 0)} assume true; {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,245 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {60007#(<= ~counter~0 0)} {60007#(<= ~counter~0 0)} #90#return; {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,246 INFO L272 TraceCheckUtils]: 11: Hoare triple {60007#(<= ~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)); {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,246 INFO L290 TraceCheckUtils]: 12: Hoare triple {60007#(<= ~counter~0 0)} ~cond := #in~cond; {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,246 INFO L290 TraceCheckUtils]: 13: Hoare triple {60007#(<= ~counter~0 0)} assume !(0 == ~cond); {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,246 INFO L290 TraceCheckUtils]: 14: Hoare triple {60007#(<= ~counter~0 0)} assume true; {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,247 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {60007#(<= ~counter~0 0)} {60007#(<= ~counter~0 0)} #92#return; {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,247 INFO L290 TraceCheckUtils]: 16: Hoare triple {60007#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {60007#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:07,248 INFO L290 TraceCheckUtils]: 17: Hoare triple {60007#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60056#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:07,249 INFO L290 TraceCheckUtils]: 18: Hoare triple {60056#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {60056#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:07,249 INFO L272 TraceCheckUtils]: 19: Hoare triple {60056#(<= ~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)); {60056#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:07,250 INFO L290 TraceCheckUtils]: 20: Hoare triple {60056#(<= ~counter~0 1)} ~cond := #in~cond; {60056#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:07,250 INFO L290 TraceCheckUtils]: 21: Hoare triple {60056#(<= ~counter~0 1)} assume !(0 == ~cond); {60056#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:07,250 INFO L290 TraceCheckUtils]: 22: Hoare triple {60056#(<= ~counter~0 1)} assume true; {60056#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:07,251 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {60056#(<= ~counter~0 1)} {60056#(<= ~counter~0 1)} #94#return; {60056#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:07,251 INFO L290 TraceCheckUtils]: 24: Hoare triple {60056#(<= ~counter~0 1)} assume !!(0 != ~r~0); {60056#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:07,252 INFO L290 TraceCheckUtils]: 25: Hoare triple {60056#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60081#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:07,252 INFO L290 TraceCheckUtils]: 26: Hoare triple {60081#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {60081#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:07,252 INFO L272 TraceCheckUtils]: 27: Hoare triple {60081#(<= ~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)); {60081#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:07,253 INFO L290 TraceCheckUtils]: 28: Hoare triple {60081#(<= ~counter~0 2)} ~cond := #in~cond; {60081#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:07,253 INFO L290 TraceCheckUtils]: 29: Hoare triple {60081#(<= ~counter~0 2)} assume !(0 == ~cond); {60081#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:07,253 INFO L290 TraceCheckUtils]: 30: Hoare triple {60081#(<= ~counter~0 2)} assume true; {60081#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:07,254 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {60081#(<= ~counter~0 2)} {60081#(<= ~counter~0 2)} #96#return; {60081#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:07,254 INFO L290 TraceCheckUtils]: 32: Hoare triple {60081#(<= ~counter~0 2)} assume !(~r~0 > 0); {60081#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:07,255 INFO L290 TraceCheckUtils]: 33: Hoare triple {60081#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60106#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:07,255 INFO L290 TraceCheckUtils]: 34: Hoare triple {60106#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {60106#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:07,255 INFO L272 TraceCheckUtils]: 35: Hoare triple {60106#(<= ~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)); {60106#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:07,256 INFO L290 TraceCheckUtils]: 36: Hoare triple {60106#(<= ~counter~0 3)} ~cond := #in~cond; {60106#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:07,256 INFO L290 TraceCheckUtils]: 37: Hoare triple {60106#(<= ~counter~0 3)} assume !(0 == ~cond); {60106#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:07,256 INFO L290 TraceCheckUtils]: 38: Hoare triple {60106#(<= ~counter~0 3)} assume true; {60106#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:07,257 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {60106#(<= ~counter~0 3)} {60106#(<= ~counter~0 3)} #98#return; {60106#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:07,257 INFO L290 TraceCheckUtils]: 40: Hoare triple {60106#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {60106#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:07,258 INFO L290 TraceCheckUtils]: 41: Hoare triple {60106#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60131#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:07,258 INFO L290 TraceCheckUtils]: 42: Hoare triple {60131#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {60131#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:07,258 INFO L272 TraceCheckUtils]: 43: Hoare triple {60131#(<= ~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)); {60131#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:07,259 INFO L290 TraceCheckUtils]: 44: Hoare triple {60131#(<= ~counter~0 4)} ~cond := #in~cond; {60131#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:07,259 INFO L290 TraceCheckUtils]: 45: Hoare triple {60131#(<= ~counter~0 4)} assume !(0 == ~cond); {60131#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:07,259 INFO L290 TraceCheckUtils]: 46: Hoare triple {60131#(<= ~counter~0 4)} assume true; {60131#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:07,260 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {60131#(<= ~counter~0 4)} {60131#(<= ~counter~0 4)} #98#return; {60131#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:07,260 INFO L290 TraceCheckUtils]: 48: Hoare triple {60131#(<= ~counter~0 4)} assume !(~r~0 < 0); {60131#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:07,261 INFO L290 TraceCheckUtils]: 49: Hoare triple {60131#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60156#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:07,261 INFO L290 TraceCheckUtils]: 50: Hoare triple {60156#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {60156#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:07,261 INFO L272 TraceCheckUtils]: 51: Hoare triple {60156#(<= ~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)); {60156#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:07,262 INFO L290 TraceCheckUtils]: 52: Hoare triple {60156#(<= ~counter~0 5)} ~cond := #in~cond; {60156#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:07,262 INFO L290 TraceCheckUtils]: 53: Hoare triple {60156#(<= ~counter~0 5)} assume !(0 == ~cond); {60156#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:07,262 INFO L290 TraceCheckUtils]: 54: Hoare triple {60156#(<= ~counter~0 5)} assume true; {60156#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:07,263 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {60156#(<= ~counter~0 5)} {60156#(<= ~counter~0 5)} #94#return; {60156#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:07,263 INFO L290 TraceCheckUtils]: 56: Hoare triple {60156#(<= ~counter~0 5)} assume !!(0 != ~r~0); {60156#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:07,264 INFO L290 TraceCheckUtils]: 57: Hoare triple {60156#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60181#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:07,264 INFO L290 TraceCheckUtils]: 58: Hoare triple {60181#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {60181#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:07,265 INFO L272 TraceCheckUtils]: 59: Hoare triple {60181#(<= ~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)); {60181#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:07,265 INFO L290 TraceCheckUtils]: 60: Hoare triple {60181#(<= ~counter~0 6)} ~cond := #in~cond; {60181#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:07,265 INFO L290 TraceCheckUtils]: 61: Hoare triple {60181#(<= ~counter~0 6)} assume !(0 == ~cond); {60181#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:07,265 INFO L290 TraceCheckUtils]: 62: Hoare triple {60181#(<= ~counter~0 6)} assume true; {60181#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:07,266 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {60181#(<= ~counter~0 6)} {60181#(<= ~counter~0 6)} #96#return; {60181#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:07,266 INFO L290 TraceCheckUtils]: 64: Hoare triple {60181#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60181#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:07,267 INFO L290 TraceCheckUtils]: 65: Hoare triple {60181#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60206#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:07,267 INFO L290 TraceCheckUtils]: 66: Hoare triple {60206#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {60206#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:07,268 INFO L272 TraceCheckUtils]: 67: Hoare triple {60206#(<= ~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)); {60206#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:07,268 INFO L290 TraceCheckUtils]: 68: Hoare triple {60206#(<= ~counter~0 7)} ~cond := #in~cond; {60206#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:07,268 INFO L290 TraceCheckUtils]: 69: Hoare triple {60206#(<= ~counter~0 7)} assume !(0 == ~cond); {60206#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:07,268 INFO L290 TraceCheckUtils]: 70: Hoare triple {60206#(<= ~counter~0 7)} assume true; {60206#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:07,269 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {60206#(<= ~counter~0 7)} {60206#(<= ~counter~0 7)} #96#return; {60206#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:07,269 INFO L290 TraceCheckUtils]: 72: Hoare triple {60206#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60206#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:07,270 INFO L290 TraceCheckUtils]: 73: Hoare triple {60206#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60231#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:07,270 INFO L290 TraceCheckUtils]: 74: Hoare triple {60231#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {60231#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:07,271 INFO L272 TraceCheckUtils]: 75: Hoare triple {60231#(<= ~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)); {60231#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:07,271 INFO L290 TraceCheckUtils]: 76: Hoare triple {60231#(<= ~counter~0 8)} ~cond := #in~cond; {60231#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:07,271 INFO L290 TraceCheckUtils]: 77: Hoare triple {60231#(<= ~counter~0 8)} assume !(0 == ~cond); {60231#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:07,271 INFO L290 TraceCheckUtils]: 78: Hoare triple {60231#(<= ~counter~0 8)} assume true; {60231#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:07,272 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {60231#(<= ~counter~0 8)} {60231#(<= ~counter~0 8)} #96#return; {60231#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:07,272 INFO L290 TraceCheckUtils]: 80: Hoare triple {60231#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60231#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:07,273 INFO L290 TraceCheckUtils]: 81: Hoare triple {60231#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60256#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:07,273 INFO L290 TraceCheckUtils]: 82: Hoare triple {60256#(<= ~counter~0 9)} assume !!(#t~post7 < 50);havoc #t~post7; {60256#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:07,274 INFO L272 TraceCheckUtils]: 83: Hoare triple {60256#(<= ~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)); {60256#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:07,274 INFO L290 TraceCheckUtils]: 84: Hoare triple {60256#(<= ~counter~0 9)} ~cond := #in~cond; {60256#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:07,274 INFO L290 TraceCheckUtils]: 85: Hoare triple {60256#(<= ~counter~0 9)} assume !(0 == ~cond); {60256#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:07,274 INFO L290 TraceCheckUtils]: 86: Hoare triple {60256#(<= ~counter~0 9)} assume true; {60256#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:07,275 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {60256#(<= ~counter~0 9)} {60256#(<= ~counter~0 9)} #96#return; {60256#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:07,275 INFO L290 TraceCheckUtils]: 88: Hoare triple {60256#(<= ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60256#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:07,276 INFO L290 TraceCheckUtils]: 89: Hoare triple {60256#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60281#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:07,276 INFO L290 TraceCheckUtils]: 90: Hoare triple {60281#(<= ~counter~0 10)} assume !!(#t~post7 < 50);havoc #t~post7; {60281#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:07,276 INFO L272 TraceCheckUtils]: 91: Hoare triple {60281#(<= ~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)); {60281#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:07,277 INFO L290 TraceCheckUtils]: 92: Hoare triple {60281#(<= ~counter~0 10)} ~cond := #in~cond; {60281#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:07,277 INFO L290 TraceCheckUtils]: 93: Hoare triple {60281#(<= ~counter~0 10)} assume !(0 == ~cond); {60281#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:07,277 INFO L290 TraceCheckUtils]: 94: Hoare triple {60281#(<= ~counter~0 10)} assume true; {60281#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:07,278 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {60281#(<= ~counter~0 10)} {60281#(<= ~counter~0 10)} #96#return; {60281#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:07,278 INFO L290 TraceCheckUtils]: 96: Hoare triple {60281#(<= ~counter~0 10)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60281#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:07,278 INFO L290 TraceCheckUtils]: 97: Hoare triple {60281#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60306#(<= |main_#t~post7| 10)} is VALID [2022-04-28 06:04:07,281 INFO L290 TraceCheckUtils]: 98: Hoare triple {60306#(<= |main_#t~post7| 10)} assume !(#t~post7 < 50);havoc #t~post7; {60000#false} is VALID [2022-04-28 06:04:07,281 INFO L290 TraceCheckUtils]: 99: Hoare triple {60000#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60000#false} is VALID [2022-04-28 06:04:07,281 INFO L290 TraceCheckUtils]: 100: Hoare triple {60000#false} assume !(#t~post8 < 50);havoc #t~post8; {60000#false} is VALID [2022-04-28 06:04:07,281 INFO L290 TraceCheckUtils]: 101: Hoare triple {60000#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60000#false} is VALID [2022-04-28 06:04:07,281 INFO L290 TraceCheckUtils]: 102: Hoare triple {60000#false} assume !(#t~post6 < 50);havoc #t~post6; {60000#false} is VALID [2022-04-28 06:04:07,281 INFO L272 TraceCheckUtils]: 103: Hoare triple {60000#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)); {60000#false} is VALID [2022-04-28 06:04:07,281 INFO L290 TraceCheckUtils]: 104: Hoare triple {60000#false} ~cond := #in~cond; {60000#false} is VALID [2022-04-28 06:04:07,281 INFO L290 TraceCheckUtils]: 105: Hoare triple {60000#false} assume 0 == ~cond; {60000#false} is VALID [2022-04-28 06:04:07,281 INFO L290 TraceCheckUtils]: 106: Hoare triple {60000#false} assume !false; {60000#false} is VALID [2022-04-28 06:04:07,282 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-28 06:04:07,282 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:04:07,755 INFO L290 TraceCheckUtils]: 106: Hoare triple {60000#false} assume !false; {60000#false} is VALID [2022-04-28 06:04:07,755 INFO L290 TraceCheckUtils]: 105: Hoare triple {60000#false} assume 0 == ~cond; {60000#false} is VALID [2022-04-28 06:04:07,755 INFO L290 TraceCheckUtils]: 104: Hoare triple {60000#false} ~cond := #in~cond; {60000#false} is VALID [2022-04-28 06:04:07,755 INFO L272 TraceCheckUtils]: 103: Hoare triple {60000#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)); {60000#false} is VALID [2022-04-28 06:04:07,755 INFO L290 TraceCheckUtils]: 102: Hoare triple {60000#false} assume !(#t~post6 < 50);havoc #t~post6; {60000#false} is VALID [2022-04-28 06:04:07,756 INFO L290 TraceCheckUtils]: 101: Hoare triple {60000#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60000#false} is VALID [2022-04-28 06:04:07,756 INFO L290 TraceCheckUtils]: 100: Hoare triple {60000#false} assume !(#t~post8 < 50);havoc #t~post8; {60000#false} is VALID [2022-04-28 06:04:07,756 INFO L290 TraceCheckUtils]: 99: Hoare triple {60000#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60000#false} is VALID [2022-04-28 06:04:07,756 INFO L290 TraceCheckUtils]: 98: Hoare triple {60358#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {60000#false} is VALID [2022-04-28 06:04:07,756 INFO L290 TraceCheckUtils]: 97: Hoare triple {60362#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60358#(< |main_#t~post7| 50)} is VALID [2022-04-28 06:04:07,756 INFO L290 TraceCheckUtils]: 96: Hoare triple {60362#(< ~counter~0 50)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60362#(< ~counter~0 50)} is VALID [2022-04-28 06:04:07,757 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {59999#true} {60362#(< ~counter~0 50)} #96#return; {60362#(< ~counter~0 50)} is VALID [2022-04-28 06:04:07,757 INFO L290 TraceCheckUtils]: 94: Hoare triple {59999#true} assume true; {59999#true} is VALID [2022-04-28 06:04:07,757 INFO L290 TraceCheckUtils]: 93: Hoare triple {59999#true} assume !(0 == ~cond); {59999#true} is VALID [2022-04-28 06:04:07,757 INFO L290 TraceCheckUtils]: 92: Hoare triple {59999#true} ~cond := #in~cond; {59999#true} is VALID [2022-04-28 06:04:07,757 INFO L272 TraceCheckUtils]: 91: Hoare triple {60362#(< ~counter~0 50)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {59999#true} is VALID [2022-04-28 06:04:07,757 INFO L290 TraceCheckUtils]: 90: Hoare triple {60362#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {60362#(< ~counter~0 50)} is VALID [2022-04-28 06:04:07,758 INFO L290 TraceCheckUtils]: 89: Hoare triple {60387#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60362#(< ~counter~0 50)} is VALID [2022-04-28 06:04:07,758 INFO L290 TraceCheckUtils]: 88: Hoare triple {60387#(< ~counter~0 49)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60387#(< ~counter~0 49)} is VALID [2022-04-28 06:04:07,759 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {59999#true} {60387#(< ~counter~0 49)} #96#return; {60387#(< ~counter~0 49)} is VALID [2022-04-28 06:04:07,759 INFO L290 TraceCheckUtils]: 86: Hoare triple {59999#true} assume true; {59999#true} is VALID [2022-04-28 06:04:07,759 INFO L290 TraceCheckUtils]: 85: Hoare triple {59999#true} assume !(0 == ~cond); {59999#true} is VALID [2022-04-28 06:04:07,759 INFO L290 TraceCheckUtils]: 84: Hoare triple {59999#true} ~cond := #in~cond; {59999#true} is VALID [2022-04-28 06:04:07,759 INFO L272 TraceCheckUtils]: 83: Hoare triple {60387#(< ~counter~0 49)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {59999#true} is VALID [2022-04-28 06:04:07,759 INFO L290 TraceCheckUtils]: 82: Hoare triple {60387#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {60387#(< ~counter~0 49)} is VALID [2022-04-28 06:04:07,760 INFO L290 TraceCheckUtils]: 81: Hoare triple {60412#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60387#(< ~counter~0 49)} is VALID [2022-04-28 06:04:07,760 INFO L290 TraceCheckUtils]: 80: Hoare triple {60412#(< ~counter~0 48)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60412#(< ~counter~0 48)} is VALID [2022-04-28 06:04:07,760 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {59999#true} {60412#(< ~counter~0 48)} #96#return; {60412#(< ~counter~0 48)} is VALID [2022-04-28 06:04:07,760 INFO L290 TraceCheckUtils]: 78: Hoare triple {59999#true} assume true; {59999#true} is VALID [2022-04-28 06:04:07,761 INFO L290 TraceCheckUtils]: 77: Hoare triple {59999#true} assume !(0 == ~cond); {59999#true} is VALID [2022-04-28 06:04:07,761 INFO L290 TraceCheckUtils]: 76: Hoare triple {59999#true} ~cond := #in~cond; {59999#true} is VALID [2022-04-28 06:04:07,761 INFO L272 TraceCheckUtils]: 75: Hoare triple {60412#(< ~counter~0 48)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {59999#true} is VALID [2022-04-28 06:04:07,761 INFO L290 TraceCheckUtils]: 74: Hoare triple {60412#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {60412#(< ~counter~0 48)} is VALID [2022-04-28 06:04:07,761 INFO L290 TraceCheckUtils]: 73: Hoare triple {60437#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60412#(< ~counter~0 48)} is VALID [2022-04-28 06:04:07,762 INFO L290 TraceCheckUtils]: 72: Hoare triple {60437#(< ~counter~0 47)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60437#(< ~counter~0 47)} is VALID [2022-04-28 06:04:07,762 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {59999#true} {60437#(< ~counter~0 47)} #96#return; {60437#(< ~counter~0 47)} is VALID [2022-04-28 06:04:07,762 INFO L290 TraceCheckUtils]: 70: Hoare triple {59999#true} assume true; {59999#true} is VALID [2022-04-28 06:04:07,762 INFO L290 TraceCheckUtils]: 69: Hoare triple {59999#true} assume !(0 == ~cond); {59999#true} is VALID [2022-04-28 06:04:07,762 INFO L290 TraceCheckUtils]: 68: Hoare triple {59999#true} ~cond := #in~cond; {59999#true} is VALID [2022-04-28 06:04:07,762 INFO L272 TraceCheckUtils]: 67: Hoare triple {60437#(< ~counter~0 47)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {59999#true} is VALID [2022-04-28 06:04:07,762 INFO L290 TraceCheckUtils]: 66: Hoare triple {60437#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {60437#(< ~counter~0 47)} is VALID [2022-04-28 06:04:07,763 INFO L290 TraceCheckUtils]: 65: Hoare triple {60462#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60437#(< ~counter~0 47)} is VALID [2022-04-28 06:04:07,763 INFO L290 TraceCheckUtils]: 64: Hoare triple {60462#(< ~counter~0 46)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {60462#(< ~counter~0 46)} is VALID [2022-04-28 06:04:07,763 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {59999#true} {60462#(< ~counter~0 46)} #96#return; {60462#(< ~counter~0 46)} is VALID [2022-04-28 06:04:07,764 INFO L290 TraceCheckUtils]: 62: Hoare triple {59999#true} assume true; {59999#true} is VALID [2022-04-28 06:04:07,764 INFO L290 TraceCheckUtils]: 61: Hoare triple {59999#true} assume !(0 == ~cond); {59999#true} is VALID [2022-04-28 06:04:07,764 INFO L290 TraceCheckUtils]: 60: Hoare triple {59999#true} ~cond := #in~cond; {59999#true} is VALID [2022-04-28 06:04:07,764 INFO L272 TraceCheckUtils]: 59: Hoare triple {60462#(< ~counter~0 46)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {59999#true} is VALID [2022-04-28 06:04:07,764 INFO L290 TraceCheckUtils]: 58: Hoare triple {60462#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {60462#(< ~counter~0 46)} is VALID [2022-04-28 06:04:07,764 INFO L290 TraceCheckUtils]: 57: Hoare triple {60487#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60462#(< ~counter~0 46)} is VALID [2022-04-28 06:04:07,765 INFO L290 TraceCheckUtils]: 56: Hoare triple {60487#(< ~counter~0 45)} assume !!(0 != ~r~0); {60487#(< ~counter~0 45)} is VALID [2022-04-28 06:04:07,765 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {59999#true} {60487#(< ~counter~0 45)} #94#return; {60487#(< ~counter~0 45)} is VALID [2022-04-28 06:04:07,765 INFO L290 TraceCheckUtils]: 54: Hoare triple {59999#true} assume true; {59999#true} is VALID [2022-04-28 06:04:07,765 INFO L290 TraceCheckUtils]: 53: Hoare triple {59999#true} assume !(0 == ~cond); {59999#true} is VALID [2022-04-28 06:04:07,765 INFO L290 TraceCheckUtils]: 52: Hoare triple {59999#true} ~cond := #in~cond; {59999#true} is VALID [2022-04-28 06:04:07,765 INFO L272 TraceCheckUtils]: 51: Hoare triple {60487#(< ~counter~0 45)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {59999#true} is VALID [2022-04-28 06:04:07,765 INFO L290 TraceCheckUtils]: 50: Hoare triple {60487#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {60487#(< ~counter~0 45)} is VALID [2022-04-28 06:04:07,766 INFO L290 TraceCheckUtils]: 49: Hoare triple {60512#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60487#(< ~counter~0 45)} is VALID [2022-04-28 06:04:07,766 INFO L290 TraceCheckUtils]: 48: Hoare triple {60512#(< ~counter~0 44)} assume !(~r~0 < 0); {60512#(< ~counter~0 44)} is VALID [2022-04-28 06:04:07,767 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {59999#true} {60512#(< ~counter~0 44)} #98#return; {60512#(< ~counter~0 44)} is VALID [2022-04-28 06:04:07,767 INFO L290 TraceCheckUtils]: 46: Hoare triple {59999#true} assume true; {59999#true} is VALID [2022-04-28 06:04:07,767 INFO L290 TraceCheckUtils]: 45: Hoare triple {59999#true} assume !(0 == ~cond); {59999#true} is VALID [2022-04-28 06:04:07,767 INFO L290 TraceCheckUtils]: 44: Hoare triple {59999#true} ~cond := #in~cond; {59999#true} is VALID [2022-04-28 06:04:07,767 INFO L272 TraceCheckUtils]: 43: Hoare triple {60512#(< ~counter~0 44)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {59999#true} is VALID [2022-04-28 06:04:07,767 INFO L290 TraceCheckUtils]: 42: Hoare triple {60512#(< ~counter~0 44)} assume !!(#t~post8 < 50);havoc #t~post8; {60512#(< ~counter~0 44)} is VALID [2022-04-28 06:04:07,768 INFO L290 TraceCheckUtils]: 41: Hoare triple {60537#(< ~counter~0 43)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60512#(< ~counter~0 44)} is VALID [2022-04-28 06:04:07,768 INFO L290 TraceCheckUtils]: 40: Hoare triple {60537#(< ~counter~0 43)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {60537#(< ~counter~0 43)} is VALID [2022-04-28 06:04:07,768 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {59999#true} {60537#(< ~counter~0 43)} #98#return; {60537#(< ~counter~0 43)} is VALID [2022-04-28 06:04:07,768 INFO L290 TraceCheckUtils]: 38: Hoare triple {59999#true} assume true; {59999#true} is VALID [2022-04-28 06:04:07,768 INFO L290 TraceCheckUtils]: 37: Hoare triple {59999#true} assume !(0 == ~cond); {59999#true} is VALID [2022-04-28 06:04:07,768 INFO L290 TraceCheckUtils]: 36: Hoare triple {59999#true} ~cond := #in~cond; {59999#true} is VALID [2022-04-28 06:04:07,769 INFO L272 TraceCheckUtils]: 35: Hoare triple {60537#(< ~counter~0 43)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {59999#true} is VALID [2022-04-28 06:04:07,771 INFO L290 TraceCheckUtils]: 34: Hoare triple {60537#(< ~counter~0 43)} assume !!(#t~post8 < 50);havoc #t~post8; {60537#(< ~counter~0 43)} is VALID [2022-04-28 06:04:07,771 INFO L290 TraceCheckUtils]: 33: Hoare triple {60562#(< ~counter~0 42)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60537#(< ~counter~0 43)} is VALID [2022-04-28 06:04:07,771 INFO L290 TraceCheckUtils]: 32: Hoare triple {60562#(< ~counter~0 42)} assume !(~r~0 > 0); {60562#(< ~counter~0 42)} is VALID [2022-04-28 06:04:07,772 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {59999#true} {60562#(< ~counter~0 42)} #96#return; {60562#(< ~counter~0 42)} is VALID [2022-04-28 06:04:07,772 INFO L290 TraceCheckUtils]: 30: Hoare triple {59999#true} assume true; {59999#true} is VALID [2022-04-28 06:04:07,772 INFO L290 TraceCheckUtils]: 29: Hoare triple {59999#true} assume !(0 == ~cond); {59999#true} is VALID [2022-04-28 06:04:07,772 INFO L290 TraceCheckUtils]: 28: Hoare triple {59999#true} ~cond := #in~cond; {59999#true} is VALID [2022-04-28 06:04:07,772 INFO L272 TraceCheckUtils]: 27: Hoare triple {60562#(< ~counter~0 42)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {59999#true} is VALID [2022-04-28 06:04:07,772 INFO L290 TraceCheckUtils]: 26: Hoare triple {60562#(< ~counter~0 42)} assume !!(#t~post7 < 50);havoc #t~post7; {60562#(< ~counter~0 42)} is VALID [2022-04-28 06:04:07,773 INFO L290 TraceCheckUtils]: 25: Hoare triple {60587#(< ~counter~0 41)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60562#(< ~counter~0 42)} is VALID [2022-04-28 06:04:07,773 INFO L290 TraceCheckUtils]: 24: Hoare triple {60587#(< ~counter~0 41)} assume !!(0 != ~r~0); {60587#(< ~counter~0 41)} is VALID [2022-04-28 06:04:07,773 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {59999#true} {60587#(< ~counter~0 41)} #94#return; {60587#(< ~counter~0 41)} is VALID [2022-04-28 06:04:07,773 INFO L290 TraceCheckUtils]: 22: Hoare triple {59999#true} assume true; {59999#true} is VALID [2022-04-28 06:04:07,773 INFO L290 TraceCheckUtils]: 21: Hoare triple {59999#true} assume !(0 == ~cond); {59999#true} is VALID [2022-04-28 06:04:07,774 INFO L290 TraceCheckUtils]: 20: Hoare triple {59999#true} ~cond := #in~cond; {59999#true} is VALID [2022-04-28 06:04:07,774 INFO L272 TraceCheckUtils]: 19: Hoare triple {60587#(< ~counter~0 41)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {59999#true} is VALID [2022-04-28 06:04:07,774 INFO L290 TraceCheckUtils]: 18: Hoare triple {60587#(< ~counter~0 41)} assume !!(#t~post6 < 50);havoc #t~post6; {60587#(< ~counter~0 41)} is VALID [2022-04-28 06:04:07,774 INFO L290 TraceCheckUtils]: 17: Hoare triple {60612#(< ~counter~0 40)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60587#(< ~counter~0 41)} is VALID [2022-04-28 06:04:07,775 INFO L290 TraceCheckUtils]: 16: Hoare triple {60612#(< ~counter~0 40)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {60612#(< ~counter~0 40)} is VALID [2022-04-28 06:04:07,775 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {59999#true} {60612#(< ~counter~0 40)} #92#return; {60612#(< ~counter~0 40)} is VALID [2022-04-28 06:04:07,775 INFO L290 TraceCheckUtils]: 14: Hoare triple {59999#true} assume true; {59999#true} is VALID [2022-04-28 06:04:07,775 INFO L290 TraceCheckUtils]: 13: Hoare triple {59999#true} assume !(0 == ~cond); {59999#true} is VALID [2022-04-28 06:04:07,775 INFO L290 TraceCheckUtils]: 12: Hoare triple {59999#true} ~cond := #in~cond; {59999#true} is VALID [2022-04-28 06:04:07,775 INFO L272 TraceCheckUtils]: 11: Hoare triple {60612#(< ~counter~0 40)} 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)); {59999#true} is VALID [2022-04-28 06:04:07,775 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {59999#true} {60612#(< ~counter~0 40)} #90#return; {60612#(< ~counter~0 40)} is VALID [2022-04-28 06:04:07,775 INFO L290 TraceCheckUtils]: 9: Hoare triple {59999#true} assume true; {59999#true} is VALID [2022-04-28 06:04:07,775 INFO L290 TraceCheckUtils]: 8: Hoare triple {59999#true} assume !(0 == ~cond); {59999#true} is VALID [2022-04-28 06:04:07,776 INFO L290 TraceCheckUtils]: 7: Hoare triple {59999#true} ~cond := #in~cond; {59999#true} is VALID [2022-04-28 06:04:07,776 INFO L272 TraceCheckUtils]: 6: Hoare triple {60612#(< ~counter~0 40)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {59999#true} is VALID [2022-04-28 06:04:07,776 INFO L290 TraceCheckUtils]: 5: Hoare triple {60612#(< ~counter~0 40)} 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; {60612#(< ~counter~0 40)} is VALID [2022-04-28 06:04:07,776 INFO L272 TraceCheckUtils]: 4: Hoare triple {60612#(< ~counter~0 40)} call #t~ret9 := main(); {60612#(< ~counter~0 40)} is VALID [2022-04-28 06:04:07,776 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {60612#(< ~counter~0 40)} {59999#true} #102#return; {60612#(< ~counter~0 40)} is VALID [2022-04-28 06:04:07,776 INFO L290 TraceCheckUtils]: 2: Hoare triple {60612#(< ~counter~0 40)} assume true; {60612#(< ~counter~0 40)} is VALID [2022-04-28 06:04:07,777 INFO L290 TraceCheckUtils]: 1: Hoare triple {59999#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {60612#(< ~counter~0 40)} is VALID [2022-04-28 06:04:07,777 INFO L272 TraceCheckUtils]: 0: Hoare triple {59999#true} call ULTIMATE.init(); {59999#true} is VALID [2022-04-28 06:04:07,777 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-28 06:04:07,777 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:04:07,777 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [938738122] [2022-04-28 06:04:07,777 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:04:07,777 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2143200943] [2022-04-28 06:04:07,778 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2143200943] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:04:07,778 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:04:07,778 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 26 [2022-04-28 06:04:07,778 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:04:07,778 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [414330832] [2022-04-28 06:04:07,778 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [414330832] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:04:07,778 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:04:07,778 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 06:04:07,778 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1559705011] [2022-04-28 06:04:07,778 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:04:07,779 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-28 06:04:07,779 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:04:07,779 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-28 06:04:07,833 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:04:07,833 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 06:04:07,833 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:04:07,833 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 06:04:07,834 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=281, Invalid=369, Unknown=0, NotChecked=0, Total=650 [2022-04-28 06:04:07,834 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-28 06:04:09,171 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:04:09,171 INFO L93 Difference]: Finished difference Result 767 states and 1065 transitions. [2022-04-28 06:04:09,171 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-28 06:04:09,171 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-28 06:04:09,171 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:04:09,171 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-28 06:04:09,173 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 236 transitions. [2022-04-28 06:04:09,173 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-28 06:04:09,174 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 236 transitions. [2022-04-28 06:04:09,174 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 236 transitions. [2022-04-28 06:04:09,363 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-28 06:04:09,377 INFO L225 Difference]: With dead ends: 767 [2022-04-28 06:04:09,377 INFO L226 Difference]: Without dead ends: 566 [2022-04-28 06:04:09,390 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 222 GetRequests, 189 SyntacticMatches, 0 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 67 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=497, Invalid=693, Unknown=0, NotChecked=0, Total=1190 [2022-04-28 06:04:09,403 INFO L413 NwaCegarLoop]: 60 mSDtfsCounter, 145 mSDsluCounter, 182 mSDsCounter, 0 mSdLazyCounter, 122 mSolverCounterSat, 104 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 145 SdHoareTripleChecker+Valid, 242 SdHoareTripleChecker+Invalid, 226 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 104 IncrementalHoareTripleChecker+Valid, 122 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 06:04:09,403 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [145 Valid, 242 Invalid, 226 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [104 Valid, 122 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 06:04:09,404 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 566 states. [2022-04-28 06:04:10,281 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 566 to 566. [2022-04-28 06:04:10,281 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:04:10,282 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-28 06:04:10,282 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-28 06:04:10,282 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-28 06:04:10,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:04:10,294 INFO L93 Difference]: Finished difference Result 566 states and 754 transitions. [2022-04-28 06:04:10,294 INFO L276 IsEmpty]: Start isEmpty. Operand 566 states and 754 transitions. [2022-04-28 06:04:10,296 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:04:10,296 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:04:10,297 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-28 06:04:10,297 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-28 06:04:10,308 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:04:10,309 INFO L93 Difference]: Finished difference Result 566 states and 754 transitions. [2022-04-28 06:04:10,309 INFO L276 IsEmpty]: Start isEmpty. Operand 566 states and 754 transitions. [2022-04-28 06:04:10,309 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:04:10,309 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:04:10,309 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:04:10,309 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:04:10,317 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-28 06:04:10,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 566 states to 566 states and 754 transitions. [2022-04-28 06:04:10,332 INFO L78 Accepts]: Start accepts. Automaton has 566 states and 754 transitions. Word has length 107 [2022-04-28 06:04:10,332 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:04:10,332 INFO L495 AbstractCegarLoop]: Abstraction has 566 states and 754 transitions. [2022-04-28 06:04:10,332 INFO L496 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-28 06:04:10,332 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 566 states and 754 transitions. [2022-04-28 06:04:24,212 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 754 edges. 751 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-28 06:04:24,212 INFO L276 IsEmpty]: Start isEmpty. Operand 566 states and 754 transitions. [2022-04-28 06:04:24,213 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 112 [2022-04-28 06:04:24,213 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:04:24,213 INFO L195 NwaCegarLoop]: 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-28 06:04:24,225 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Forceful destruction successful, exit code 0 [2022-04-28 06:04:24,413 WARN L477 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-28 06:04:24,414 INFO L420 AbstractCegarLoop]: === Iteration 35 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:04:24,414 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:04:24,414 INFO L85 PathProgramCache]: Analyzing trace with hash -1965005106, now seen corresponding path program 5 times [2022-04-28 06:04:24,414 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:04:24,414 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2144558290] [2022-04-28 06:04:24,414 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:04:24,414 INFO L85 PathProgramCache]: Analyzing trace with hash -1965005106, now seen corresponding path program 6 times [2022-04-28 06:04:24,414 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:04:24,414 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1940200389] [2022-04-28 06:04:24,415 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:04:24,415 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:04:24,432 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:04:24,432 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1152823692] [2022-04-28 06:04:24,432 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 06:04:24,432 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:04:24,433 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:04:24,440 INFO L229 MonitoredProcess]: Starting monitored process 36 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:04:24,461 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Waiting until timeout for monitored process [2022-04-28 06:04:24,621 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2022-04-28 06:04:24,621 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:04:24,622 INFO L263 TraceCheckSpWp]: Trace formula consists of 278 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-28 06:04:24,642 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:04:24,651 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:04:25,215 INFO L272 TraceCheckUtils]: 0: Hoare triple {64482#true} call ULTIMATE.init(); {64482#true} is VALID [2022-04-28 06:04:25,216 INFO L290 TraceCheckUtils]: 1: Hoare triple {64482#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,216 INFO L290 TraceCheckUtils]: 2: Hoare triple {64490#(<= ~counter~0 0)} assume true; {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,216 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {64490#(<= ~counter~0 0)} {64482#true} #102#return; {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,216 INFO L272 TraceCheckUtils]: 4: Hoare triple {64490#(<= ~counter~0 0)} call #t~ret9 := main(); {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,217 INFO L290 TraceCheckUtils]: 5: Hoare triple {64490#(<= ~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; {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,217 INFO L272 TraceCheckUtils]: 6: Hoare triple {64490#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,217 INFO L290 TraceCheckUtils]: 7: Hoare triple {64490#(<= ~counter~0 0)} ~cond := #in~cond; {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,217 INFO L290 TraceCheckUtils]: 8: Hoare triple {64490#(<= ~counter~0 0)} assume !(0 == ~cond); {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,218 INFO L290 TraceCheckUtils]: 9: Hoare triple {64490#(<= ~counter~0 0)} assume true; {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,218 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {64490#(<= ~counter~0 0)} {64490#(<= ~counter~0 0)} #90#return; {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,218 INFO L272 TraceCheckUtils]: 11: Hoare triple {64490#(<= ~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)); {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,218 INFO L290 TraceCheckUtils]: 12: Hoare triple {64490#(<= ~counter~0 0)} ~cond := #in~cond; {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,219 INFO L290 TraceCheckUtils]: 13: Hoare triple {64490#(<= ~counter~0 0)} assume !(0 == ~cond); {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,219 INFO L290 TraceCheckUtils]: 14: Hoare triple {64490#(<= ~counter~0 0)} assume true; {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,219 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {64490#(<= ~counter~0 0)} {64490#(<= ~counter~0 0)} #92#return; {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,219 INFO L290 TraceCheckUtils]: 16: Hoare triple {64490#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {64490#(<= ~counter~0 0)} is VALID [2022-04-28 06:04:25,221 INFO L290 TraceCheckUtils]: 17: Hoare triple {64490#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {64539#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:25,221 INFO L290 TraceCheckUtils]: 18: Hoare triple {64539#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {64539#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:25,221 INFO L272 TraceCheckUtils]: 19: Hoare triple {64539#(<= ~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)); {64539#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:25,221 INFO L290 TraceCheckUtils]: 20: Hoare triple {64539#(<= ~counter~0 1)} ~cond := #in~cond; {64539#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:25,223 INFO L290 TraceCheckUtils]: 21: Hoare triple {64539#(<= ~counter~0 1)} assume !(0 == ~cond); {64539#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:25,223 INFO L290 TraceCheckUtils]: 22: Hoare triple {64539#(<= ~counter~0 1)} assume true; {64539#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:25,223 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {64539#(<= ~counter~0 1)} {64539#(<= ~counter~0 1)} #94#return; {64539#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:25,224 INFO L290 TraceCheckUtils]: 24: Hoare triple {64539#(<= ~counter~0 1)} assume !!(0 != ~r~0); {64539#(<= ~counter~0 1)} is VALID [2022-04-28 06:04:25,224 INFO L290 TraceCheckUtils]: 25: Hoare triple {64539#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64564#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:25,224 INFO L290 TraceCheckUtils]: 26: Hoare triple {64564#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {64564#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:25,225 INFO L272 TraceCheckUtils]: 27: Hoare triple {64564#(<= ~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)); {64564#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:25,225 INFO L290 TraceCheckUtils]: 28: Hoare triple {64564#(<= ~counter~0 2)} ~cond := #in~cond; {64564#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:25,225 INFO L290 TraceCheckUtils]: 29: Hoare triple {64564#(<= ~counter~0 2)} assume !(0 == ~cond); {64564#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:25,225 INFO L290 TraceCheckUtils]: 30: Hoare triple {64564#(<= ~counter~0 2)} assume true; {64564#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:25,226 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {64564#(<= ~counter~0 2)} {64564#(<= ~counter~0 2)} #96#return; {64564#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:25,226 INFO L290 TraceCheckUtils]: 32: Hoare triple {64564#(<= ~counter~0 2)} assume !(~r~0 > 0); {64564#(<= ~counter~0 2)} is VALID [2022-04-28 06:04:25,227 INFO L290 TraceCheckUtils]: 33: Hoare triple {64564#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {64589#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:25,227 INFO L290 TraceCheckUtils]: 34: Hoare triple {64589#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {64589#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:25,227 INFO L272 TraceCheckUtils]: 35: Hoare triple {64589#(<= ~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)); {64589#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:25,227 INFO L290 TraceCheckUtils]: 36: Hoare triple {64589#(<= ~counter~0 3)} ~cond := #in~cond; {64589#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:25,228 INFO L290 TraceCheckUtils]: 37: Hoare triple {64589#(<= ~counter~0 3)} assume !(0 == ~cond); {64589#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:25,228 INFO L290 TraceCheckUtils]: 38: Hoare triple {64589#(<= ~counter~0 3)} assume true; {64589#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:25,228 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {64589#(<= ~counter~0 3)} {64589#(<= ~counter~0 3)} #98#return; {64589#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:25,228 INFO L290 TraceCheckUtils]: 40: Hoare triple {64589#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {64589#(<= ~counter~0 3)} is VALID [2022-04-28 06:04:25,229 INFO L290 TraceCheckUtils]: 41: Hoare triple {64589#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {64614#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:25,229 INFO L290 TraceCheckUtils]: 42: Hoare triple {64614#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {64614#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:25,230 INFO L272 TraceCheckUtils]: 43: Hoare triple {64614#(<= ~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)); {64614#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:25,230 INFO L290 TraceCheckUtils]: 44: Hoare triple {64614#(<= ~counter~0 4)} ~cond := #in~cond; {64614#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:25,230 INFO L290 TraceCheckUtils]: 45: Hoare triple {64614#(<= ~counter~0 4)} assume !(0 == ~cond); {64614#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:25,230 INFO L290 TraceCheckUtils]: 46: Hoare triple {64614#(<= ~counter~0 4)} assume true; {64614#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:25,231 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {64614#(<= ~counter~0 4)} {64614#(<= ~counter~0 4)} #98#return; {64614#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:25,231 INFO L290 TraceCheckUtils]: 48: Hoare triple {64614#(<= ~counter~0 4)} assume !(~r~0 < 0); {64614#(<= ~counter~0 4)} is VALID [2022-04-28 06:04:25,231 INFO L290 TraceCheckUtils]: 49: Hoare triple {64614#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {64639#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:25,232 INFO L290 TraceCheckUtils]: 50: Hoare triple {64639#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {64639#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:25,232 INFO L272 TraceCheckUtils]: 51: Hoare triple {64639#(<= ~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)); {64639#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:25,232 INFO L290 TraceCheckUtils]: 52: Hoare triple {64639#(<= ~counter~0 5)} ~cond := #in~cond; {64639#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:25,232 INFO L290 TraceCheckUtils]: 53: Hoare triple {64639#(<= ~counter~0 5)} assume !(0 == ~cond); {64639#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:25,233 INFO L290 TraceCheckUtils]: 54: Hoare triple {64639#(<= ~counter~0 5)} assume true; {64639#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:25,233 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {64639#(<= ~counter~0 5)} {64639#(<= ~counter~0 5)} #94#return; {64639#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:25,233 INFO L290 TraceCheckUtils]: 56: Hoare triple {64639#(<= ~counter~0 5)} assume !!(0 != ~r~0); {64639#(<= ~counter~0 5)} is VALID [2022-04-28 06:04:25,234 INFO L290 TraceCheckUtils]: 57: Hoare triple {64639#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64664#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:25,234 INFO L290 TraceCheckUtils]: 58: Hoare triple {64664#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {64664#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:25,234 INFO L272 TraceCheckUtils]: 59: Hoare triple {64664#(<= ~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)); {64664#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:25,234 INFO L290 TraceCheckUtils]: 60: Hoare triple {64664#(<= ~counter~0 6)} ~cond := #in~cond; {64664#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:25,235 INFO L290 TraceCheckUtils]: 61: Hoare triple {64664#(<= ~counter~0 6)} assume !(0 == ~cond); {64664#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:25,235 INFO L290 TraceCheckUtils]: 62: Hoare triple {64664#(<= ~counter~0 6)} assume true; {64664#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:25,235 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {64664#(<= ~counter~0 6)} {64664#(<= ~counter~0 6)} #96#return; {64664#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:25,235 INFO L290 TraceCheckUtils]: 64: Hoare triple {64664#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {64664#(<= ~counter~0 6)} is VALID [2022-04-28 06:04:25,236 INFO L290 TraceCheckUtils]: 65: Hoare triple {64664#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64689#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:25,236 INFO L290 TraceCheckUtils]: 66: Hoare triple {64689#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {64689#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:25,237 INFO L272 TraceCheckUtils]: 67: Hoare triple {64689#(<= ~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)); {64689#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:25,237 INFO L290 TraceCheckUtils]: 68: Hoare triple {64689#(<= ~counter~0 7)} ~cond := #in~cond; {64689#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:25,237 INFO L290 TraceCheckUtils]: 69: Hoare triple {64689#(<= ~counter~0 7)} assume !(0 == ~cond); {64689#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:25,237 INFO L290 TraceCheckUtils]: 70: Hoare triple {64689#(<= ~counter~0 7)} assume true; {64689#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:25,238 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {64689#(<= ~counter~0 7)} {64689#(<= ~counter~0 7)} #96#return; {64689#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:25,238 INFO L290 TraceCheckUtils]: 72: Hoare triple {64689#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {64689#(<= ~counter~0 7)} is VALID [2022-04-28 06:04:25,238 INFO L290 TraceCheckUtils]: 73: Hoare triple {64689#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64714#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:25,239 INFO L290 TraceCheckUtils]: 74: Hoare triple {64714#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {64714#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:25,239 INFO L272 TraceCheckUtils]: 75: Hoare triple {64714#(<= ~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)); {64714#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:25,239 INFO L290 TraceCheckUtils]: 76: Hoare triple {64714#(<= ~counter~0 8)} ~cond := #in~cond; {64714#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:25,239 INFO L290 TraceCheckUtils]: 77: Hoare triple {64714#(<= ~counter~0 8)} assume !(0 == ~cond); {64714#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:25,240 INFO L290 TraceCheckUtils]: 78: Hoare triple {64714#(<= ~counter~0 8)} assume true; {64714#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:25,240 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {64714#(<= ~counter~0 8)} {64714#(<= ~counter~0 8)} #96#return; {64714#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:25,240 INFO L290 TraceCheckUtils]: 80: Hoare triple {64714#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {64714#(<= ~counter~0 8)} is VALID [2022-04-28 06:04:25,241 INFO L290 TraceCheckUtils]: 81: Hoare triple {64714#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64739#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:25,241 INFO L290 TraceCheckUtils]: 82: Hoare triple {64739#(<= ~counter~0 9)} assume !!(#t~post7 < 50);havoc #t~post7; {64739#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:25,241 INFO L272 TraceCheckUtils]: 83: Hoare triple {64739#(<= ~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)); {64739#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:25,242 INFO L290 TraceCheckUtils]: 84: Hoare triple {64739#(<= ~counter~0 9)} ~cond := #in~cond; {64739#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:25,242 INFO L290 TraceCheckUtils]: 85: Hoare triple {64739#(<= ~counter~0 9)} assume !(0 == ~cond); {64739#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:25,242 INFO L290 TraceCheckUtils]: 86: Hoare triple {64739#(<= ~counter~0 9)} assume true; {64739#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:25,242 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {64739#(<= ~counter~0 9)} {64739#(<= ~counter~0 9)} #96#return; {64739#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:25,243 INFO L290 TraceCheckUtils]: 88: Hoare triple {64739#(<= ~counter~0 9)} assume !(~r~0 > 0); {64739#(<= ~counter~0 9)} is VALID [2022-04-28 06:04:25,243 INFO L290 TraceCheckUtils]: 89: Hoare triple {64739#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {64764#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:25,243 INFO L290 TraceCheckUtils]: 90: Hoare triple {64764#(<= ~counter~0 10)} assume !!(#t~post8 < 50);havoc #t~post8; {64764#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:25,244 INFO L272 TraceCheckUtils]: 91: Hoare triple {64764#(<= ~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)); {64764#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:25,244 INFO L290 TraceCheckUtils]: 92: Hoare triple {64764#(<= ~counter~0 10)} ~cond := #in~cond; {64764#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:25,244 INFO L290 TraceCheckUtils]: 93: Hoare triple {64764#(<= ~counter~0 10)} assume !(0 == ~cond); {64764#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:25,244 INFO L290 TraceCheckUtils]: 94: Hoare triple {64764#(<= ~counter~0 10)} assume true; {64764#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:25,245 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {64764#(<= ~counter~0 10)} {64764#(<= ~counter~0 10)} #98#return; {64764#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:25,245 INFO L290 TraceCheckUtils]: 96: Hoare triple {64764#(<= ~counter~0 10)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {64764#(<= ~counter~0 10)} is VALID [2022-04-28 06:04:25,246 INFO L290 TraceCheckUtils]: 97: Hoare triple {64764#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {64789#(<= ~counter~0 11)} is VALID [2022-04-28 06:04:25,246 INFO L290 TraceCheckUtils]: 98: Hoare triple {64789#(<= ~counter~0 11)} assume !!(#t~post8 < 50);havoc #t~post8; {64789#(<= ~counter~0 11)} is VALID [2022-04-28 06:04:25,246 INFO L272 TraceCheckUtils]: 99: Hoare triple {64789#(<= ~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)); {64789#(<= ~counter~0 11)} is VALID [2022-04-28 06:04:25,246 INFO L290 TraceCheckUtils]: 100: Hoare triple {64789#(<= ~counter~0 11)} ~cond := #in~cond; {64789#(<= ~counter~0 11)} is VALID [2022-04-28 06:04:25,246 INFO L290 TraceCheckUtils]: 101: Hoare triple {64789#(<= ~counter~0 11)} assume !(0 == ~cond); {64789#(<= ~counter~0 11)} is VALID [2022-04-28 06:04:25,247 INFO L290 TraceCheckUtils]: 102: Hoare triple {64789#(<= ~counter~0 11)} assume true; {64789#(<= ~counter~0 11)} is VALID [2022-04-28 06:04:25,247 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {64789#(<= ~counter~0 11)} {64789#(<= ~counter~0 11)} #98#return; {64789#(<= ~counter~0 11)} is VALID [2022-04-28 06:04:25,247 INFO L290 TraceCheckUtils]: 104: Hoare triple {64789#(<= ~counter~0 11)} assume !(~r~0 < 0); {64789#(<= ~counter~0 11)} is VALID [2022-04-28 06:04:25,248 INFO L290 TraceCheckUtils]: 105: Hoare triple {64789#(<= ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {64814#(<= |main_#t~post6| 11)} is VALID [2022-04-28 06:04:25,248 INFO L290 TraceCheckUtils]: 106: Hoare triple {64814#(<= |main_#t~post6| 11)} assume !(#t~post6 < 50);havoc #t~post6; {64483#false} is VALID [2022-04-28 06:04:25,248 INFO L272 TraceCheckUtils]: 107: Hoare triple {64483#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)); {64483#false} is VALID [2022-04-28 06:04:25,248 INFO L290 TraceCheckUtils]: 108: Hoare triple {64483#false} ~cond := #in~cond; {64483#false} is VALID [2022-04-28 06:04:25,248 INFO L290 TraceCheckUtils]: 109: Hoare triple {64483#false} assume 0 == ~cond; {64483#false} is VALID [2022-04-28 06:04:25,248 INFO L290 TraceCheckUtils]: 110: Hoare triple {64483#false} assume !false; {64483#false} is VALID [2022-04-28 06:04:25,248 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-28 06:04:25,248 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:04:25,766 INFO L290 TraceCheckUtils]: 110: Hoare triple {64483#false} assume !false; {64483#false} is VALID [2022-04-28 06:04:25,767 INFO L290 TraceCheckUtils]: 109: Hoare triple {64483#false} assume 0 == ~cond; {64483#false} is VALID [2022-04-28 06:04:25,767 INFO L290 TraceCheckUtils]: 108: Hoare triple {64483#false} ~cond := #in~cond; {64483#false} is VALID [2022-04-28 06:04:25,767 INFO L272 TraceCheckUtils]: 107: Hoare triple {64483#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)); {64483#false} is VALID [2022-04-28 06:04:25,767 INFO L290 TraceCheckUtils]: 106: Hoare triple {64842#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {64483#false} is VALID [2022-04-28 06:04:25,767 INFO L290 TraceCheckUtils]: 105: Hoare triple {64846#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {64842#(< |main_#t~post6| 50)} is VALID [2022-04-28 06:04:25,767 INFO L290 TraceCheckUtils]: 104: Hoare triple {64846#(< ~counter~0 50)} assume !(~r~0 < 0); {64846#(< ~counter~0 50)} is VALID [2022-04-28 06:04:25,768 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {64482#true} {64846#(< ~counter~0 50)} #98#return; {64846#(< ~counter~0 50)} is VALID [2022-04-28 06:04:25,768 INFO L290 TraceCheckUtils]: 102: Hoare triple {64482#true} assume true; {64482#true} is VALID [2022-04-28 06:04:25,768 INFO L290 TraceCheckUtils]: 101: Hoare triple {64482#true} assume !(0 == ~cond); {64482#true} is VALID [2022-04-28 06:04:25,768 INFO L290 TraceCheckUtils]: 100: Hoare triple {64482#true} ~cond := #in~cond; {64482#true} is VALID [2022-04-28 06:04:25,768 INFO L272 TraceCheckUtils]: 99: Hoare triple {64846#(< ~counter~0 50)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {64482#true} is VALID [2022-04-28 06:04:25,768 INFO L290 TraceCheckUtils]: 98: Hoare triple {64846#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {64846#(< ~counter~0 50)} is VALID [2022-04-28 06:04:25,770 INFO L290 TraceCheckUtils]: 97: Hoare triple {64871#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {64846#(< ~counter~0 50)} is VALID [2022-04-28 06:04:25,770 INFO L290 TraceCheckUtils]: 96: Hoare triple {64871#(< ~counter~0 49)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {64871#(< ~counter~0 49)} is VALID [2022-04-28 06:04:25,770 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {64482#true} {64871#(< ~counter~0 49)} #98#return; {64871#(< ~counter~0 49)} is VALID [2022-04-28 06:04:25,770 INFO L290 TraceCheckUtils]: 94: Hoare triple {64482#true} assume true; {64482#true} is VALID [2022-04-28 06:04:25,770 INFO L290 TraceCheckUtils]: 93: Hoare triple {64482#true} assume !(0 == ~cond); {64482#true} is VALID [2022-04-28 06:04:25,770 INFO L290 TraceCheckUtils]: 92: Hoare triple {64482#true} ~cond := #in~cond; {64482#true} is VALID [2022-04-28 06:04:25,770 INFO L272 TraceCheckUtils]: 91: Hoare triple {64871#(< ~counter~0 49)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {64482#true} is VALID [2022-04-28 06:04:25,771 INFO L290 TraceCheckUtils]: 90: Hoare triple {64871#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {64871#(< ~counter~0 49)} is VALID [2022-04-28 06:04:25,771 INFO L290 TraceCheckUtils]: 89: Hoare triple {64896#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {64871#(< ~counter~0 49)} is VALID [2022-04-28 06:04:25,771 INFO L290 TraceCheckUtils]: 88: Hoare triple {64896#(< ~counter~0 48)} assume !(~r~0 > 0); {64896#(< ~counter~0 48)} is VALID [2022-04-28 06:04:25,772 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {64482#true} {64896#(< ~counter~0 48)} #96#return; {64896#(< ~counter~0 48)} is VALID [2022-04-28 06:04:25,772 INFO L290 TraceCheckUtils]: 86: Hoare triple {64482#true} assume true; {64482#true} is VALID [2022-04-28 06:04:25,772 INFO L290 TraceCheckUtils]: 85: Hoare triple {64482#true} assume !(0 == ~cond); {64482#true} is VALID [2022-04-28 06:04:25,772 INFO L290 TraceCheckUtils]: 84: Hoare triple {64482#true} ~cond := #in~cond; {64482#true} is VALID [2022-04-28 06:04:25,772 INFO L272 TraceCheckUtils]: 83: Hoare triple {64896#(< ~counter~0 48)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {64482#true} is VALID [2022-04-28 06:04:25,772 INFO L290 TraceCheckUtils]: 82: Hoare triple {64896#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {64896#(< ~counter~0 48)} is VALID [2022-04-28 06:04:25,773 INFO L290 TraceCheckUtils]: 81: Hoare triple {64921#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64896#(< ~counter~0 48)} is VALID [2022-04-28 06:04:25,773 INFO L290 TraceCheckUtils]: 80: Hoare triple {64921#(< ~counter~0 47)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {64921#(< ~counter~0 47)} is VALID [2022-04-28 06:04:25,773 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {64482#true} {64921#(< ~counter~0 47)} #96#return; {64921#(< ~counter~0 47)} is VALID [2022-04-28 06:04:25,774 INFO L290 TraceCheckUtils]: 78: Hoare triple {64482#true} assume true; {64482#true} is VALID [2022-04-28 06:04:25,774 INFO L290 TraceCheckUtils]: 77: Hoare triple {64482#true} assume !(0 == ~cond); {64482#true} is VALID [2022-04-28 06:04:25,774 INFO L290 TraceCheckUtils]: 76: Hoare triple {64482#true} ~cond := #in~cond; {64482#true} is VALID [2022-04-28 06:04:25,774 INFO L272 TraceCheckUtils]: 75: Hoare triple {64921#(< ~counter~0 47)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {64482#true} is VALID [2022-04-28 06:04:25,774 INFO L290 TraceCheckUtils]: 74: Hoare triple {64921#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {64921#(< ~counter~0 47)} is VALID [2022-04-28 06:04:25,775 INFO L290 TraceCheckUtils]: 73: Hoare triple {64946#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64921#(< ~counter~0 47)} is VALID [2022-04-28 06:04:25,775 INFO L290 TraceCheckUtils]: 72: Hoare triple {64946#(< ~counter~0 46)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {64946#(< ~counter~0 46)} is VALID [2022-04-28 06:04:25,775 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {64482#true} {64946#(< ~counter~0 46)} #96#return; {64946#(< ~counter~0 46)} is VALID [2022-04-28 06:04:25,775 INFO L290 TraceCheckUtils]: 70: Hoare triple {64482#true} assume true; {64482#true} is VALID [2022-04-28 06:04:25,775 INFO L290 TraceCheckUtils]: 69: Hoare triple {64482#true} assume !(0 == ~cond); {64482#true} is VALID [2022-04-28 06:04:25,775 INFO L290 TraceCheckUtils]: 68: Hoare triple {64482#true} ~cond := #in~cond; {64482#true} is VALID [2022-04-28 06:04:25,775 INFO L272 TraceCheckUtils]: 67: Hoare triple {64946#(< ~counter~0 46)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {64482#true} is VALID [2022-04-28 06:04:25,776 INFO L290 TraceCheckUtils]: 66: Hoare triple {64946#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {64946#(< ~counter~0 46)} is VALID [2022-04-28 06:04:25,776 INFO L290 TraceCheckUtils]: 65: Hoare triple {64971#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64946#(< ~counter~0 46)} is VALID [2022-04-28 06:04:25,776 INFO L290 TraceCheckUtils]: 64: Hoare triple {64971#(< ~counter~0 45)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {64971#(< ~counter~0 45)} is VALID [2022-04-28 06:04:25,777 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {64482#true} {64971#(< ~counter~0 45)} #96#return; {64971#(< ~counter~0 45)} is VALID [2022-04-28 06:04:25,777 INFO L290 TraceCheckUtils]: 62: Hoare triple {64482#true} assume true; {64482#true} is VALID [2022-04-28 06:04:25,777 INFO L290 TraceCheckUtils]: 61: Hoare triple {64482#true} assume !(0 == ~cond); {64482#true} is VALID [2022-04-28 06:04:25,777 INFO L290 TraceCheckUtils]: 60: Hoare triple {64482#true} ~cond := #in~cond; {64482#true} is VALID [2022-04-28 06:04:25,777 INFO L272 TraceCheckUtils]: 59: Hoare triple {64971#(< ~counter~0 45)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {64482#true} is VALID [2022-04-28 06:04:25,777 INFO L290 TraceCheckUtils]: 58: Hoare triple {64971#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {64971#(< ~counter~0 45)} is VALID [2022-04-28 06:04:25,778 INFO L290 TraceCheckUtils]: 57: Hoare triple {64996#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {64971#(< ~counter~0 45)} is VALID [2022-04-28 06:04:25,778 INFO L290 TraceCheckUtils]: 56: Hoare triple {64996#(< ~counter~0 44)} assume !!(0 != ~r~0); {64996#(< ~counter~0 44)} is VALID [2022-04-28 06:04:25,778 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {64482#true} {64996#(< ~counter~0 44)} #94#return; {64996#(< ~counter~0 44)} is VALID [2022-04-28 06:04:25,779 INFO L290 TraceCheckUtils]: 54: Hoare triple {64482#true} assume true; {64482#true} is VALID [2022-04-28 06:04:25,779 INFO L290 TraceCheckUtils]: 53: Hoare triple {64482#true} assume !(0 == ~cond); {64482#true} is VALID [2022-04-28 06:04:25,779 INFO L290 TraceCheckUtils]: 52: Hoare triple {64482#true} ~cond := #in~cond; {64482#true} is VALID [2022-04-28 06:04:25,779 INFO L272 TraceCheckUtils]: 51: Hoare triple {64996#(< ~counter~0 44)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {64482#true} is VALID [2022-04-28 06:04:25,779 INFO L290 TraceCheckUtils]: 50: Hoare triple {64996#(< ~counter~0 44)} assume !!(#t~post6 < 50);havoc #t~post6; {64996#(< ~counter~0 44)} is VALID [2022-04-28 06:04:25,780 INFO L290 TraceCheckUtils]: 49: Hoare triple {65021#(< ~counter~0 43)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {64996#(< ~counter~0 44)} is VALID [2022-04-28 06:04:25,780 INFO L290 TraceCheckUtils]: 48: Hoare triple {65021#(< ~counter~0 43)} assume !(~r~0 < 0); {65021#(< ~counter~0 43)} is VALID [2022-04-28 06:04:25,780 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {64482#true} {65021#(< ~counter~0 43)} #98#return; {65021#(< ~counter~0 43)} is VALID [2022-04-28 06:04:25,780 INFO L290 TraceCheckUtils]: 46: Hoare triple {64482#true} assume true; {64482#true} is VALID [2022-04-28 06:04:25,780 INFO L290 TraceCheckUtils]: 45: Hoare triple {64482#true} assume !(0 == ~cond); {64482#true} is VALID [2022-04-28 06:04:25,780 INFO L290 TraceCheckUtils]: 44: Hoare triple {64482#true} ~cond := #in~cond; {64482#true} is VALID [2022-04-28 06:04:25,780 INFO L272 TraceCheckUtils]: 43: Hoare triple {65021#(< ~counter~0 43)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {64482#true} is VALID [2022-04-28 06:04:25,781 INFO L290 TraceCheckUtils]: 42: Hoare triple {65021#(< ~counter~0 43)} assume !!(#t~post8 < 50);havoc #t~post8; {65021#(< ~counter~0 43)} is VALID [2022-04-28 06:04:25,781 INFO L290 TraceCheckUtils]: 41: Hoare triple {65046#(< ~counter~0 42)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65021#(< ~counter~0 43)} is VALID [2022-04-28 06:04:25,781 INFO L290 TraceCheckUtils]: 40: Hoare triple {65046#(< ~counter~0 42)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {65046#(< ~counter~0 42)} is VALID [2022-04-28 06:04:25,782 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {64482#true} {65046#(< ~counter~0 42)} #98#return; {65046#(< ~counter~0 42)} is VALID [2022-04-28 06:04:25,782 INFO L290 TraceCheckUtils]: 38: Hoare triple {64482#true} assume true; {64482#true} is VALID [2022-04-28 06:04:25,782 INFO L290 TraceCheckUtils]: 37: Hoare triple {64482#true} assume !(0 == ~cond); {64482#true} is VALID [2022-04-28 06:04:25,782 INFO L290 TraceCheckUtils]: 36: Hoare triple {64482#true} ~cond := #in~cond; {64482#true} is VALID [2022-04-28 06:04:25,782 INFO L272 TraceCheckUtils]: 35: Hoare triple {65046#(< ~counter~0 42)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {64482#true} is VALID [2022-04-28 06:04:25,782 INFO L290 TraceCheckUtils]: 34: Hoare triple {65046#(< ~counter~0 42)} assume !!(#t~post8 < 50);havoc #t~post8; {65046#(< ~counter~0 42)} is VALID [2022-04-28 06:04:25,783 INFO L290 TraceCheckUtils]: 33: Hoare triple {65071#(< ~counter~0 41)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65046#(< ~counter~0 42)} is VALID [2022-04-28 06:04:25,783 INFO L290 TraceCheckUtils]: 32: Hoare triple {65071#(< ~counter~0 41)} assume !(~r~0 > 0); {65071#(< ~counter~0 41)} is VALID [2022-04-28 06:04:25,783 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {64482#true} {65071#(< ~counter~0 41)} #96#return; {65071#(< ~counter~0 41)} is VALID [2022-04-28 06:04:25,783 INFO L290 TraceCheckUtils]: 30: Hoare triple {64482#true} assume true; {64482#true} is VALID [2022-04-28 06:04:25,784 INFO L290 TraceCheckUtils]: 29: Hoare triple {64482#true} assume !(0 == ~cond); {64482#true} is VALID [2022-04-28 06:04:25,784 INFO L290 TraceCheckUtils]: 28: Hoare triple {64482#true} ~cond := #in~cond; {64482#true} is VALID [2022-04-28 06:04:25,784 INFO L272 TraceCheckUtils]: 27: Hoare triple {65071#(< ~counter~0 41)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {64482#true} is VALID [2022-04-28 06:04:25,784 INFO L290 TraceCheckUtils]: 26: Hoare triple {65071#(< ~counter~0 41)} assume !!(#t~post7 < 50);havoc #t~post7; {65071#(< ~counter~0 41)} is VALID [2022-04-28 06:04:25,784 INFO L290 TraceCheckUtils]: 25: Hoare triple {65096#(< ~counter~0 40)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65071#(< ~counter~0 41)} is VALID [2022-04-28 06:04:25,785 INFO L290 TraceCheckUtils]: 24: Hoare triple {65096#(< ~counter~0 40)} assume !!(0 != ~r~0); {65096#(< ~counter~0 40)} is VALID [2022-04-28 06:04:25,785 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {64482#true} {65096#(< ~counter~0 40)} #94#return; {65096#(< ~counter~0 40)} is VALID [2022-04-28 06:04:25,785 INFO L290 TraceCheckUtils]: 22: Hoare triple {64482#true} assume true; {64482#true} is VALID [2022-04-28 06:04:25,785 INFO L290 TraceCheckUtils]: 21: Hoare triple {64482#true} assume !(0 == ~cond); {64482#true} is VALID [2022-04-28 06:04:25,785 INFO L290 TraceCheckUtils]: 20: Hoare triple {64482#true} ~cond := #in~cond; {64482#true} is VALID [2022-04-28 06:04:25,785 INFO L272 TraceCheckUtils]: 19: Hoare triple {65096#(< ~counter~0 40)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {64482#true} is VALID [2022-04-28 06:04:25,786 INFO L290 TraceCheckUtils]: 18: Hoare triple {65096#(< ~counter~0 40)} assume !!(#t~post6 < 50);havoc #t~post6; {65096#(< ~counter~0 40)} is VALID [2022-04-28 06:04:25,786 INFO L290 TraceCheckUtils]: 17: Hoare triple {65121#(< ~counter~0 39)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65096#(< ~counter~0 40)} is VALID [2022-04-28 06:04:25,786 INFO L290 TraceCheckUtils]: 16: Hoare triple {65121#(< ~counter~0 39)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {65121#(< ~counter~0 39)} is VALID [2022-04-28 06:04:25,787 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {64482#true} {65121#(< ~counter~0 39)} #92#return; {65121#(< ~counter~0 39)} is VALID [2022-04-28 06:04:25,787 INFO L290 TraceCheckUtils]: 14: Hoare triple {64482#true} assume true; {64482#true} is VALID [2022-04-28 06:04:25,787 INFO L290 TraceCheckUtils]: 13: Hoare triple {64482#true} assume !(0 == ~cond); {64482#true} is VALID [2022-04-28 06:04:25,787 INFO L290 TraceCheckUtils]: 12: Hoare triple {64482#true} ~cond := #in~cond; {64482#true} is VALID [2022-04-28 06:04:25,787 INFO L272 TraceCheckUtils]: 11: Hoare triple {65121#(< ~counter~0 39)} 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)); {64482#true} is VALID [2022-04-28 06:04:25,787 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {64482#true} {65121#(< ~counter~0 39)} #90#return; {65121#(< ~counter~0 39)} is VALID [2022-04-28 06:04:25,787 INFO L290 TraceCheckUtils]: 9: Hoare triple {64482#true} assume true; {64482#true} is VALID [2022-04-28 06:04:25,787 INFO L290 TraceCheckUtils]: 8: Hoare triple {64482#true} assume !(0 == ~cond); {64482#true} is VALID [2022-04-28 06:04:25,787 INFO L290 TraceCheckUtils]: 7: Hoare triple {64482#true} ~cond := #in~cond; {64482#true} is VALID [2022-04-28 06:04:25,787 INFO L272 TraceCheckUtils]: 6: Hoare triple {65121#(< ~counter~0 39)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {64482#true} is VALID [2022-04-28 06:04:25,788 INFO L290 TraceCheckUtils]: 5: Hoare triple {65121#(< ~counter~0 39)} 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; {65121#(< ~counter~0 39)} is VALID [2022-04-28 06:04:25,788 INFO L272 TraceCheckUtils]: 4: Hoare triple {65121#(< ~counter~0 39)} call #t~ret9 := main(); {65121#(< ~counter~0 39)} is VALID [2022-04-28 06:04:25,788 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {65121#(< ~counter~0 39)} {64482#true} #102#return; {65121#(< ~counter~0 39)} is VALID [2022-04-28 06:04:25,788 INFO L290 TraceCheckUtils]: 2: Hoare triple {65121#(< ~counter~0 39)} assume true; {65121#(< ~counter~0 39)} is VALID [2022-04-28 06:04:25,789 INFO L290 TraceCheckUtils]: 1: Hoare triple {64482#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {65121#(< ~counter~0 39)} is VALID [2022-04-28 06:04:25,789 INFO L272 TraceCheckUtils]: 0: Hoare triple {64482#true} call ULTIMATE.init(); {64482#true} is VALID [2022-04-28 06:04:25,789 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-28 06:04:25,789 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:04:25,789 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1940200389] [2022-04-28 06:04:25,789 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:04:25,789 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1152823692] [2022-04-28 06:04:25,789 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1152823692] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:04:25,790 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:04:25,790 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 28 [2022-04-28 06:04:25,790 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:04:25,790 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2144558290] [2022-04-28 06:04:25,790 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2144558290] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:04:25,790 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:04:25,790 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 06:04:25,790 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [719083751] [2022-04-28 06:04:25,790 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:04:25,790 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-28 06:04:25,791 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:04:25,791 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-28 06:04:25,842 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-28 06:04:25,843 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 06:04:25,843 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:04:25,843 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 06:04:25,843 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=330, Invalid=426, Unknown=0, NotChecked=0, Total=756 [2022-04-28 06:04:25,843 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-28 06:04:27,739 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:04:27,739 INFO L93 Difference]: Finished difference Result 625 states and 834 transitions. [2022-04-28 06:04:27,739 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-28 06:04:27,739 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-28 06:04:27,739 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:04:27,739 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-28 06:04:27,741 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 234 transitions. [2022-04-28 06:04:27,741 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-28 06:04:27,742 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 234 transitions. [2022-04-28 06:04:27,742 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 234 transitions. [2022-04-28 06:04:27,950 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-28 06:04:27,967 INFO L225 Difference]: With dead ends: 625 [2022-04-28 06:04:27,967 INFO L226 Difference]: Without dead ends: 614 [2022-04-28 06:04:27,967 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 229 GetRequests, 195 SyntacticMatches, 0 SemanticMatches, 34 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=525, Invalid=735, Unknown=0, NotChecked=0, Total=1260 [2022-04-28 06:04:27,968 INFO L413 NwaCegarLoop]: 63 mSDtfsCounter, 136 mSDsluCounter, 216 mSDsCounter, 0 mSdLazyCounter, 165 mSolverCounterSat, 106 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 136 SdHoareTripleChecker+Valid, 279 SdHoareTripleChecker+Invalid, 271 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 106 IncrementalHoareTripleChecker+Valid, 165 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 06:04:27,968 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [136 Valid, 279 Invalid, 271 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [106 Valid, 165 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 06:04:27,968 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 614 states. [2022-04-28 06:04:28,917 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 614 to 592. [2022-04-28 06:04:28,918 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:04:28,918 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-28 06:04:28,919 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-28 06:04:28,919 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-28 06:04:28,932 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:04:28,932 INFO L93 Difference]: Finished difference Result 614 states and 818 transitions. [2022-04-28 06:04:28,932 INFO L276 IsEmpty]: Start isEmpty. Operand 614 states and 818 transitions. [2022-04-28 06:04:28,932 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:04:28,932 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:04:28,933 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-28 06:04:28,933 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-28 06:04:28,958 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:04:28,958 INFO L93 Difference]: Finished difference Result 614 states and 818 transitions. [2022-04-28 06:04:28,958 INFO L276 IsEmpty]: Start isEmpty. Operand 614 states and 818 transitions. [2022-04-28 06:04:28,959 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:04:28,959 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:04:28,959 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:04:28,959 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:04:28,959 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-28 06:04:28,975 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 592 states to 592 states and 792 transitions. [2022-04-28 06:04:28,975 INFO L78 Accepts]: Start accepts. Automaton has 592 states and 792 transitions. Word has length 111 [2022-04-28 06:04:28,975 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:04:28,975 INFO L495 AbstractCegarLoop]: Abstraction has 592 states and 792 transitions. [2022-04-28 06:04:28,975 INFO L496 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-28 06:04:28,975 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 592 states and 792 transitions. [2022-04-28 06:04:44,616 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-28 06:04:44,616 INFO L276 IsEmpty]: Start isEmpty. Operand 592 states and 792 transitions. [2022-04-28 06:04:44,617 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-28 06:04:44,617 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:04:44,617 INFO L195 NwaCegarLoop]: 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-28 06:04:44,623 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Forceful destruction successful, exit code 0 [2022-04-28 06:04:44,818 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 36 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable34 [2022-04-28 06:04:44,818 INFO L420 AbstractCegarLoop]: === Iteration 36 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:04:44,818 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:04:44,818 INFO L85 PathProgramCache]: Analyzing trace with hash -1038942829, now seen corresponding path program 13 times [2022-04-28 06:04:44,818 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:04:44,818 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1511655895] [2022-04-28 06:04:44,819 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:04:44,819 INFO L85 PathProgramCache]: Analyzing trace with hash -1038942829, now seen corresponding path program 14 times [2022-04-28 06:04:44,819 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:04:44,819 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2121788896] [2022-04-28 06:04:44,819 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:04:44,819 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:04:44,829 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:04:44,830 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1606191481] [2022-04-28 06:04:44,830 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:04:44,830 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:04:44,830 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:04:44,831 INFO L229 MonitoredProcess]: Starting monitored process 37 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:04:44,831 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Waiting until timeout for monitored process [2022-04-28 06:04:44,889 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:04:44,890 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:04:44,891 INFO L263 TraceCheckSpWp]: Trace formula consists of 287 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 06:04:44,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:04:44,906 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:04:45,767 INFO L272 TraceCheckUtils]: 0: Hoare triple {68853#true} call ULTIMATE.init(); {68853#true} is VALID [2022-04-28 06:04:45,767 INFO L290 TraceCheckUtils]: 1: Hoare triple {68853#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {68853#true} is VALID [2022-04-28 06:04:45,767 INFO L290 TraceCheckUtils]: 2: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:45,767 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {68853#true} {68853#true} #102#return; {68853#true} is VALID [2022-04-28 06:04:45,767 INFO L272 TraceCheckUtils]: 4: Hoare triple {68853#true} call #t~ret9 := main(); {68853#true} is VALID [2022-04-28 06:04:45,767 INFO L290 TraceCheckUtils]: 5: Hoare triple {68853#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; {68853#true} is VALID [2022-04-28 06:04:45,767 INFO L272 TraceCheckUtils]: 6: Hoare triple {68853#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {68853#true} is VALID [2022-04-28 06:04:45,767 INFO L290 TraceCheckUtils]: 7: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:45,767 INFO L290 TraceCheckUtils]: 8: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:45,767 INFO L290 TraceCheckUtils]: 9: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:45,767 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {68853#true} {68853#true} #90#return; {68853#true} is VALID [2022-04-28 06:04:45,767 INFO L272 TraceCheckUtils]: 11: Hoare triple {68853#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)); {68853#true} is VALID [2022-04-28 06:04:45,768 INFO L290 TraceCheckUtils]: 12: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:45,768 INFO L290 TraceCheckUtils]: 13: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:45,768 INFO L290 TraceCheckUtils]: 14: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:45,768 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {68853#true} {68853#true} #92#return; {68853#true} is VALID [2022-04-28 06:04:45,768 INFO L290 TraceCheckUtils]: 16: Hoare triple {68853#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {68906#(<= 1 main_~v~0)} is VALID [2022-04-28 06:04:45,768 INFO L290 TraceCheckUtils]: 17: Hoare triple {68906#(<= 1 main_~v~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {68906#(<= 1 main_~v~0)} is VALID [2022-04-28 06:04:45,769 INFO L290 TraceCheckUtils]: 18: Hoare triple {68906#(<= 1 main_~v~0)} assume !!(#t~post6 < 50);havoc #t~post6; {68906#(<= 1 main_~v~0)} is VALID [2022-04-28 06:04:45,769 INFO L272 TraceCheckUtils]: 19: Hoare triple {68906#(<= 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)); {68853#true} is VALID [2022-04-28 06:04:45,769 INFO L290 TraceCheckUtils]: 20: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:45,769 INFO L290 TraceCheckUtils]: 21: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:45,769 INFO L290 TraceCheckUtils]: 22: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:45,769 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {68853#true} {68906#(<= 1 main_~v~0)} #94#return; {68906#(<= 1 main_~v~0)} is VALID [2022-04-28 06:04:45,769 INFO L290 TraceCheckUtils]: 24: Hoare triple {68906#(<= 1 main_~v~0)} assume !!(0 != ~r~0); {68906#(<= 1 main_~v~0)} is VALID [2022-04-28 06:04:45,770 INFO L290 TraceCheckUtils]: 25: Hoare triple {68906#(<= 1 main_~v~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {68906#(<= 1 main_~v~0)} is VALID [2022-04-28 06:04:45,770 INFO L290 TraceCheckUtils]: 26: Hoare triple {68906#(<= 1 main_~v~0)} assume !!(#t~post7 < 50);havoc #t~post7; {68906#(<= 1 main_~v~0)} is VALID [2022-04-28 06:04:45,770 INFO L272 TraceCheckUtils]: 27: Hoare triple {68906#(<= 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)); {68853#true} is VALID [2022-04-28 06:04:45,770 INFO L290 TraceCheckUtils]: 28: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:45,770 INFO L290 TraceCheckUtils]: 29: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:45,770 INFO L290 TraceCheckUtils]: 30: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:45,771 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {68853#true} {68906#(<= 1 main_~v~0)} #96#return; {68906#(<= 1 main_~v~0)} is VALID [2022-04-28 06:04:45,771 INFO L290 TraceCheckUtils]: 32: Hoare triple {68906#(<= 1 main_~v~0)} assume !(~r~0 > 0); {68906#(<= 1 main_~v~0)} is VALID [2022-04-28 06:04:45,771 INFO L290 TraceCheckUtils]: 33: Hoare triple {68906#(<= 1 main_~v~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {68906#(<= 1 main_~v~0)} is VALID [2022-04-28 06:04:45,771 INFO L290 TraceCheckUtils]: 34: Hoare triple {68906#(<= 1 main_~v~0)} assume !!(#t~post8 < 50);havoc #t~post8; {68906#(<= 1 main_~v~0)} is VALID [2022-04-28 06:04:45,771 INFO L272 TraceCheckUtils]: 35: Hoare triple {68906#(<= 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)); {68853#true} is VALID [2022-04-28 06:04:45,772 INFO L290 TraceCheckUtils]: 36: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:45,772 INFO L290 TraceCheckUtils]: 37: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:45,772 INFO L290 TraceCheckUtils]: 38: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:45,772 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {68853#true} {68906#(<= 1 main_~v~0)} #98#return; {68906#(<= 1 main_~v~0)} is VALID [2022-04-28 06:04:45,774 INFO L290 TraceCheckUtils]: 40: Hoare triple {68906#(<= 1 main_~v~0)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-28 06:04:45,774 INFO L290 TraceCheckUtils]: 41: Hoare triple {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-28 06:04:45,774 INFO L290 TraceCheckUtils]: 42: Hoare triple {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} assume !!(#t~post8 < 50);havoc #t~post8; {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-28 06:04:45,774 INFO L272 TraceCheckUtils]: 43: Hoare triple {68979#(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)); {68853#true} is VALID [2022-04-28 06:04:45,774 INFO L290 TraceCheckUtils]: 44: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:45,775 INFO L290 TraceCheckUtils]: 45: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:45,775 INFO L290 TraceCheckUtils]: 46: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:45,775 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {68853#true} {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} #98#return; {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-28 06:04:45,775 INFO L290 TraceCheckUtils]: 48: Hoare triple {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} assume !(~r~0 < 0); {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-28 06:04:45,776 INFO L290 TraceCheckUtils]: 49: Hoare triple {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-28 06:04:45,776 INFO L290 TraceCheckUtils]: 50: Hoare triple {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} assume !!(#t~post6 < 50);havoc #t~post6; {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-28 06:04:45,776 INFO L272 TraceCheckUtils]: 51: Hoare triple {68979#(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)); {68853#true} is VALID [2022-04-28 06:04:45,776 INFO L290 TraceCheckUtils]: 52: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:45,776 INFO L290 TraceCheckUtils]: 53: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:45,776 INFO L290 TraceCheckUtils]: 54: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:45,777 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {68853#true} {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} #94#return; {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-28 06:04:45,777 INFO L290 TraceCheckUtils]: 56: Hoare triple {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} assume !!(0 != ~r~0); {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-28 06:04:45,777 INFO L290 TraceCheckUtils]: 57: Hoare triple {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-28 06:04:45,778 INFO L290 TraceCheckUtils]: 58: Hoare triple {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} assume !!(#t~post7 < 50);havoc #t~post7; {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-28 06:04:45,778 INFO L272 TraceCheckUtils]: 59: Hoare triple {68979#(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)); {68853#true} is VALID [2022-04-28 06:04:45,778 INFO L290 TraceCheckUtils]: 60: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:45,778 INFO L290 TraceCheckUtils]: 61: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:45,778 INFO L290 TraceCheckUtils]: 62: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:45,778 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {68853#true} {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} #96#return; {68979#(and (< (+ main_~r~0 2) main_~u~0) (<= 1 main_~v~0))} is VALID [2022-04-28 06:04:45,779 INFO L290 TraceCheckUtils]: 64: Hoare triple {68979#(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; {69052#(< (+ main_~r~0 3) main_~u~0)} is VALID [2022-04-28 06:04:45,779 INFO L290 TraceCheckUtils]: 65: Hoare triple {69052#(< (+ main_~r~0 3) main_~u~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69052#(< (+ main_~r~0 3) main_~u~0)} is VALID [2022-04-28 06:04:45,780 INFO L290 TraceCheckUtils]: 66: Hoare triple {69052#(< (+ main_~r~0 3) main_~u~0)} assume !!(#t~post7 < 50);havoc #t~post7; {69052#(< (+ main_~r~0 3) main_~u~0)} is VALID [2022-04-28 06:04:45,780 INFO L272 TraceCheckUtils]: 67: Hoare triple {69052#(< (+ 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)); {68853#true} is VALID [2022-04-28 06:04:45,780 INFO L290 TraceCheckUtils]: 68: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:45,780 INFO L290 TraceCheckUtils]: 69: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:45,780 INFO L290 TraceCheckUtils]: 70: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:45,780 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {68853#true} {69052#(< (+ main_~r~0 3) main_~u~0)} #96#return; {69052#(< (+ main_~r~0 3) main_~u~0)} is VALID [2022-04-28 06:04:45,781 INFO L290 TraceCheckUtils]: 72: Hoare triple {69052#(< (+ main_~r~0 3) main_~u~0)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {69077#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} is VALID [2022-04-28 06:04:45,781 INFO L290 TraceCheckUtils]: 73: Hoare triple {69077#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69077#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} is VALID [2022-04-28 06:04:45,781 INFO L290 TraceCheckUtils]: 74: Hoare triple {69077#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} assume !!(#t~post7 < 50);havoc #t~post7; {69077#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} is VALID [2022-04-28 06:04:45,781 INFO L272 TraceCheckUtils]: 75: Hoare triple {69077#(< (+ 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)); {68853#true} is VALID [2022-04-28 06:04:45,781 INFO L290 TraceCheckUtils]: 76: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:45,781 INFO L290 TraceCheckUtils]: 77: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:45,782 INFO L290 TraceCheckUtils]: 78: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:45,782 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {68853#true} {69077#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} #96#return; {69077#(< (+ main_~v~0 main_~r~0 1) main_~u~0)} is VALID [2022-04-28 06:04:45,782 INFO L290 TraceCheckUtils]: 80: Hoare triple {69077#(< (+ 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; {69102#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:04:45,783 INFO L290 TraceCheckUtils]: 81: Hoare triple {69102#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69102#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:04:45,783 INFO L290 TraceCheckUtils]: 82: Hoare triple {69102#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} assume !!(#t~post7 < 50);havoc #t~post7; {69102#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:04:45,783 INFO L272 TraceCheckUtils]: 83: Hoare triple {69102#(< 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)); {68853#true} is VALID [2022-04-28 06:04:45,783 INFO L290 TraceCheckUtils]: 84: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:45,783 INFO L290 TraceCheckUtils]: 85: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:45,783 INFO L290 TraceCheckUtils]: 86: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:45,784 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {68853#true} {69102#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} #96#return; {69102#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:04:45,784 INFO L290 TraceCheckUtils]: 88: Hoare triple {69102#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} assume !(~r~0 > 0); {69102#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:04:45,784 INFO L290 TraceCheckUtils]: 89: Hoare triple {69102#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {69102#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:04:45,784 INFO L290 TraceCheckUtils]: 90: Hoare triple {69102#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} assume !!(#t~post8 < 50);havoc #t~post8; {69102#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:04:45,784 INFO L272 TraceCheckUtils]: 91: Hoare triple {69102#(< 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)); {68853#true} is VALID [2022-04-28 06:04:45,784 INFO L290 TraceCheckUtils]: 92: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:45,785 INFO L290 TraceCheckUtils]: 93: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:45,785 INFO L290 TraceCheckUtils]: 94: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:45,785 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {68853#true} {69102#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} #98#return; {69102#(< 0 (div (+ (- 2) main_~u~0 main_~r~0) 2))} is VALID [2022-04-28 06:04:45,786 INFO L290 TraceCheckUtils]: 96: Hoare triple {69102#(< 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; {69151#(< 0 (div (+ (- 2) main_~r~0) 2))} is VALID [2022-04-28 06:04:45,786 INFO L290 TraceCheckUtils]: 97: Hoare triple {69151#(< 0 (div (+ (- 2) main_~r~0) 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {69151#(< 0 (div (+ (- 2) main_~r~0) 2))} is VALID [2022-04-28 06:04:45,786 INFO L290 TraceCheckUtils]: 98: Hoare triple {69151#(< 0 (div (+ (- 2) main_~r~0) 2))} assume !!(#t~post8 < 50);havoc #t~post8; {69151#(< 0 (div (+ (- 2) main_~r~0) 2))} is VALID [2022-04-28 06:04:45,786 INFO L272 TraceCheckUtils]: 99: Hoare triple {69151#(< 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)); {68853#true} is VALID [2022-04-28 06:04:45,787 INFO L290 TraceCheckUtils]: 100: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:45,787 INFO L290 TraceCheckUtils]: 101: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:45,787 INFO L290 TraceCheckUtils]: 102: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:45,787 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {68853#true} {69151#(< 0 (div (+ (- 2) main_~r~0) 2))} #98#return; {69151#(< 0 (div (+ (- 2) main_~r~0) 2))} is VALID [2022-04-28 06:04:45,788 INFO L290 TraceCheckUtils]: 104: Hoare triple {69151#(< 0 (div (+ (- 2) main_~r~0) 2))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {68854#false} is VALID [2022-04-28 06:04:45,788 INFO L290 TraceCheckUtils]: 105: Hoare triple {68854#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {68854#false} is VALID [2022-04-28 06:04:45,788 INFO L290 TraceCheckUtils]: 106: Hoare triple {68854#false} assume !(#t~post8 < 50);havoc #t~post8; {68854#false} is VALID [2022-04-28 06:04:45,788 INFO L290 TraceCheckUtils]: 107: Hoare triple {68854#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {68854#false} is VALID [2022-04-28 06:04:45,788 INFO L290 TraceCheckUtils]: 108: Hoare triple {68854#false} assume !(#t~post6 < 50);havoc #t~post6; {68854#false} is VALID [2022-04-28 06:04:45,788 INFO L272 TraceCheckUtils]: 109: Hoare triple {68854#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)); {68854#false} is VALID [2022-04-28 06:04:45,788 INFO L290 TraceCheckUtils]: 110: Hoare triple {68854#false} ~cond := #in~cond; {68854#false} is VALID [2022-04-28 06:04:45,788 INFO L290 TraceCheckUtils]: 111: Hoare triple {68854#false} assume 0 == ~cond; {68854#false} is VALID [2022-04-28 06:04:45,788 INFO L290 TraceCheckUtils]: 112: Hoare triple {68854#false} assume !false; {68854#false} is VALID [2022-04-28 06:04:45,789 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-28 06:04:45,789 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:04:46,234 INFO L290 TraceCheckUtils]: 112: Hoare triple {68854#false} assume !false; {68854#false} is VALID [2022-04-28 06:04:46,234 INFO L290 TraceCheckUtils]: 111: Hoare triple {68854#false} assume 0 == ~cond; {68854#false} is VALID [2022-04-28 06:04:46,234 INFO L290 TraceCheckUtils]: 110: Hoare triple {68854#false} ~cond := #in~cond; {68854#false} is VALID [2022-04-28 06:04:46,234 INFO L272 TraceCheckUtils]: 109: Hoare triple {68854#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)); {68854#false} is VALID [2022-04-28 06:04:46,234 INFO L290 TraceCheckUtils]: 108: Hoare triple {68854#false} assume !(#t~post6 < 50);havoc #t~post6; {68854#false} is VALID [2022-04-28 06:04:46,235 INFO L290 TraceCheckUtils]: 107: Hoare triple {68854#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {68854#false} is VALID [2022-04-28 06:04:46,235 INFO L290 TraceCheckUtils]: 106: Hoare triple {68854#false} assume !(#t~post8 < 50);havoc #t~post8; {68854#false} is VALID [2022-04-28 06:04:46,235 INFO L290 TraceCheckUtils]: 105: Hoare triple {68854#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {68854#false} is VALID [2022-04-28 06:04:46,235 INFO L290 TraceCheckUtils]: 104: Hoare triple {69224#(not (< main_~r~0 0))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {68854#false} is VALID [2022-04-28 06:04:46,235 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {68853#true} {69224#(not (< main_~r~0 0))} #98#return; {69224#(not (< main_~r~0 0))} is VALID [2022-04-28 06:04:46,236 INFO L290 TraceCheckUtils]: 102: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:46,236 INFO L290 TraceCheckUtils]: 101: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:46,236 INFO L290 TraceCheckUtils]: 100: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:46,236 INFO L272 TraceCheckUtils]: 99: Hoare triple {69224#(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)); {68853#true} is VALID [2022-04-28 06:04:46,236 INFO L290 TraceCheckUtils]: 98: Hoare triple {69224#(not (< main_~r~0 0))} assume !!(#t~post8 < 50);havoc #t~post8; {69224#(not (< main_~r~0 0))} is VALID [2022-04-28 06:04:46,236 INFO L290 TraceCheckUtils]: 97: Hoare triple {69224#(not (< main_~r~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {69224#(not (< main_~r~0 0))} is VALID [2022-04-28 06:04:46,237 INFO L290 TraceCheckUtils]: 96: Hoare triple {69249#(<= 0 (+ main_~u~0 main_~r~0))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {69224#(not (< main_~r~0 0))} is VALID [2022-04-28 06:04:46,237 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {68853#true} {69249#(<= 0 (+ main_~u~0 main_~r~0))} #98#return; {69249#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:04:46,237 INFO L290 TraceCheckUtils]: 94: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:46,237 INFO L290 TraceCheckUtils]: 93: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:46,238 INFO L290 TraceCheckUtils]: 92: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:46,238 INFO L272 TraceCheckUtils]: 91: Hoare triple {69249#(<= 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)); {68853#true} is VALID [2022-04-28 06:04:46,238 INFO L290 TraceCheckUtils]: 90: Hoare triple {69249#(<= 0 (+ main_~u~0 main_~r~0))} assume !!(#t~post8 < 50);havoc #t~post8; {69249#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:04:46,238 INFO L290 TraceCheckUtils]: 89: Hoare triple {69249#(<= 0 (+ main_~u~0 main_~r~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {69249#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:04:46,238 INFO L290 TraceCheckUtils]: 88: Hoare triple {69249#(<= 0 (+ main_~u~0 main_~r~0))} assume !(~r~0 > 0); {69249#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:04:46,239 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {68853#true} {69249#(<= 0 (+ main_~u~0 main_~r~0))} #96#return; {69249#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:04:46,239 INFO L290 TraceCheckUtils]: 86: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:46,239 INFO L290 TraceCheckUtils]: 85: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:46,239 INFO L290 TraceCheckUtils]: 84: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:46,239 INFO L272 TraceCheckUtils]: 83: Hoare triple {69249#(<= 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)); {68853#true} is VALID [2022-04-28 06:04:46,239 INFO L290 TraceCheckUtils]: 82: Hoare triple {69249#(<= 0 (+ main_~u~0 main_~r~0))} assume !!(#t~post7 < 50);havoc #t~post7; {69249#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:04:46,240 INFO L290 TraceCheckUtils]: 81: Hoare triple {69249#(<= 0 (+ main_~u~0 main_~r~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69249#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:04:46,240 INFO L290 TraceCheckUtils]: 80: Hoare triple {69298#(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; {69249#(<= 0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:04:46,241 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {68853#true} {69298#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} #96#return; {69298#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-28 06:04:46,241 INFO L290 TraceCheckUtils]: 78: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:46,241 INFO L290 TraceCheckUtils]: 77: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:46,241 INFO L290 TraceCheckUtils]: 76: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:46,241 INFO L272 TraceCheckUtils]: 75: Hoare triple {69298#(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)); {68853#true} is VALID [2022-04-28 06:04:46,241 INFO L290 TraceCheckUtils]: 74: Hoare triple {69298#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {69298#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-28 06:04:46,242 INFO L290 TraceCheckUtils]: 73: Hoare triple {69298#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69298#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-28 06:04:46,243 INFO L290 TraceCheckUtils]: 72: Hoare triple {69323#(<= main_~r~0 main_~u~0)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {69298#(or (<= main_~v~0 (+ main_~u~0 main_~r~0)) (not (< 0 main_~r~0)))} is VALID [2022-04-28 06:04:46,244 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {68853#true} {69323#(<= main_~r~0 main_~u~0)} #96#return; {69323#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:04:46,244 INFO L290 TraceCheckUtils]: 70: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:46,244 INFO L290 TraceCheckUtils]: 69: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:46,244 INFO L290 TraceCheckUtils]: 68: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:46,244 INFO L272 TraceCheckUtils]: 67: Hoare triple {69323#(<= 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)); {68853#true} is VALID [2022-04-28 06:04:46,244 INFO L290 TraceCheckUtils]: 66: Hoare triple {69323#(<= main_~r~0 main_~u~0)} assume !!(#t~post7 < 50);havoc #t~post7; {69323#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:04:46,245 INFO L290 TraceCheckUtils]: 65: Hoare triple {69323#(<= main_~r~0 main_~u~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69323#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:04:46,245 INFO L290 TraceCheckUtils]: 64: Hoare triple {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {69323#(<= main_~r~0 main_~u~0)} is VALID [2022-04-28 06:04:46,245 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {68853#true} {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} #96#return; {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-28 06:04:46,246 INFO L290 TraceCheckUtils]: 62: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:46,246 INFO L290 TraceCheckUtils]: 61: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:46,246 INFO L290 TraceCheckUtils]: 60: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:46,246 INFO L272 TraceCheckUtils]: 59: Hoare triple {69348#(<= 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)); {68853#true} is VALID [2022-04-28 06:04:46,246 INFO L290 TraceCheckUtils]: 58: Hoare triple {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} assume !!(#t~post7 < 50);havoc #t~post7; {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-28 06:04:46,246 INFO L290 TraceCheckUtils]: 57: Hoare triple {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-28 06:04:46,247 INFO L290 TraceCheckUtils]: 56: Hoare triple {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} assume !!(0 != ~r~0); {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-28 06:04:46,247 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {68853#true} {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} #94#return; {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-28 06:04:46,247 INFO L290 TraceCheckUtils]: 54: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:46,247 INFO L290 TraceCheckUtils]: 53: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:46,247 INFO L290 TraceCheckUtils]: 52: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:46,247 INFO L272 TraceCheckUtils]: 51: Hoare triple {69348#(<= 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)); {68853#true} is VALID [2022-04-28 06:04:46,248 INFO L290 TraceCheckUtils]: 50: Hoare triple {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} assume !!(#t~post6 < 50);havoc #t~post6; {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-28 06:04:46,248 INFO L290 TraceCheckUtils]: 49: Hoare triple {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-28 06:04:46,248 INFO L290 TraceCheckUtils]: 48: Hoare triple {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} assume !(~r~0 < 0); {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-28 06:04:46,249 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {68853#true} {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} #98#return; {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-28 06:04:46,249 INFO L290 TraceCheckUtils]: 46: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:46,249 INFO L290 TraceCheckUtils]: 45: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:46,249 INFO L290 TraceCheckUtils]: 44: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:46,249 INFO L272 TraceCheckUtils]: 43: Hoare triple {69348#(<= 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)); {68853#true} is VALID [2022-04-28 06:04:46,249 INFO L290 TraceCheckUtils]: 42: Hoare triple {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} assume !!(#t~post8 < 50);havoc #t~post8; {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-28 06:04:46,250 INFO L290 TraceCheckUtils]: 41: Hoare triple {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-28 06:04:46,250 INFO L290 TraceCheckUtils]: 40: Hoare triple {69421#(<= 0 (+ main_~v~0 3))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {69348#(<= main_~r~0 (+ main_~v~0 main_~u~0))} is VALID [2022-04-28 06:04:46,251 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {68853#true} {69421#(<= 0 (+ main_~v~0 3))} #98#return; {69421#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-28 06:04:46,251 INFO L290 TraceCheckUtils]: 38: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:46,251 INFO L290 TraceCheckUtils]: 37: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:46,251 INFO L290 TraceCheckUtils]: 36: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:46,251 INFO L272 TraceCheckUtils]: 35: Hoare triple {69421#(<= 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)); {68853#true} is VALID [2022-04-28 06:04:46,251 INFO L290 TraceCheckUtils]: 34: Hoare triple {69421#(<= 0 (+ main_~v~0 3))} assume !!(#t~post8 < 50);havoc #t~post8; {69421#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-28 06:04:46,252 INFO L290 TraceCheckUtils]: 33: Hoare triple {69421#(<= 0 (+ main_~v~0 3))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {69421#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-28 06:04:46,252 INFO L290 TraceCheckUtils]: 32: Hoare triple {69421#(<= 0 (+ main_~v~0 3))} assume !(~r~0 > 0); {69421#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-28 06:04:46,252 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {68853#true} {69421#(<= 0 (+ main_~v~0 3))} #96#return; {69421#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-28 06:04:46,252 INFO L290 TraceCheckUtils]: 30: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:46,253 INFO L290 TraceCheckUtils]: 29: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:46,253 INFO L290 TraceCheckUtils]: 28: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:46,253 INFO L272 TraceCheckUtils]: 27: Hoare triple {69421#(<= 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)); {68853#true} is VALID [2022-04-28 06:04:46,253 INFO L290 TraceCheckUtils]: 26: Hoare triple {69421#(<= 0 (+ main_~v~0 3))} assume !!(#t~post7 < 50);havoc #t~post7; {69421#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-28 06:04:46,253 INFO L290 TraceCheckUtils]: 25: Hoare triple {69421#(<= 0 (+ main_~v~0 3))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {69421#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-28 06:04:46,254 INFO L290 TraceCheckUtils]: 24: Hoare triple {69421#(<= 0 (+ main_~v~0 3))} assume !!(0 != ~r~0); {69421#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-28 06:04:46,254 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {68853#true} {69421#(<= 0 (+ main_~v~0 3))} #94#return; {69421#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-28 06:04:46,254 INFO L290 TraceCheckUtils]: 22: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:46,254 INFO L290 TraceCheckUtils]: 21: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:46,254 INFO L290 TraceCheckUtils]: 20: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:46,254 INFO L272 TraceCheckUtils]: 19: Hoare triple {69421#(<= 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)); {68853#true} is VALID [2022-04-28 06:04:46,255 INFO L290 TraceCheckUtils]: 18: Hoare triple {69421#(<= 0 (+ main_~v~0 3))} assume !!(#t~post6 < 50);havoc #t~post6; {69421#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-28 06:04:46,255 INFO L290 TraceCheckUtils]: 17: Hoare triple {69421#(<= 0 (+ main_~v~0 3))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {69421#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-28 06:04:46,255 INFO L290 TraceCheckUtils]: 16: Hoare triple {68853#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {69421#(<= 0 (+ main_~v~0 3))} is VALID [2022-04-28 06:04:46,255 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {68853#true} {68853#true} #92#return; {68853#true} is VALID [2022-04-28 06:04:46,255 INFO L290 TraceCheckUtils]: 14: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:46,255 INFO L290 TraceCheckUtils]: 13: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:46,256 INFO L290 TraceCheckUtils]: 12: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:46,256 INFO L272 TraceCheckUtils]: 11: Hoare triple {68853#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)); {68853#true} is VALID [2022-04-28 06:04:46,256 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {68853#true} {68853#true} #90#return; {68853#true} is VALID [2022-04-28 06:04:46,256 INFO L290 TraceCheckUtils]: 9: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:46,256 INFO L290 TraceCheckUtils]: 8: Hoare triple {68853#true} assume !(0 == ~cond); {68853#true} is VALID [2022-04-28 06:04:46,256 INFO L290 TraceCheckUtils]: 7: Hoare triple {68853#true} ~cond := #in~cond; {68853#true} is VALID [2022-04-28 06:04:46,256 INFO L272 TraceCheckUtils]: 6: Hoare triple {68853#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {68853#true} is VALID [2022-04-28 06:04:46,256 INFO L290 TraceCheckUtils]: 5: Hoare triple {68853#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; {68853#true} is VALID [2022-04-28 06:04:46,256 INFO L272 TraceCheckUtils]: 4: Hoare triple {68853#true} call #t~ret9 := main(); {68853#true} is VALID [2022-04-28 06:04:46,256 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {68853#true} {68853#true} #102#return; {68853#true} is VALID [2022-04-28 06:04:46,256 INFO L290 TraceCheckUtils]: 2: Hoare triple {68853#true} assume true; {68853#true} is VALID [2022-04-28 06:04:46,256 INFO L290 TraceCheckUtils]: 1: Hoare triple {68853#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {68853#true} is VALID [2022-04-28 06:04:46,256 INFO L272 TraceCheckUtils]: 0: Hoare triple {68853#true} call ULTIMATE.init(); {68853#true} is VALID [2022-04-28 06:04:46,257 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-28 06:04:46,257 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:04:46,257 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2121788896] [2022-04-28 06:04:46,257 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:04:46,257 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1606191481] [2022-04-28 06:04:46,257 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1606191481] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:04:46,257 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:04:46,257 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 06:04:46,257 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:04:46,257 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1511655895] [2022-04-28 06:04:46,257 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1511655895] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:04:46,257 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:04:46,258 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 06:04:46,258 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [841695304] [2022-04-28 06:04:46,258 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:04:46,258 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-28 06:04:46,258 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:04:46,258 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-28 06:04:46,331 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:04:46,331 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 06:04:46,331 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:04:46,332 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 06:04:46,332 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=148, Unknown=0, NotChecked=0, Total=182 [2022-04-28 06:04:46,332 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-28 06:04:48,955 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:04:48,955 INFO L93 Difference]: Finished difference Result 894 states and 1248 transitions. [2022-04-28 06:04:48,955 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 06:04:48,955 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-28 06:04:48,956 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:04:48,956 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-28 06:04:48,957 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 190 transitions. [2022-04-28 06:04:48,957 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-28 06:04:48,958 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 190 transitions. [2022-04-28 06:04:48,958 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 190 transitions. [2022-04-28 06:04:49,076 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-28 06:04:49,098 INFO L225 Difference]: With dead ends: 894 [2022-04-28 06:04:49,098 INFO L226 Difference]: Without dead ends: 743 [2022-04-28 06:04:49,098 INFO L412 NwaCegarLoop]: 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-28 06:04:49,099 INFO L413 NwaCegarLoop]: 113 mSDtfsCounter, 72 mSDsluCounter, 237 mSDsCounter, 0 mSdLazyCounter, 255 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 350 SdHoareTripleChecker+Invalid, 278 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 255 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 06:04:49,099 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [72 Valid, 350 Invalid, 278 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 255 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 06:04:49,099 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 743 states. [2022-04-28 06:04:50,404 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 743 to 592. [2022-04-28 06:04:50,404 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:04:50,405 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-28 06:04:50,405 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-28 06:04:50,406 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-28 06:04:50,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:04:50,425 INFO L93 Difference]: Finished difference Result 743 states and 1013 transitions. [2022-04-28 06:04:50,425 INFO L276 IsEmpty]: Start isEmpty. Operand 743 states and 1013 transitions. [2022-04-28 06:04:50,426 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:04:50,426 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:04:50,427 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-28 06:04:50,427 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-28 06:04:50,446 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:04:50,446 INFO L93 Difference]: Finished difference Result 743 states and 1013 transitions. [2022-04-28 06:04:50,446 INFO L276 IsEmpty]: Start isEmpty. Operand 743 states and 1013 transitions. [2022-04-28 06:04:50,447 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:04:50,447 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:04:50,447 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:04:50,447 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:04:50,448 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-28 06:04:50,464 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 592 states to 592 states and 792 transitions. [2022-04-28 06:04:50,465 INFO L78 Accepts]: Start accepts. Automaton has 592 states and 792 transitions. Word has length 113 [2022-04-28 06:04:50,465 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:04:50,465 INFO L495 AbstractCegarLoop]: Abstraction has 592 states and 792 transitions. [2022-04-28 06:04:50,465 INFO L496 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-28 06:04:50,465 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 592 states and 792 transitions. [2022-04-28 06:05:06,717 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 792 edges. 790 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 06:05:06,718 INFO L276 IsEmpty]: Start isEmpty. Operand 592 states and 792 transitions. [2022-04-28 06:05:06,718 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-28 06:05:06,718 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:05:06,719 INFO L195 NwaCegarLoop]: 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-28 06:05:06,737 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Forceful destruction successful, exit code 0 [2022-04-28 06:05:06,919 WARN L477 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-28 06:05:06,919 INFO L420 AbstractCegarLoop]: === Iteration 37 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:05:06,919 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:05:06,919 INFO L85 PathProgramCache]: Analyzing trace with hash -144297019, now seen corresponding path program 15 times [2022-04-28 06:05:06,919 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:05:06,920 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1937167268] [2022-04-28 06:05:06,920 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:05:06,920 INFO L85 PathProgramCache]: Analyzing trace with hash -144297019, now seen corresponding path program 16 times [2022-04-28 06:05:06,920 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:05:06,920 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2075883503] [2022-04-28 06:05:06,920 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:05:06,920 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:05:06,932 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:05:06,933 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1933627658] [2022-04-28 06:05:06,933 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 06:05:06,933 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:05:06,933 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:05:06,934 INFO L229 MonitoredProcess]: Starting monitored process 38 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:05:06,935 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Waiting until timeout for monitored process [2022-04-28 06:05:07,324 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 06:05:07,324 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:05:07,325 INFO L263 TraceCheckSpWp]: Trace formula consists of 287 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-28 06:05:07,346 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:05:07,352 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:05:07,970 INFO L272 TraceCheckUtils]: 0: Hoare triple {74012#true} call ULTIMATE.init(); {74012#true} is VALID [2022-04-28 06:05:07,971 INFO L290 TraceCheckUtils]: 1: Hoare triple {74012#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,971 INFO L290 TraceCheckUtils]: 2: Hoare triple {74020#(<= ~counter~0 0)} assume true; {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,972 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {74020#(<= ~counter~0 0)} {74012#true} #102#return; {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,972 INFO L272 TraceCheckUtils]: 4: Hoare triple {74020#(<= ~counter~0 0)} call #t~ret9 := main(); {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,972 INFO L290 TraceCheckUtils]: 5: Hoare triple {74020#(<= ~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; {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,973 INFO L272 TraceCheckUtils]: 6: Hoare triple {74020#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,973 INFO L290 TraceCheckUtils]: 7: Hoare triple {74020#(<= ~counter~0 0)} ~cond := #in~cond; {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,973 INFO L290 TraceCheckUtils]: 8: Hoare triple {74020#(<= ~counter~0 0)} assume !(0 == ~cond); {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,973 INFO L290 TraceCheckUtils]: 9: Hoare triple {74020#(<= ~counter~0 0)} assume true; {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,974 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {74020#(<= ~counter~0 0)} {74020#(<= ~counter~0 0)} #90#return; {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,974 INFO L272 TraceCheckUtils]: 11: Hoare triple {74020#(<= ~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)); {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,974 INFO L290 TraceCheckUtils]: 12: Hoare triple {74020#(<= ~counter~0 0)} ~cond := #in~cond; {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,975 INFO L290 TraceCheckUtils]: 13: Hoare triple {74020#(<= ~counter~0 0)} assume !(0 == ~cond); {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,975 INFO L290 TraceCheckUtils]: 14: Hoare triple {74020#(<= ~counter~0 0)} assume true; {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,975 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {74020#(<= ~counter~0 0)} {74020#(<= ~counter~0 0)} #92#return; {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,976 INFO L290 TraceCheckUtils]: 16: Hoare triple {74020#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {74020#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:07,977 INFO L290 TraceCheckUtils]: 17: Hoare triple {74020#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {74069#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:07,978 INFO L290 TraceCheckUtils]: 18: Hoare triple {74069#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {74069#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:07,978 INFO L272 TraceCheckUtils]: 19: Hoare triple {74069#(<= ~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)); {74069#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:07,978 INFO L290 TraceCheckUtils]: 20: Hoare triple {74069#(<= ~counter~0 1)} ~cond := #in~cond; {74069#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:07,979 INFO L290 TraceCheckUtils]: 21: Hoare triple {74069#(<= ~counter~0 1)} assume !(0 == ~cond); {74069#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:07,979 INFO L290 TraceCheckUtils]: 22: Hoare triple {74069#(<= ~counter~0 1)} assume true; {74069#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:07,980 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {74069#(<= ~counter~0 1)} {74069#(<= ~counter~0 1)} #94#return; {74069#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:07,980 INFO L290 TraceCheckUtils]: 24: Hoare triple {74069#(<= ~counter~0 1)} assume !!(0 != ~r~0); {74069#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:07,981 INFO L290 TraceCheckUtils]: 25: Hoare triple {74069#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74094#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:07,981 INFO L290 TraceCheckUtils]: 26: Hoare triple {74094#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {74094#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:07,982 INFO L272 TraceCheckUtils]: 27: Hoare triple {74094#(<= ~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)); {74094#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:07,982 INFO L290 TraceCheckUtils]: 28: Hoare triple {74094#(<= ~counter~0 2)} ~cond := #in~cond; {74094#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:07,982 INFO L290 TraceCheckUtils]: 29: Hoare triple {74094#(<= ~counter~0 2)} assume !(0 == ~cond); {74094#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:07,982 INFO L290 TraceCheckUtils]: 30: Hoare triple {74094#(<= ~counter~0 2)} assume true; {74094#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:07,983 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {74094#(<= ~counter~0 2)} {74094#(<= ~counter~0 2)} #96#return; {74094#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:07,983 INFO L290 TraceCheckUtils]: 32: Hoare triple {74094#(<= ~counter~0 2)} assume !(~r~0 > 0); {74094#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:07,984 INFO L290 TraceCheckUtils]: 33: Hoare triple {74094#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74119#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:07,985 INFO L290 TraceCheckUtils]: 34: Hoare triple {74119#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {74119#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:07,985 INFO L272 TraceCheckUtils]: 35: Hoare triple {74119#(<= ~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)); {74119#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:07,986 INFO L290 TraceCheckUtils]: 36: Hoare triple {74119#(<= ~counter~0 3)} ~cond := #in~cond; {74119#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:07,986 INFO L290 TraceCheckUtils]: 37: Hoare triple {74119#(<= ~counter~0 3)} assume !(0 == ~cond); {74119#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:07,986 INFO L290 TraceCheckUtils]: 38: Hoare triple {74119#(<= ~counter~0 3)} assume true; {74119#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:07,987 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {74119#(<= ~counter~0 3)} {74119#(<= ~counter~0 3)} #98#return; {74119#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:07,987 INFO L290 TraceCheckUtils]: 40: Hoare triple {74119#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {74119#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:07,988 INFO L290 TraceCheckUtils]: 41: Hoare triple {74119#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74144#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:07,988 INFO L290 TraceCheckUtils]: 42: Hoare triple {74144#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {74144#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:07,989 INFO L272 TraceCheckUtils]: 43: Hoare triple {74144#(<= ~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)); {74144#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:07,989 INFO L290 TraceCheckUtils]: 44: Hoare triple {74144#(<= ~counter~0 4)} ~cond := #in~cond; {74144#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:07,989 INFO L290 TraceCheckUtils]: 45: Hoare triple {74144#(<= ~counter~0 4)} assume !(0 == ~cond); {74144#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:07,990 INFO L290 TraceCheckUtils]: 46: Hoare triple {74144#(<= ~counter~0 4)} assume true; {74144#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:07,990 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {74144#(<= ~counter~0 4)} {74144#(<= ~counter~0 4)} #98#return; {74144#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:07,990 INFO L290 TraceCheckUtils]: 48: Hoare triple {74144#(<= ~counter~0 4)} assume !(~r~0 < 0); {74144#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:07,991 INFO L290 TraceCheckUtils]: 49: Hoare triple {74144#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {74169#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:07,992 INFO L290 TraceCheckUtils]: 50: Hoare triple {74169#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {74169#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:07,992 INFO L272 TraceCheckUtils]: 51: Hoare triple {74169#(<= ~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)); {74169#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:07,992 INFO L290 TraceCheckUtils]: 52: Hoare triple {74169#(<= ~counter~0 5)} ~cond := #in~cond; {74169#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:07,993 INFO L290 TraceCheckUtils]: 53: Hoare triple {74169#(<= ~counter~0 5)} assume !(0 == ~cond); {74169#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:07,993 INFO L290 TraceCheckUtils]: 54: Hoare triple {74169#(<= ~counter~0 5)} assume true; {74169#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:07,993 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {74169#(<= ~counter~0 5)} {74169#(<= ~counter~0 5)} #94#return; {74169#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:07,994 INFO L290 TraceCheckUtils]: 56: Hoare triple {74169#(<= ~counter~0 5)} assume !!(0 != ~r~0); {74169#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:07,994 INFO L290 TraceCheckUtils]: 57: Hoare triple {74169#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74194#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:07,995 INFO L290 TraceCheckUtils]: 58: Hoare triple {74194#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {74194#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:07,995 INFO L272 TraceCheckUtils]: 59: Hoare triple {74194#(<= ~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)); {74194#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:07,996 INFO L290 TraceCheckUtils]: 60: Hoare triple {74194#(<= ~counter~0 6)} ~cond := #in~cond; {74194#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:07,996 INFO L290 TraceCheckUtils]: 61: Hoare triple {74194#(<= ~counter~0 6)} assume !(0 == ~cond); {74194#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:07,996 INFO L290 TraceCheckUtils]: 62: Hoare triple {74194#(<= ~counter~0 6)} assume true; {74194#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:07,997 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {74194#(<= ~counter~0 6)} {74194#(<= ~counter~0 6)} #96#return; {74194#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:07,997 INFO L290 TraceCheckUtils]: 64: Hoare triple {74194#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74194#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:07,998 INFO L290 TraceCheckUtils]: 65: Hoare triple {74194#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74219#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:07,998 INFO L290 TraceCheckUtils]: 66: Hoare triple {74219#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {74219#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:07,999 INFO L272 TraceCheckUtils]: 67: Hoare triple {74219#(<= ~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)); {74219#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:07,999 INFO L290 TraceCheckUtils]: 68: Hoare triple {74219#(<= ~counter~0 7)} ~cond := #in~cond; {74219#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:07,999 INFO L290 TraceCheckUtils]: 69: Hoare triple {74219#(<= ~counter~0 7)} assume !(0 == ~cond); {74219#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:07,999 INFO L290 TraceCheckUtils]: 70: Hoare triple {74219#(<= ~counter~0 7)} assume true; {74219#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:08,000 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {74219#(<= ~counter~0 7)} {74219#(<= ~counter~0 7)} #96#return; {74219#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:08,000 INFO L290 TraceCheckUtils]: 72: Hoare triple {74219#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74219#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:08,001 INFO L290 TraceCheckUtils]: 73: Hoare triple {74219#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74244#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:08,002 INFO L290 TraceCheckUtils]: 74: Hoare triple {74244#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {74244#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:08,002 INFO L272 TraceCheckUtils]: 75: Hoare triple {74244#(<= ~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)); {74244#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:08,003 INFO L290 TraceCheckUtils]: 76: Hoare triple {74244#(<= ~counter~0 8)} ~cond := #in~cond; {74244#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:08,003 INFO L290 TraceCheckUtils]: 77: Hoare triple {74244#(<= ~counter~0 8)} assume !(0 == ~cond); {74244#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:08,003 INFO L290 TraceCheckUtils]: 78: Hoare triple {74244#(<= ~counter~0 8)} assume true; {74244#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:08,004 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {74244#(<= ~counter~0 8)} {74244#(<= ~counter~0 8)} #96#return; {74244#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:08,004 INFO L290 TraceCheckUtils]: 80: Hoare triple {74244#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74244#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:08,005 INFO L290 TraceCheckUtils]: 81: Hoare triple {74244#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74269#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:08,006 INFO L290 TraceCheckUtils]: 82: Hoare triple {74269#(<= ~counter~0 9)} assume !!(#t~post7 < 50);havoc #t~post7; {74269#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:08,006 INFO L272 TraceCheckUtils]: 83: Hoare triple {74269#(<= ~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)); {74269#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:08,007 INFO L290 TraceCheckUtils]: 84: Hoare triple {74269#(<= ~counter~0 9)} ~cond := #in~cond; {74269#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:08,007 INFO L290 TraceCheckUtils]: 85: Hoare triple {74269#(<= ~counter~0 9)} assume !(0 == ~cond); {74269#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:08,007 INFO L290 TraceCheckUtils]: 86: Hoare triple {74269#(<= ~counter~0 9)} assume true; {74269#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:08,008 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {74269#(<= ~counter~0 9)} {74269#(<= ~counter~0 9)} #96#return; {74269#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:08,008 INFO L290 TraceCheckUtils]: 88: Hoare triple {74269#(<= ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74269#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:08,009 INFO L290 TraceCheckUtils]: 89: Hoare triple {74269#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74294#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:08,009 INFO L290 TraceCheckUtils]: 90: Hoare triple {74294#(<= ~counter~0 10)} assume !!(#t~post7 < 50);havoc #t~post7; {74294#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:08,010 INFO L272 TraceCheckUtils]: 91: Hoare triple {74294#(<= ~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)); {74294#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:08,010 INFO L290 TraceCheckUtils]: 92: Hoare triple {74294#(<= ~counter~0 10)} ~cond := #in~cond; {74294#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:08,010 INFO L290 TraceCheckUtils]: 93: Hoare triple {74294#(<= ~counter~0 10)} assume !(0 == ~cond); {74294#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:08,011 INFO L290 TraceCheckUtils]: 94: Hoare triple {74294#(<= ~counter~0 10)} assume true; {74294#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:08,011 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {74294#(<= ~counter~0 10)} {74294#(<= ~counter~0 10)} #96#return; {74294#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:08,011 INFO L290 TraceCheckUtils]: 96: Hoare triple {74294#(<= ~counter~0 10)} assume !(~r~0 > 0); {74294#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:08,012 INFO L290 TraceCheckUtils]: 97: Hoare triple {74294#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74319#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:08,013 INFO L290 TraceCheckUtils]: 98: Hoare triple {74319#(<= ~counter~0 11)} assume !!(#t~post8 < 50);havoc #t~post8; {74319#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:08,013 INFO L272 TraceCheckUtils]: 99: Hoare triple {74319#(<= ~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)); {74319#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:08,013 INFO L290 TraceCheckUtils]: 100: Hoare triple {74319#(<= ~counter~0 11)} ~cond := #in~cond; {74319#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:08,014 INFO L290 TraceCheckUtils]: 101: Hoare triple {74319#(<= ~counter~0 11)} assume !(0 == ~cond); {74319#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:08,014 INFO L290 TraceCheckUtils]: 102: Hoare triple {74319#(<= ~counter~0 11)} assume true; {74319#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:08,015 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {74319#(<= ~counter~0 11)} {74319#(<= ~counter~0 11)} #98#return; {74319#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:08,015 INFO L290 TraceCheckUtils]: 104: Hoare triple {74319#(<= ~counter~0 11)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {74319#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:08,015 INFO L290 TraceCheckUtils]: 105: Hoare triple {74319#(<= ~counter~0 11)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74344#(<= |main_#t~post8| 11)} is VALID [2022-04-28 06:05:08,015 INFO L290 TraceCheckUtils]: 106: Hoare triple {74344#(<= |main_#t~post8| 11)} assume !(#t~post8 < 50);havoc #t~post8; {74013#false} is VALID [2022-04-28 06:05:08,016 INFO L290 TraceCheckUtils]: 107: Hoare triple {74013#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {74013#false} is VALID [2022-04-28 06:05:08,016 INFO L290 TraceCheckUtils]: 108: Hoare triple {74013#false} assume !(#t~post6 < 50);havoc #t~post6; {74013#false} is VALID [2022-04-28 06:05:08,016 INFO L272 TraceCheckUtils]: 109: Hoare triple {74013#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)); {74013#false} is VALID [2022-04-28 06:05:08,016 INFO L290 TraceCheckUtils]: 110: Hoare triple {74013#false} ~cond := #in~cond; {74013#false} is VALID [2022-04-28 06:05:08,016 INFO L290 TraceCheckUtils]: 111: Hoare triple {74013#false} assume 0 == ~cond; {74013#false} is VALID [2022-04-28 06:05:08,016 INFO L290 TraceCheckUtils]: 112: Hoare triple {74013#false} assume !false; {74013#false} is VALID [2022-04-28 06:05:08,016 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-28 06:05:08,016 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:05:08,694 INFO L290 TraceCheckUtils]: 112: Hoare triple {74013#false} assume !false; {74013#false} is VALID [2022-04-28 06:05:08,694 INFO L290 TraceCheckUtils]: 111: Hoare triple {74013#false} assume 0 == ~cond; {74013#false} is VALID [2022-04-28 06:05:08,694 INFO L290 TraceCheckUtils]: 110: Hoare triple {74013#false} ~cond := #in~cond; {74013#false} is VALID [2022-04-28 06:05:08,694 INFO L272 TraceCheckUtils]: 109: Hoare triple {74013#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)); {74013#false} is VALID [2022-04-28 06:05:08,694 INFO L290 TraceCheckUtils]: 108: Hoare triple {74013#false} assume !(#t~post6 < 50);havoc #t~post6; {74013#false} is VALID [2022-04-28 06:05:08,694 INFO L290 TraceCheckUtils]: 107: Hoare triple {74013#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {74013#false} is VALID [2022-04-28 06:05:08,694 INFO L290 TraceCheckUtils]: 106: Hoare triple {74384#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {74013#false} is VALID [2022-04-28 06:05:08,695 INFO L290 TraceCheckUtils]: 105: Hoare triple {74388#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74384#(< |main_#t~post8| 50)} is VALID [2022-04-28 06:05:08,695 INFO L290 TraceCheckUtils]: 104: Hoare triple {74388#(< ~counter~0 50)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {74388#(< ~counter~0 50)} is VALID [2022-04-28 06:05:08,696 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {74012#true} {74388#(< ~counter~0 50)} #98#return; {74388#(< ~counter~0 50)} is VALID [2022-04-28 06:05:08,696 INFO L290 TraceCheckUtils]: 102: Hoare triple {74012#true} assume true; {74012#true} is VALID [2022-04-28 06:05:08,696 INFO L290 TraceCheckUtils]: 101: Hoare triple {74012#true} assume !(0 == ~cond); {74012#true} is VALID [2022-04-28 06:05:08,696 INFO L290 TraceCheckUtils]: 100: Hoare triple {74012#true} ~cond := #in~cond; {74012#true} is VALID [2022-04-28 06:05:08,696 INFO L272 TraceCheckUtils]: 99: Hoare triple {74388#(< ~counter~0 50)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {74012#true} is VALID [2022-04-28 06:05:08,696 INFO L290 TraceCheckUtils]: 98: Hoare triple {74388#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {74388#(< ~counter~0 50)} is VALID [2022-04-28 06:05:08,698 INFO L290 TraceCheckUtils]: 97: Hoare triple {74413#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74388#(< ~counter~0 50)} is VALID [2022-04-28 06:05:08,698 INFO L290 TraceCheckUtils]: 96: Hoare triple {74413#(< ~counter~0 49)} assume !(~r~0 > 0); {74413#(< ~counter~0 49)} is VALID [2022-04-28 06:05:08,699 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {74012#true} {74413#(< ~counter~0 49)} #96#return; {74413#(< ~counter~0 49)} is VALID [2022-04-28 06:05:08,699 INFO L290 TraceCheckUtils]: 94: Hoare triple {74012#true} assume true; {74012#true} is VALID [2022-04-28 06:05:08,699 INFO L290 TraceCheckUtils]: 93: Hoare triple {74012#true} assume !(0 == ~cond); {74012#true} is VALID [2022-04-28 06:05:08,699 INFO L290 TraceCheckUtils]: 92: Hoare triple {74012#true} ~cond := #in~cond; {74012#true} is VALID [2022-04-28 06:05:08,699 INFO L272 TraceCheckUtils]: 91: Hoare triple {74413#(< ~counter~0 49)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {74012#true} is VALID [2022-04-28 06:05:08,699 INFO L290 TraceCheckUtils]: 90: Hoare triple {74413#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {74413#(< ~counter~0 49)} is VALID [2022-04-28 06:05:08,700 INFO L290 TraceCheckUtils]: 89: Hoare triple {74438#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74413#(< ~counter~0 49)} is VALID [2022-04-28 06:05:08,701 INFO L290 TraceCheckUtils]: 88: Hoare triple {74438#(< ~counter~0 48)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74438#(< ~counter~0 48)} is VALID [2022-04-28 06:05:08,701 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {74012#true} {74438#(< ~counter~0 48)} #96#return; {74438#(< ~counter~0 48)} is VALID [2022-04-28 06:05:08,701 INFO L290 TraceCheckUtils]: 86: Hoare triple {74012#true} assume true; {74012#true} is VALID [2022-04-28 06:05:08,701 INFO L290 TraceCheckUtils]: 85: Hoare triple {74012#true} assume !(0 == ~cond); {74012#true} is VALID [2022-04-28 06:05:08,701 INFO L290 TraceCheckUtils]: 84: Hoare triple {74012#true} ~cond := #in~cond; {74012#true} is VALID [2022-04-28 06:05:08,701 INFO L272 TraceCheckUtils]: 83: Hoare triple {74438#(< ~counter~0 48)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {74012#true} is VALID [2022-04-28 06:05:08,702 INFO L290 TraceCheckUtils]: 82: Hoare triple {74438#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {74438#(< ~counter~0 48)} is VALID [2022-04-28 06:05:08,703 INFO L290 TraceCheckUtils]: 81: Hoare triple {74463#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74438#(< ~counter~0 48)} is VALID [2022-04-28 06:05:08,703 INFO L290 TraceCheckUtils]: 80: Hoare triple {74463#(< ~counter~0 47)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74463#(< ~counter~0 47)} is VALID [2022-04-28 06:05:08,703 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {74012#true} {74463#(< ~counter~0 47)} #96#return; {74463#(< ~counter~0 47)} is VALID [2022-04-28 06:05:08,704 INFO L290 TraceCheckUtils]: 78: Hoare triple {74012#true} assume true; {74012#true} is VALID [2022-04-28 06:05:08,704 INFO L290 TraceCheckUtils]: 77: Hoare triple {74012#true} assume !(0 == ~cond); {74012#true} is VALID [2022-04-28 06:05:08,704 INFO L290 TraceCheckUtils]: 76: Hoare triple {74012#true} ~cond := #in~cond; {74012#true} is VALID [2022-04-28 06:05:08,704 INFO L272 TraceCheckUtils]: 75: Hoare triple {74463#(< ~counter~0 47)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {74012#true} is VALID [2022-04-28 06:05:08,704 INFO L290 TraceCheckUtils]: 74: Hoare triple {74463#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {74463#(< ~counter~0 47)} is VALID [2022-04-28 06:05:08,705 INFO L290 TraceCheckUtils]: 73: Hoare triple {74488#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74463#(< ~counter~0 47)} is VALID [2022-04-28 06:05:08,705 INFO L290 TraceCheckUtils]: 72: Hoare triple {74488#(< ~counter~0 46)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74488#(< ~counter~0 46)} is VALID [2022-04-28 06:05:08,706 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {74012#true} {74488#(< ~counter~0 46)} #96#return; {74488#(< ~counter~0 46)} is VALID [2022-04-28 06:05:08,706 INFO L290 TraceCheckUtils]: 70: Hoare triple {74012#true} assume true; {74012#true} is VALID [2022-04-28 06:05:08,706 INFO L290 TraceCheckUtils]: 69: Hoare triple {74012#true} assume !(0 == ~cond); {74012#true} is VALID [2022-04-28 06:05:08,706 INFO L290 TraceCheckUtils]: 68: Hoare triple {74012#true} ~cond := #in~cond; {74012#true} is VALID [2022-04-28 06:05:08,706 INFO L272 TraceCheckUtils]: 67: Hoare triple {74488#(< ~counter~0 46)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {74012#true} is VALID [2022-04-28 06:05:08,706 INFO L290 TraceCheckUtils]: 66: Hoare triple {74488#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {74488#(< ~counter~0 46)} is VALID [2022-04-28 06:05:08,736 INFO L290 TraceCheckUtils]: 65: Hoare triple {74513#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74488#(< ~counter~0 46)} is VALID [2022-04-28 06:05:08,737 INFO L290 TraceCheckUtils]: 64: Hoare triple {74513#(< ~counter~0 45)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {74513#(< ~counter~0 45)} is VALID [2022-04-28 06:05:08,737 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {74012#true} {74513#(< ~counter~0 45)} #96#return; {74513#(< ~counter~0 45)} is VALID [2022-04-28 06:05:08,737 INFO L290 TraceCheckUtils]: 62: Hoare triple {74012#true} assume true; {74012#true} is VALID [2022-04-28 06:05:08,737 INFO L290 TraceCheckUtils]: 61: Hoare triple {74012#true} assume !(0 == ~cond); {74012#true} is VALID [2022-04-28 06:05:08,737 INFO L290 TraceCheckUtils]: 60: Hoare triple {74012#true} ~cond := #in~cond; {74012#true} is VALID [2022-04-28 06:05:08,738 INFO L272 TraceCheckUtils]: 59: Hoare triple {74513#(< ~counter~0 45)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {74012#true} is VALID [2022-04-28 06:05:08,738 INFO L290 TraceCheckUtils]: 58: Hoare triple {74513#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {74513#(< ~counter~0 45)} is VALID [2022-04-28 06:05:08,740 INFO L290 TraceCheckUtils]: 57: Hoare triple {74538#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74513#(< ~counter~0 45)} is VALID [2022-04-28 06:05:08,740 INFO L290 TraceCheckUtils]: 56: Hoare triple {74538#(< ~counter~0 44)} assume !!(0 != ~r~0); {74538#(< ~counter~0 44)} is VALID [2022-04-28 06:05:08,740 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {74012#true} {74538#(< ~counter~0 44)} #94#return; {74538#(< ~counter~0 44)} is VALID [2022-04-28 06:05:08,740 INFO L290 TraceCheckUtils]: 54: Hoare triple {74012#true} assume true; {74012#true} is VALID [2022-04-28 06:05:08,741 INFO L290 TraceCheckUtils]: 53: Hoare triple {74012#true} assume !(0 == ~cond); {74012#true} is VALID [2022-04-28 06:05:08,741 INFO L290 TraceCheckUtils]: 52: Hoare triple {74012#true} ~cond := #in~cond; {74012#true} is VALID [2022-04-28 06:05:08,741 INFO L272 TraceCheckUtils]: 51: Hoare triple {74538#(< ~counter~0 44)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {74012#true} is VALID [2022-04-28 06:05:08,741 INFO L290 TraceCheckUtils]: 50: Hoare triple {74538#(< ~counter~0 44)} assume !!(#t~post6 < 50);havoc #t~post6; {74538#(< ~counter~0 44)} is VALID [2022-04-28 06:05:08,742 INFO L290 TraceCheckUtils]: 49: Hoare triple {74563#(< ~counter~0 43)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {74538#(< ~counter~0 44)} is VALID [2022-04-28 06:05:08,742 INFO L290 TraceCheckUtils]: 48: Hoare triple {74563#(< ~counter~0 43)} assume !(~r~0 < 0); {74563#(< ~counter~0 43)} is VALID [2022-04-28 06:05:08,743 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {74012#true} {74563#(< ~counter~0 43)} #98#return; {74563#(< ~counter~0 43)} is VALID [2022-04-28 06:05:08,743 INFO L290 TraceCheckUtils]: 46: Hoare triple {74012#true} assume true; {74012#true} is VALID [2022-04-28 06:05:08,743 INFO L290 TraceCheckUtils]: 45: Hoare triple {74012#true} assume !(0 == ~cond); {74012#true} is VALID [2022-04-28 06:05:08,743 INFO L290 TraceCheckUtils]: 44: Hoare triple {74012#true} ~cond := #in~cond; {74012#true} is VALID [2022-04-28 06:05:08,743 INFO L272 TraceCheckUtils]: 43: Hoare triple {74563#(< ~counter~0 43)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {74012#true} is VALID [2022-04-28 06:05:08,744 INFO L290 TraceCheckUtils]: 42: Hoare triple {74563#(< ~counter~0 43)} assume !!(#t~post8 < 50);havoc #t~post8; {74563#(< ~counter~0 43)} is VALID [2022-04-28 06:05:08,745 INFO L290 TraceCheckUtils]: 41: Hoare triple {74588#(< ~counter~0 42)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74563#(< ~counter~0 43)} is VALID [2022-04-28 06:05:08,745 INFO L290 TraceCheckUtils]: 40: Hoare triple {74588#(< ~counter~0 42)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {74588#(< ~counter~0 42)} is VALID [2022-04-28 06:05:08,746 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {74012#true} {74588#(< ~counter~0 42)} #98#return; {74588#(< ~counter~0 42)} is VALID [2022-04-28 06:05:08,746 INFO L290 TraceCheckUtils]: 38: Hoare triple {74012#true} assume true; {74012#true} is VALID [2022-04-28 06:05:08,746 INFO L290 TraceCheckUtils]: 37: Hoare triple {74012#true} assume !(0 == ~cond); {74012#true} is VALID [2022-04-28 06:05:08,746 INFO L290 TraceCheckUtils]: 36: Hoare triple {74012#true} ~cond := #in~cond; {74012#true} is VALID [2022-04-28 06:05:08,746 INFO L272 TraceCheckUtils]: 35: Hoare triple {74588#(< ~counter~0 42)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {74012#true} is VALID [2022-04-28 06:05:08,746 INFO L290 TraceCheckUtils]: 34: Hoare triple {74588#(< ~counter~0 42)} assume !!(#t~post8 < 50);havoc #t~post8; {74588#(< ~counter~0 42)} is VALID [2022-04-28 06:05:08,747 INFO L290 TraceCheckUtils]: 33: Hoare triple {74613#(< ~counter~0 41)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {74588#(< ~counter~0 42)} is VALID [2022-04-28 06:05:08,747 INFO L290 TraceCheckUtils]: 32: Hoare triple {74613#(< ~counter~0 41)} assume !(~r~0 > 0); {74613#(< ~counter~0 41)} is VALID [2022-04-28 06:05:08,748 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {74012#true} {74613#(< ~counter~0 41)} #96#return; {74613#(< ~counter~0 41)} is VALID [2022-04-28 06:05:08,748 INFO L290 TraceCheckUtils]: 30: Hoare triple {74012#true} assume true; {74012#true} is VALID [2022-04-28 06:05:08,748 INFO L290 TraceCheckUtils]: 29: Hoare triple {74012#true} assume !(0 == ~cond); {74012#true} is VALID [2022-04-28 06:05:08,748 INFO L290 TraceCheckUtils]: 28: Hoare triple {74012#true} ~cond := #in~cond; {74012#true} is VALID [2022-04-28 06:05:08,748 INFO L272 TraceCheckUtils]: 27: Hoare triple {74613#(< ~counter~0 41)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {74012#true} is VALID [2022-04-28 06:05:08,748 INFO L290 TraceCheckUtils]: 26: Hoare triple {74613#(< ~counter~0 41)} assume !!(#t~post7 < 50);havoc #t~post7; {74613#(< ~counter~0 41)} is VALID [2022-04-28 06:05:08,750 INFO L290 TraceCheckUtils]: 25: Hoare triple {74638#(< ~counter~0 40)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {74613#(< ~counter~0 41)} is VALID [2022-04-28 06:05:08,750 INFO L290 TraceCheckUtils]: 24: Hoare triple {74638#(< ~counter~0 40)} assume !!(0 != ~r~0); {74638#(< ~counter~0 40)} is VALID [2022-04-28 06:05:08,750 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {74012#true} {74638#(< ~counter~0 40)} #94#return; {74638#(< ~counter~0 40)} is VALID [2022-04-28 06:05:08,751 INFO L290 TraceCheckUtils]: 22: Hoare triple {74012#true} assume true; {74012#true} is VALID [2022-04-28 06:05:08,751 INFO L290 TraceCheckUtils]: 21: Hoare triple {74012#true} assume !(0 == ~cond); {74012#true} is VALID [2022-04-28 06:05:08,751 INFO L290 TraceCheckUtils]: 20: Hoare triple {74012#true} ~cond := #in~cond; {74012#true} is VALID [2022-04-28 06:05:08,751 INFO L272 TraceCheckUtils]: 19: Hoare triple {74638#(< ~counter~0 40)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {74012#true} is VALID [2022-04-28 06:05:08,751 INFO L290 TraceCheckUtils]: 18: Hoare triple {74638#(< ~counter~0 40)} assume !!(#t~post6 < 50);havoc #t~post6; {74638#(< ~counter~0 40)} is VALID [2022-04-28 06:05:08,752 INFO L290 TraceCheckUtils]: 17: Hoare triple {74663#(< ~counter~0 39)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {74638#(< ~counter~0 40)} is VALID [2022-04-28 06:05:08,752 INFO L290 TraceCheckUtils]: 16: Hoare triple {74663#(< ~counter~0 39)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {74663#(< ~counter~0 39)} is VALID [2022-04-28 06:05:08,753 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {74012#true} {74663#(< ~counter~0 39)} #92#return; {74663#(< ~counter~0 39)} is VALID [2022-04-28 06:05:08,753 INFO L290 TraceCheckUtils]: 14: Hoare triple {74012#true} assume true; {74012#true} is VALID [2022-04-28 06:05:08,753 INFO L290 TraceCheckUtils]: 13: Hoare triple {74012#true} assume !(0 == ~cond); {74012#true} is VALID [2022-04-28 06:05:08,753 INFO L290 TraceCheckUtils]: 12: Hoare triple {74012#true} ~cond := #in~cond; {74012#true} is VALID [2022-04-28 06:05:08,753 INFO L272 TraceCheckUtils]: 11: Hoare triple {74663#(< ~counter~0 39)} 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)); {74012#true} is VALID [2022-04-28 06:05:08,754 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {74012#true} {74663#(< ~counter~0 39)} #90#return; {74663#(< ~counter~0 39)} is VALID [2022-04-28 06:05:08,754 INFO L290 TraceCheckUtils]: 9: Hoare triple {74012#true} assume true; {74012#true} is VALID [2022-04-28 06:05:08,754 INFO L290 TraceCheckUtils]: 8: Hoare triple {74012#true} assume !(0 == ~cond); {74012#true} is VALID [2022-04-28 06:05:08,754 INFO L290 TraceCheckUtils]: 7: Hoare triple {74012#true} ~cond := #in~cond; {74012#true} is VALID [2022-04-28 06:05:08,754 INFO L272 TraceCheckUtils]: 6: Hoare triple {74663#(< ~counter~0 39)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {74012#true} is VALID [2022-04-28 06:05:08,754 INFO L290 TraceCheckUtils]: 5: Hoare triple {74663#(< ~counter~0 39)} 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; {74663#(< ~counter~0 39)} is VALID [2022-04-28 06:05:08,754 INFO L272 TraceCheckUtils]: 4: Hoare triple {74663#(< ~counter~0 39)} call #t~ret9 := main(); {74663#(< ~counter~0 39)} is VALID [2022-04-28 06:05:08,755 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {74663#(< ~counter~0 39)} {74012#true} #102#return; {74663#(< ~counter~0 39)} is VALID [2022-04-28 06:05:08,755 INFO L290 TraceCheckUtils]: 2: Hoare triple {74663#(< ~counter~0 39)} assume true; {74663#(< ~counter~0 39)} is VALID [2022-04-28 06:05:08,756 INFO L290 TraceCheckUtils]: 1: Hoare triple {74012#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {74663#(< ~counter~0 39)} is VALID [2022-04-28 06:05:08,756 INFO L272 TraceCheckUtils]: 0: Hoare triple {74012#true} call ULTIMATE.init(); {74012#true} is VALID [2022-04-28 06:05:08,756 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-28 06:05:08,756 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:05:08,756 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2075883503] [2022-04-28 06:05:08,756 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:05:08,756 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1933627658] [2022-04-28 06:05:08,756 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1933627658] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:05:08,756 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:05:08,756 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 28 [2022-04-28 06:05:08,757 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:05:08,757 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1937167268] [2022-04-28 06:05:08,757 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1937167268] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:05:08,757 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:05:08,757 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 06:05:08,757 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2027632439] [2022-04-28 06:05:08,757 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:05:08,757 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-28 06:05:08,757 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:05:08,758 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-28 06:05:08,916 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:05:08,916 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 06:05:08,916 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:05:08,916 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 06:05:08,916 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=330, Invalid=426, Unknown=0, NotChecked=0, Total=756 [2022-04-28 06:05:08,917 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-28 06:05:11,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:05:11,679 INFO L93 Difference]: Finished difference Result 817 states and 1128 transitions. [2022-04-28 06:05:11,679 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-28 06:05:11,679 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-28 06:05:11,679 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:05:11,679 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-28 06:05:11,692 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 256 transitions. [2022-04-28 06:05:11,692 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-28 06:05:11,693 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 256 transitions. [2022-04-28 06:05:11,693 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 256 transitions. [2022-04-28 06:05:11,936 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-28 06:05:11,953 INFO L225 Difference]: With dead ends: 817 [2022-04-28 06:05:11,953 INFO L226 Difference]: Without dead ends: 620 [2022-04-28 06:05:11,954 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 234 GetRequests, 199 SyntacticMatches, 0 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 70 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=555, Invalid=777, Unknown=0, NotChecked=0, Total=1332 [2022-04-28 06:05:11,955 INFO L413 NwaCegarLoop]: 63 mSDtfsCounter, 144 mSDsluCounter, 224 mSDsCounter, 0 mSdLazyCounter, 139 mSolverCounterSat, 116 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 144 SdHoareTripleChecker+Valid, 287 SdHoareTripleChecker+Invalid, 255 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 116 IncrementalHoareTripleChecker+Valid, 139 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 06:05:11,958 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [144 Valid, 287 Invalid, 255 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [116 Valid, 139 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 06:05:11,959 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 620 states. [2022-04-28 06:05:13,851 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 620 to 610. [2022-04-28 06:05:13,851 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:05:13,852 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-28 06:05:13,853 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-28 06:05:13,853 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-28 06:05:13,866 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:05:13,866 INFO L93 Difference]: Finished difference Result 620 states and 824 transitions. [2022-04-28 06:05:13,866 INFO L276 IsEmpty]: Start isEmpty. Operand 620 states and 824 transitions. [2022-04-28 06:05:13,867 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:05:13,867 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:05:13,868 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-28 06:05:13,868 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-28 06:05:13,884 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:05:13,884 INFO L93 Difference]: Finished difference Result 620 states and 824 transitions. [2022-04-28 06:05:13,884 INFO L276 IsEmpty]: Start isEmpty. Operand 620 states and 824 transitions. [2022-04-28 06:05:13,885 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:05:13,885 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:05:13,885 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:05:13,885 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:05:13,886 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-28 06:05:13,905 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 610 states to 610 states and 814 transitions. [2022-04-28 06:05:13,906 INFO L78 Accepts]: Start accepts. Automaton has 610 states and 814 transitions. Word has length 113 [2022-04-28 06:05:13,906 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:05:13,906 INFO L495 AbstractCegarLoop]: Abstraction has 610 states and 814 transitions. [2022-04-28 06:05:13,906 INFO L496 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-28 06:05:13,906 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 610 states and 814 transitions. [2022-04-28 06:05:31,800 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 814 edges. 810 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-28 06:05:31,800 INFO L276 IsEmpty]: Start isEmpty. Operand 610 states and 814 transitions. [2022-04-28 06:05:31,801 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 116 [2022-04-28 06:05:31,801 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:05:31,801 INFO L195 NwaCegarLoop]: 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-28 06:05:31,809 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Forceful destruction successful, exit code 0 [2022-04-28 06:05:32,002 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 38 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable36 [2022-04-28 06:05:32,002 INFO L420 AbstractCegarLoop]: === Iteration 38 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:05:32,002 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:05:32,002 INFO L85 PathProgramCache]: Analyzing trace with hash 533963976, now seen corresponding path program 13 times [2022-04-28 06:05:32,003 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:05:32,003 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1090151829] [2022-04-28 06:05:32,003 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:05:32,003 INFO L85 PathProgramCache]: Analyzing trace with hash 533963976, now seen corresponding path program 14 times [2022-04-28 06:05:32,003 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:05:32,003 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1803657998] [2022-04-28 06:05:32,003 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:05:32,003 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:05:32,032 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:05:32,032 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [198252173] [2022-04-28 06:05:32,032 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:05:32,032 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:05:32,033 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:05:32,047 INFO L229 MonitoredProcess]: Starting monitored process 39 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:05:32,111 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Waiting until timeout for monitored process [2022-04-28 06:05:32,146 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:05:32,146 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:05:32,147 INFO L263 TraceCheckSpWp]: Trace formula consists of 284 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-28 06:05:32,168 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:05:32,169 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:05:32,747 INFO L272 TraceCheckUtils]: 0: Hoare triple {78829#true} call ULTIMATE.init(); {78829#true} is VALID [2022-04-28 06:05:32,748 INFO L290 TraceCheckUtils]: 1: Hoare triple {78829#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,748 INFO L290 TraceCheckUtils]: 2: Hoare triple {78837#(<= ~counter~0 0)} assume true; {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,748 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {78837#(<= ~counter~0 0)} {78829#true} #102#return; {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,749 INFO L272 TraceCheckUtils]: 4: Hoare triple {78837#(<= ~counter~0 0)} call #t~ret9 := main(); {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,749 INFO L290 TraceCheckUtils]: 5: Hoare triple {78837#(<= ~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; {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,749 INFO L272 TraceCheckUtils]: 6: Hoare triple {78837#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,750 INFO L290 TraceCheckUtils]: 7: Hoare triple {78837#(<= ~counter~0 0)} ~cond := #in~cond; {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,750 INFO L290 TraceCheckUtils]: 8: Hoare triple {78837#(<= ~counter~0 0)} assume !(0 == ~cond); {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,750 INFO L290 TraceCheckUtils]: 9: Hoare triple {78837#(<= ~counter~0 0)} assume true; {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,751 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {78837#(<= ~counter~0 0)} {78837#(<= ~counter~0 0)} #90#return; {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,751 INFO L272 TraceCheckUtils]: 11: Hoare triple {78837#(<= ~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)); {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,751 INFO L290 TraceCheckUtils]: 12: Hoare triple {78837#(<= ~counter~0 0)} ~cond := #in~cond; {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,752 INFO L290 TraceCheckUtils]: 13: Hoare triple {78837#(<= ~counter~0 0)} assume !(0 == ~cond); {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,752 INFO L290 TraceCheckUtils]: 14: Hoare triple {78837#(<= ~counter~0 0)} assume true; {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,752 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {78837#(<= ~counter~0 0)} {78837#(<= ~counter~0 0)} #92#return; {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,753 INFO L290 TraceCheckUtils]: 16: Hoare triple {78837#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {78837#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:32,754 INFO L290 TraceCheckUtils]: 17: Hoare triple {78837#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78886#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:32,755 INFO L290 TraceCheckUtils]: 18: Hoare triple {78886#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {78886#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:32,755 INFO L272 TraceCheckUtils]: 19: Hoare triple {78886#(<= ~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)); {78886#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:32,755 INFO L290 TraceCheckUtils]: 20: Hoare triple {78886#(<= ~counter~0 1)} ~cond := #in~cond; {78886#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:32,756 INFO L290 TraceCheckUtils]: 21: Hoare triple {78886#(<= ~counter~0 1)} assume !(0 == ~cond); {78886#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:32,756 INFO L290 TraceCheckUtils]: 22: Hoare triple {78886#(<= ~counter~0 1)} assume true; {78886#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:32,756 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {78886#(<= ~counter~0 1)} {78886#(<= ~counter~0 1)} #94#return; {78886#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:32,757 INFO L290 TraceCheckUtils]: 24: Hoare triple {78886#(<= ~counter~0 1)} assume !!(0 != ~r~0); {78886#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:32,758 INFO L290 TraceCheckUtils]: 25: Hoare triple {78886#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {78911#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:32,758 INFO L290 TraceCheckUtils]: 26: Hoare triple {78911#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {78911#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:32,758 INFO L272 TraceCheckUtils]: 27: Hoare triple {78911#(<= ~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)); {78911#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:32,759 INFO L290 TraceCheckUtils]: 28: Hoare triple {78911#(<= ~counter~0 2)} ~cond := #in~cond; {78911#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:32,759 INFO L290 TraceCheckUtils]: 29: Hoare triple {78911#(<= ~counter~0 2)} assume !(0 == ~cond); {78911#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:32,759 INFO L290 TraceCheckUtils]: 30: Hoare triple {78911#(<= ~counter~0 2)} assume true; {78911#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:32,760 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {78911#(<= ~counter~0 2)} {78911#(<= ~counter~0 2)} #96#return; {78911#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:32,760 INFO L290 TraceCheckUtils]: 32: Hoare triple {78911#(<= ~counter~0 2)} assume !(~r~0 > 0); {78911#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:32,761 INFO L290 TraceCheckUtils]: 33: Hoare triple {78911#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {78936#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:32,761 INFO L290 TraceCheckUtils]: 34: Hoare triple {78936#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {78936#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:32,762 INFO L272 TraceCheckUtils]: 35: Hoare triple {78936#(<= ~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)); {78936#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:32,762 INFO L290 TraceCheckUtils]: 36: Hoare triple {78936#(<= ~counter~0 3)} ~cond := #in~cond; {78936#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:32,762 INFO L290 TraceCheckUtils]: 37: Hoare triple {78936#(<= ~counter~0 3)} assume !(0 == ~cond); {78936#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:32,763 INFO L290 TraceCheckUtils]: 38: Hoare triple {78936#(<= ~counter~0 3)} assume true; {78936#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:32,763 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {78936#(<= ~counter~0 3)} {78936#(<= ~counter~0 3)} #98#return; {78936#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:32,763 INFO L290 TraceCheckUtils]: 40: Hoare triple {78936#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {78936#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:32,764 INFO L290 TraceCheckUtils]: 41: Hoare triple {78936#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {78961#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:32,765 INFO L290 TraceCheckUtils]: 42: Hoare triple {78961#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {78961#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:32,765 INFO L272 TraceCheckUtils]: 43: Hoare triple {78961#(<= ~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)); {78961#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:32,765 INFO L290 TraceCheckUtils]: 44: Hoare triple {78961#(<= ~counter~0 4)} ~cond := #in~cond; {78961#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:32,766 INFO L290 TraceCheckUtils]: 45: Hoare triple {78961#(<= ~counter~0 4)} assume !(0 == ~cond); {78961#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:32,766 INFO L290 TraceCheckUtils]: 46: Hoare triple {78961#(<= ~counter~0 4)} assume true; {78961#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:32,766 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {78961#(<= ~counter~0 4)} {78961#(<= ~counter~0 4)} #98#return; {78961#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:32,767 INFO L290 TraceCheckUtils]: 48: Hoare triple {78961#(<= ~counter~0 4)} assume !(~r~0 < 0); {78961#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:32,768 INFO L290 TraceCheckUtils]: 49: Hoare triple {78961#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78986#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:32,768 INFO L290 TraceCheckUtils]: 50: Hoare triple {78986#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {78986#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:32,768 INFO L272 TraceCheckUtils]: 51: Hoare triple {78986#(<= ~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)); {78986#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:32,769 INFO L290 TraceCheckUtils]: 52: Hoare triple {78986#(<= ~counter~0 5)} ~cond := #in~cond; {78986#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:32,769 INFO L290 TraceCheckUtils]: 53: Hoare triple {78986#(<= ~counter~0 5)} assume !(0 == ~cond); {78986#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:32,769 INFO L290 TraceCheckUtils]: 54: Hoare triple {78986#(<= ~counter~0 5)} assume true; {78986#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:32,770 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {78986#(<= ~counter~0 5)} {78986#(<= ~counter~0 5)} #94#return; {78986#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:32,770 INFO L290 TraceCheckUtils]: 56: Hoare triple {78986#(<= ~counter~0 5)} assume !!(0 != ~r~0); {78986#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:32,771 INFO L290 TraceCheckUtils]: 57: Hoare triple {78986#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79011#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:32,771 INFO L290 TraceCheckUtils]: 58: Hoare triple {79011#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {79011#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:32,772 INFO L272 TraceCheckUtils]: 59: Hoare triple {79011#(<= ~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)); {79011#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:32,772 INFO L290 TraceCheckUtils]: 60: Hoare triple {79011#(<= ~counter~0 6)} ~cond := #in~cond; {79011#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:32,772 INFO L290 TraceCheckUtils]: 61: Hoare triple {79011#(<= ~counter~0 6)} assume !(0 == ~cond); {79011#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:32,772 INFO L290 TraceCheckUtils]: 62: Hoare triple {79011#(<= ~counter~0 6)} assume true; {79011#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:32,773 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {79011#(<= ~counter~0 6)} {79011#(<= ~counter~0 6)} #96#return; {79011#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:32,773 INFO L290 TraceCheckUtils]: 64: Hoare triple {79011#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {79011#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:32,774 INFO L290 TraceCheckUtils]: 65: Hoare triple {79011#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79036#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:32,774 INFO L290 TraceCheckUtils]: 66: Hoare triple {79036#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {79036#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:32,775 INFO L272 TraceCheckUtils]: 67: Hoare triple {79036#(<= ~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)); {79036#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:32,775 INFO L290 TraceCheckUtils]: 68: Hoare triple {79036#(<= ~counter~0 7)} ~cond := #in~cond; {79036#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:32,775 INFO L290 TraceCheckUtils]: 69: Hoare triple {79036#(<= ~counter~0 7)} assume !(0 == ~cond); {79036#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:32,776 INFO L290 TraceCheckUtils]: 70: Hoare triple {79036#(<= ~counter~0 7)} assume true; {79036#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:32,776 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {79036#(<= ~counter~0 7)} {79036#(<= ~counter~0 7)} #96#return; {79036#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:32,777 INFO L290 TraceCheckUtils]: 72: Hoare triple {79036#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {79036#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:32,777 INFO L290 TraceCheckUtils]: 73: Hoare triple {79036#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79061#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:32,778 INFO L290 TraceCheckUtils]: 74: Hoare triple {79061#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {79061#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:32,778 INFO L272 TraceCheckUtils]: 75: Hoare triple {79061#(<= ~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)); {79061#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:32,778 INFO L290 TraceCheckUtils]: 76: Hoare triple {79061#(<= ~counter~0 8)} ~cond := #in~cond; {79061#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:32,779 INFO L290 TraceCheckUtils]: 77: Hoare triple {79061#(<= ~counter~0 8)} assume !(0 == ~cond); {79061#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:32,779 INFO L290 TraceCheckUtils]: 78: Hoare triple {79061#(<= ~counter~0 8)} assume true; {79061#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:32,779 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {79061#(<= ~counter~0 8)} {79061#(<= ~counter~0 8)} #96#return; {79061#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:32,780 INFO L290 TraceCheckUtils]: 80: Hoare triple {79061#(<= ~counter~0 8)} assume !(~r~0 > 0); {79061#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:32,781 INFO L290 TraceCheckUtils]: 81: Hoare triple {79061#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79086#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:32,781 INFO L290 TraceCheckUtils]: 82: Hoare triple {79086#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {79086#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:32,781 INFO L272 TraceCheckUtils]: 83: Hoare triple {79086#(<= ~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)); {79086#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:32,782 INFO L290 TraceCheckUtils]: 84: Hoare triple {79086#(<= ~counter~0 9)} ~cond := #in~cond; {79086#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:32,782 INFO L290 TraceCheckUtils]: 85: Hoare triple {79086#(<= ~counter~0 9)} assume !(0 == ~cond); {79086#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:32,782 INFO L290 TraceCheckUtils]: 86: Hoare triple {79086#(<= ~counter~0 9)} assume true; {79086#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:32,783 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {79086#(<= ~counter~0 9)} {79086#(<= ~counter~0 9)} #98#return; {79086#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:32,783 INFO L290 TraceCheckUtils]: 88: Hoare triple {79086#(<= ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {79086#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:32,784 INFO L290 TraceCheckUtils]: 89: Hoare triple {79086#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79111#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:32,784 INFO L290 TraceCheckUtils]: 90: Hoare triple {79111#(<= ~counter~0 10)} assume !!(#t~post8 < 50);havoc #t~post8; {79111#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:32,785 INFO L272 TraceCheckUtils]: 91: Hoare triple {79111#(<= ~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)); {79111#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:32,785 INFO L290 TraceCheckUtils]: 92: Hoare triple {79111#(<= ~counter~0 10)} ~cond := #in~cond; {79111#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:32,785 INFO L290 TraceCheckUtils]: 93: Hoare triple {79111#(<= ~counter~0 10)} assume !(0 == ~cond); {79111#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:32,786 INFO L290 TraceCheckUtils]: 94: Hoare triple {79111#(<= ~counter~0 10)} assume true; {79111#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:32,786 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {79111#(<= ~counter~0 10)} {79111#(<= ~counter~0 10)} #98#return; {79111#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:32,786 INFO L290 TraceCheckUtils]: 96: Hoare triple {79111#(<= ~counter~0 10)} assume !(~r~0 < 0); {79111#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:32,787 INFO L290 TraceCheckUtils]: 97: Hoare triple {79111#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79136#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:32,788 INFO L290 TraceCheckUtils]: 98: Hoare triple {79136#(<= ~counter~0 11)} assume !!(#t~post6 < 50);havoc #t~post6; {79136#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:32,788 INFO L272 TraceCheckUtils]: 99: Hoare triple {79136#(<= ~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)); {79136#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:32,788 INFO L290 TraceCheckUtils]: 100: Hoare triple {79136#(<= ~counter~0 11)} ~cond := #in~cond; {79136#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:32,789 INFO L290 TraceCheckUtils]: 101: Hoare triple {79136#(<= ~counter~0 11)} assume !(0 == ~cond); {79136#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:32,789 INFO L290 TraceCheckUtils]: 102: Hoare triple {79136#(<= ~counter~0 11)} assume true; {79136#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:32,789 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {79136#(<= ~counter~0 11)} {79136#(<= ~counter~0 11)} #94#return; {79136#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:32,790 INFO L290 TraceCheckUtils]: 104: Hoare triple {79136#(<= ~counter~0 11)} assume !!(0 != ~r~0); {79136#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:32,790 INFO L290 TraceCheckUtils]: 105: Hoare triple {79136#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79161#(<= |main_#t~post7| 11)} is VALID [2022-04-28 06:05:32,790 INFO L290 TraceCheckUtils]: 106: Hoare triple {79161#(<= |main_#t~post7| 11)} assume !(#t~post7 < 50);havoc #t~post7; {78830#false} is VALID [2022-04-28 06:05:32,790 INFO L290 TraceCheckUtils]: 107: Hoare triple {78830#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {78830#false} is VALID [2022-04-28 06:05:32,790 INFO L290 TraceCheckUtils]: 108: Hoare triple {78830#false} assume !(#t~post8 < 50);havoc #t~post8; {78830#false} is VALID [2022-04-28 06:05:32,791 INFO L290 TraceCheckUtils]: 109: Hoare triple {78830#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78830#false} is VALID [2022-04-28 06:05:32,791 INFO L290 TraceCheckUtils]: 110: Hoare triple {78830#false} assume !(#t~post6 < 50);havoc #t~post6; {78830#false} is VALID [2022-04-28 06:05:32,791 INFO L272 TraceCheckUtils]: 111: Hoare triple {78830#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)); {78830#false} is VALID [2022-04-28 06:05:32,791 INFO L290 TraceCheckUtils]: 112: Hoare triple {78830#false} ~cond := #in~cond; {78830#false} is VALID [2022-04-28 06:05:32,791 INFO L290 TraceCheckUtils]: 113: Hoare triple {78830#false} assume 0 == ~cond; {78830#false} is VALID [2022-04-28 06:05:32,791 INFO L290 TraceCheckUtils]: 114: Hoare triple {78830#false} assume !false; {78830#false} is VALID [2022-04-28 06:05:32,791 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-28 06:05:32,791 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:05:33,428 INFO L290 TraceCheckUtils]: 114: Hoare triple {78830#false} assume !false; {78830#false} is VALID [2022-04-28 06:05:33,429 INFO L290 TraceCheckUtils]: 113: Hoare triple {78830#false} assume 0 == ~cond; {78830#false} is VALID [2022-04-28 06:05:33,429 INFO L290 TraceCheckUtils]: 112: Hoare triple {78830#false} ~cond := #in~cond; {78830#false} is VALID [2022-04-28 06:05:33,429 INFO L272 TraceCheckUtils]: 111: Hoare triple {78830#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)); {78830#false} is VALID [2022-04-28 06:05:33,429 INFO L290 TraceCheckUtils]: 110: Hoare triple {78830#false} assume !(#t~post6 < 50);havoc #t~post6; {78830#false} is VALID [2022-04-28 06:05:33,429 INFO L290 TraceCheckUtils]: 109: Hoare triple {78830#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78830#false} is VALID [2022-04-28 06:05:33,429 INFO L290 TraceCheckUtils]: 108: Hoare triple {78830#false} assume !(#t~post8 < 50);havoc #t~post8; {78830#false} is VALID [2022-04-28 06:05:33,429 INFO L290 TraceCheckUtils]: 107: Hoare triple {78830#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {78830#false} is VALID [2022-04-28 06:05:33,436 INFO L290 TraceCheckUtils]: 106: Hoare triple {79213#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {78830#false} is VALID [2022-04-28 06:05:33,437 INFO L290 TraceCheckUtils]: 105: Hoare triple {79217#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79213#(< |main_#t~post7| 50)} is VALID [2022-04-28 06:05:33,437 INFO L290 TraceCheckUtils]: 104: Hoare triple {79217#(< ~counter~0 50)} assume !!(0 != ~r~0); {79217#(< ~counter~0 50)} is VALID [2022-04-28 06:05:33,437 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {78829#true} {79217#(< ~counter~0 50)} #94#return; {79217#(< ~counter~0 50)} is VALID [2022-04-28 06:05:33,438 INFO L290 TraceCheckUtils]: 102: Hoare triple {78829#true} assume true; {78829#true} is VALID [2022-04-28 06:05:33,438 INFO L290 TraceCheckUtils]: 101: Hoare triple {78829#true} assume !(0 == ~cond); {78829#true} is VALID [2022-04-28 06:05:33,438 INFO L290 TraceCheckUtils]: 100: Hoare triple {78829#true} ~cond := #in~cond; {78829#true} is VALID [2022-04-28 06:05:33,438 INFO L272 TraceCheckUtils]: 99: Hoare triple {79217#(< ~counter~0 50)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {78829#true} is VALID [2022-04-28 06:05:33,438 INFO L290 TraceCheckUtils]: 98: Hoare triple {79217#(< ~counter~0 50)} assume !!(#t~post6 < 50);havoc #t~post6; {79217#(< ~counter~0 50)} is VALID [2022-04-28 06:05:33,440 INFO L290 TraceCheckUtils]: 97: Hoare triple {79242#(< ~counter~0 49)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79217#(< ~counter~0 50)} is VALID [2022-04-28 06:05:33,440 INFO L290 TraceCheckUtils]: 96: Hoare triple {79242#(< ~counter~0 49)} assume !(~r~0 < 0); {79242#(< ~counter~0 49)} is VALID [2022-04-28 06:05:33,441 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {78829#true} {79242#(< ~counter~0 49)} #98#return; {79242#(< ~counter~0 49)} is VALID [2022-04-28 06:05:33,441 INFO L290 TraceCheckUtils]: 94: Hoare triple {78829#true} assume true; {78829#true} is VALID [2022-04-28 06:05:33,441 INFO L290 TraceCheckUtils]: 93: Hoare triple {78829#true} assume !(0 == ~cond); {78829#true} is VALID [2022-04-28 06:05:33,441 INFO L290 TraceCheckUtils]: 92: Hoare triple {78829#true} ~cond := #in~cond; {78829#true} is VALID [2022-04-28 06:05:33,441 INFO L272 TraceCheckUtils]: 91: Hoare triple {79242#(< ~counter~0 49)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {78829#true} is VALID [2022-04-28 06:05:33,441 INFO L290 TraceCheckUtils]: 90: Hoare triple {79242#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {79242#(< ~counter~0 49)} is VALID [2022-04-28 06:05:33,442 INFO L290 TraceCheckUtils]: 89: Hoare triple {79267#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79242#(< ~counter~0 49)} is VALID [2022-04-28 06:05:33,442 INFO L290 TraceCheckUtils]: 88: Hoare triple {79267#(< ~counter~0 48)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {79267#(< ~counter~0 48)} is VALID [2022-04-28 06:05:33,443 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {78829#true} {79267#(< ~counter~0 48)} #98#return; {79267#(< ~counter~0 48)} is VALID [2022-04-28 06:05:33,443 INFO L290 TraceCheckUtils]: 86: Hoare triple {78829#true} assume true; {78829#true} is VALID [2022-04-28 06:05:33,443 INFO L290 TraceCheckUtils]: 85: Hoare triple {78829#true} assume !(0 == ~cond); {78829#true} is VALID [2022-04-28 06:05:33,443 INFO L290 TraceCheckUtils]: 84: Hoare triple {78829#true} ~cond := #in~cond; {78829#true} is VALID [2022-04-28 06:05:33,443 INFO L272 TraceCheckUtils]: 83: Hoare triple {79267#(< ~counter~0 48)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {78829#true} is VALID [2022-04-28 06:05:33,443 INFO L290 TraceCheckUtils]: 82: Hoare triple {79267#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {79267#(< ~counter~0 48)} is VALID [2022-04-28 06:05:33,444 INFO L290 TraceCheckUtils]: 81: Hoare triple {79292#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79267#(< ~counter~0 48)} is VALID [2022-04-28 06:05:33,445 INFO L290 TraceCheckUtils]: 80: Hoare triple {79292#(< ~counter~0 47)} assume !(~r~0 > 0); {79292#(< ~counter~0 47)} is VALID [2022-04-28 06:05:33,453 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {78829#true} {79292#(< ~counter~0 47)} #96#return; {79292#(< ~counter~0 47)} is VALID [2022-04-28 06:05:33,453 INFO L290 TraceCheckUtils]: 78: Hoare triple {78829#true} assume true; {78829#true} is VALID [2022-04-28 06:05:33,453 INFO L290 TraceCheckUtils]: 77: Hoare triple {78829#true} assume !(0 == ~cond); {78829#true} is VALID [2022-04-28 06:05:33,453 INFO L290 TraceCheckUtils]: 76: Hoare triple {78829#true} ~cond := #in~cond; {78829#true} is VALID [2022-04-28 06:05:33,453 INFO L272 TraceCheckUtils]: 75: Hoare triple {79292#(< ~counter~0 47)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {78829#true} is VALID [2022-04-28 06:05:33,454 INFO L290 TraceCheckUtils]: 74: Hoare triple {79292#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {79292#(< ~counter~0 47)} is VALID [2022-04-28 06:05:33,455 INFO L290 TraceCheckUtils]: 73: Hoare triple {79317#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79292#(< ~counter~0 47)} is VALID [2022-04-28 06:05:33,456 INFO L290 TraceCheckUtils]: 72: Hoare triple {79317#(< ~counter~0 46)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {79317#(< ~counter~0 46)} is VALID [2022-04-28 06:05:33,456 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {78829#true} {79317#(< ~counter~0 46)} #96#return; {79317#(< ~counter~0 46)} is VALID [2022-04-28 06:05:33,456 INFO L290 TraceCheckUtils]: 70: Hoare triple {78829#true} assume true; {78829#true} is VALID [2022-04-28 06:05:33,456 INFO L290 TraceCheckUtils]: 69: Hoare triple {78829#true} assume !(0 == ~cond); {78829#true} is VALID [2022-04-28 06:05:33,456 INFO L290 TraceCheckUtils]: 68: Hoare triple {78829#true} ~cond := #in~cond; {78829#true} is VALID [2022-04-28 06:05:33,457 INFO L272 TraceCheckUtils]: 67: Hoare triple {79317#(< ~counter~0 46)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {78829#true} is VALID [2022-04-28 06:05:33,457 INFO L290 TraceCheckUtils]: 66: Hoare triple {79317#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {79317#(< ~counter~0 46)} is VALID [2022-04-28 06:05:33,458 INFO L290 TraceCheckUtils]: 65: Hoare triple {79342#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79317#(< ~counter~0 46)} is VALID [2022-04-28 06:05:33,458 INFO L290 TraceCheckUtils]: 64: Hoare triple {79342#(< ~counter~0 45)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {79342#(< ~counter~0 45)} is VALID [2022-04-28 06:05:33,458 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {78829#true} {79342#(< ~counter~0 45)} #96#return; {79342#(< ~counter~0 45)} is VALID [2022-04-28 06:05:33,459 INFO L290 TraceCheckUtils]: 62: Hoare triple {78829#true} assume true; {78829#true} is VALID [2022-04-28 06:05:33,459 INFO L290 TraceCheckUtils]: 61: Hoare triple {78829#true} assume !(0 == ~cond); {78829#true} is VALID [2022-04-28 06:05:33,459 INFO L290 TraceCheckUtils]: 60: Hoare triple {78829#true} ~cond := #in~cond; {78829#true} is VALID [2022-04-28 06:05:33,459 INFO L272 TraceCheckUtils]: 59: Hoare triple {79342#(< ~counter~0 45)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {78829#true} is VALID [2022-04-28 06:05:33,459 INFO L290 TraceCheckUtils]: 58: Hoare triple {79342#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {79342#(< ~counter~0 45)} is VALID [2022-04-28 06:05:33,460 INFO L290 TraceCheckUtils]: 57: Hoare triple {79367#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79342#(< ~counter~0 45)} is VALID [2022-04-28 06:05:33,460 INFO L290 TraceCheckUtils]: 56: Hoare triple {79367#(< ~counter~0 44)} assume !!(0 != ~r~0); {79367#(< ~counter~0 44)} is VALID [2022-04-28 06:05:33,461 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {78829#true} {79367#(< ~counter~0 44)} #94#return; {79367#(< ~counter~0 44)} is VALID [2022-04-28 06:05:33,461 INFO L290 TraceCheckUtils]: 54: Hoare triple {78829#true} assume true; {78829#true} is VALID [2022-04-28 06:05:33,461 INFO L290 TraceCheckUtils]: 53: Hoare triple {78829#true} assume !(0 == ~cond); {78829#true} is VALID [2022-04-28 06:05:33,461 INFO L290 TraceCheckUtils]: 52: Hoare triple {78829#true} ~cond := #in~cond; {78829#true} is VALID [2022-04-28 06:05:33,461 INFO L272 TraceCheckUtils]: 51: Hoare triple {79367#(< ~counter~0 44)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {78829#true} is VALID [2022-04-28 06:05:33,461 INFO L290 TraceCheckUtils]: 50: Hoare triple {79367#(< ~counter~0 44)} assume !!(#t~post6 < 50);havoc #t~post6; {79367#(< ~counter~0 44)} is VALID [2022-04-28 06:05:33,462 INFO L290 TraceCheckUtils]: 49: Hoare triple {79392#(< ~counter~0 43)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79367#(< ~counter~0 44)} is VALID [2022-04-28 06:05:33,462 INFO L290 TraceCheckUtils]: 48: Hoare triple {79392#(< ~counter~0 43)} assume !(~r~0 < 0); {79392#(< ~counter~0 43)} is VALID [2022-04-28 06:05:33,463 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {78829#true} {79392#(< ~counter~0 43)} #98#return; {79392#(< ~counter~0 43)} is VALID [2022-04-28 06:05:33,463 INFO L290 TraceCheckUtils]: 46: Hoare triple {78829#true} assume true; {78829#true} is VALID [2022-04-28 06:05:33,463 INFO L290 TraceCheckUtils]: 45: Hoare triple {78829#true} assume !(0 == ~cond); {78829#true} is VALID [2022-04-28 06:05:33,463 INFO L290 TraceCheckUtils]: 44: Hoare triple {78829#true} ~cond := #in~cond; {78829#true} is VALID [2022-04-28 06:05:33,463 INFO L272 TraceCheckUtils]: 43: Hoare triple {79392#(< ~counter~0 43)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {78829#true} is VALID [2022-04-28 06:05:33,463 INFO L290 TraceCheckUtils]: 42: Hoare triple {79392#(< ~counter~0 43)} assume !!(#t~post8 < 50);havoc #t~post8; {79392#(< ~counter~0 43)} is VALID [2022-04-28 06:05:33,464 INFO L290 TraceCheckUtils]: 41: Hoare triple {79417#(< ~counter~0 42)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79392#(< ~counter~0 43)} is VALID [2022-04-28 06:05:33,465 INFO L290 TraceCheckUtils]: 40: Hoare triple {79417#(< ~counter~0 42)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {79417#(< ~counter~0 42)} is VALID [2022-04-28 06:05:33,465 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {78829#true} {79417#(< ~counter~0 42)} #98#return; {79417#(< ~counter~0 42)} is VALID [2022-04-28 06:05:33,465 INFO L290 TraceCheckUtils]: 38: Hoare triple {78829#true} assume true; {78829#true} is VALID [2022-04-28 06:05:33,465 INFO L290 TraceCheckUtils]: 37: Hoare triple {78829#true} assume !(0 == ~cond); {78829#true} is VALID [2022-04-28 06:05:33,465 INFO L290 TraceCheckUtils]: 36: Hoare triple {78829#true} ~cond := #in~cond; {78829#true} is VALID [2022-04-28 06:05:33,465 INFO L272 TraceCheckUtils]: 35: Hoare triple {79417#(< ~counter~0 42)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {78829#true} is VALID [2022-04-28 06:05:33,466 INFO L290 TraceCheckUtils]: 34: Hoare triple {79417#(< ~counter~0 42)} assume !!(#t~post8 < 50);havoc #t~post8; {79417#(< ~counter~0 42)} is VALID [2022-04-28 06:05:33,466 INFO L290 TraceCheckUtils]: 33: Hoare triple {79442#(< ~counter~0 41)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79417#(< ~counter~0 42)} is VALID [2022-04-28 06:05:33,467 INFO L290 TraceCheckUtils]: 32: Hoare triple {79442#(< ~counter~0 41)} assume !(~r~0 > 0); {79442#(< ~counter~0 41)} is VALID [2022-04-28 06:05:33,467 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {78829#true} {79442#(< ~counter~0 41)} #96#return; {79442#(< ~counter~0 41)} is VALID [2022-04-28 06:05:33,467 INFO L290 TraceCheckUtils]: 30: Hoare triple {78829#true} assume true; {78829#true} is VALID [2022-04-28 06:05:33,467 INFO L290 TraceCheckUtils]: 29: Hoare triple {78829#true} assume !(0 == ~cond); {78829#true} is VALID [2022-04-28 06:05:33,467 INFO L290 TraceCheckUtils]: 28: Hoare triple {78829#true} ~cond := #in~cond; {78829#true} is VALID [2022-04-28 06:05:33,467 INFO L272 TraceCheckUtils]: 27: Hoare triple {79442#(< ~counter~0 41)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {78829#true} is VALID [2022-04-28 06:05:33,468 INFO L290 TraceCheckUtils]: 26: Hoare triple {79442#(< ~counter~0 41)} assume !!(#t~post7 < 50);havoc #t~post7; {79442#(< ~counter~0 41)} is VALID [2022-04-28 06:05:33,469 INFO L290 TraceCheckUtils]: 25: Hoare triple {79467#(< ~counter~0 40)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79442#(< ~counter~0 41)} is VALID [2022-04-28 06:05:33,469 INFO L290 TraceCheckUtils]: 24: Hoare triple {79467#(< ~counter~0 40)} assume !!(0 != ~r~0); {79467#(< ~counter~0 40)} is VALID [2022-04-28 06:05:33,469 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {78829#true} {79467#(< ~counter~0 40)} #94#return; {79467#(< ~counter~0 40)} is VALID [2022-04-28 06:05:33,469 INFO L290 TraceCheckUtils]: 22: Hoare triple {78829#true} assume true; {78829#true} is VALID [2022-04-28 06:05:33,470 INFO L290 TraceCheckUtils]: 21: Hoare triple {78829#true} assume !(0 == ~cond); {78829#true} is VALID [2022-04-28 06:05:33,470 INFO L290 TraceCheckUtils]: 20: Hoare triple {78829#true} ~cond := #in~cond; {78829#true} is VALID [2022-04-28 06:05:33,470 INFO L272 TraceCheckUtils]: 19: Hoare triple {79467#(< ~counter~0 40)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {78829#true} is VALID [2022-04-28 06:05:33,470 INFO L290 TraceCheckUtils]: 18: Hoare triple {79467#(< ~counter~0 40)} assume !!(#t~post6 < 50);havoc #t~post6; {79467#(< ~counter~0 40)} is VALID [2022-04-28 06:05:33,471 INFO L290 TraceCheckUtils]: 17: Hoare triple {79492#(< ~counter~0 39)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79467#(< ~counter~0 40)} is VALID [2022-04-28 06:05:33,471 INFO L290 TraceCheckUtils]: 16: Hoare triple {79492#(< ~counter~0 39)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {79492#(< ~counter~0 39)} is VALID [2022-04-28 06:05:33,471 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {78829#true} {79492#(< ~counter~0 39)} #92#return; {79492#(< ~counter~0 39)} is VALID [2022-04-28 06:05:33,472 INFO L290 TraceCheckUtils]: 14: Hoare triple {78829#true} assume true; {78829#true} is VALID [2022-04-28 06:05:33,472 INFO L290 TraceCheckUtils]: 13: Hoare triple {78829#true} assume !(0 == ~cond); {78829#true} is VALID [2022-04-28 06:05:33,472 INFO L290 TraceCheckUtils]: 12: Hoare triple {78829#true} ~cond := #in~cond; {78829#true} is VALID [2022-04-28 06:05:33,472 INFO L272 TraceCheckUtils]: 11: Hoare triple {79492#(< ~counter~0 39)} 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)); {78829#true} is VALID [2022-04-28 06:05:33,472 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {78829#true} {79492#(< ~counter~0 39)} #90#return; {79492#(< ~counter~0 39)} is VALID [2022-04-28 06:05:33,472 INFO L290 TraceCheckUtils]: 9: Hoare triple {78829#true} assume true; {78829#true} is VALID [2022-04-28 06:05:33,472 INFO L290 TraceCheckUtils]: 8: Hoare triple {78829#true} assume !(0 == ~cond); {78829#true} is VALID [2022-04-28 06:05:33,472 INFO L290 TraceCheckUtils]: 7: Hoare triple {78829#true} ~cond := #in~cond; {78829#true} is VALID [2022-04-28 06:05:33,472 INFO L272 TraceCheckUtils]: 6: Hoare triple {79492#(< ~counter~0 39)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {78829#true} is VALID [2022-04-28 06:05:33,473 INFO L290 TraceCheckUtils]: 5: Hoare triple {79492#(< ~counter~0 39)} 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; {79492#(< ~counter~0 39)} is VALID [2022-04-28 06:05:33,473 INFO L272 TraceCheckUtils]: 4: Hoare triple {79492#(< ~counter~0 39)} call #t~ret9 := main(); {79492#(< ~counter~0 39)} is VALID [2022-04-28 06:05:33,473 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {79492#(< ~counter~0 39)} {78829#true} #102#return; {79492#(< ~counter~0 39)} is VALID [2022-04-28 06:05:33,474 INFO L290 TraceCheckUtils]: 2: Hoare triple {79492#(< ~counter~0 39)} assume true; {79492#(< ~counter~0 39)} is VALID [2022-04-28 06:05:33,474 INFO L290 TraceCheckUtils]: 1: Hoare triple {78829#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {79492#(< ~counter~0 39)} is VALID [2022-04-28 06:05:33,474 INFO L272 TraceCheckUtils]: 0: Hoare triple {78829#true} call ULTIMATE.init(); {78829#true} is VALID [2022-04-28 06:05:33,474 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-28 06:05:33,475 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:05:33,475 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1803657998] [2022-04-28 06:05:33,475 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:05:33,475 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [198252173] [2022-04-28 06:05:33,475 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [198252173] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:05:33,475 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:05:33,475 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 28 [2022-04-28 06:05:33,475 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:05:33,475 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1090151829] [2022-04-28 06:05:33,475 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1090151829] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:05:33,475 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:05:33,475 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 06:05:33,475 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2041439736] [2022-04-28 06:05:33,476 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:05:33,476 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-28 06:05:33,476 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:05:33,476 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-28 06:05:33,580 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:05:33,581 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 06:05:33,581 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:05:33,581 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 06:05:33,581 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=330, Invalid=426, Unknown=0, NotChecked=0, Total=756 [2022-04-28 06:05:33,581 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-28 06:05:36,135 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:05:36,136 INFO L93 Difference]: Finished difference Result 827 states and 1141 transitions. [2022-04-28 06:05:36,136 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2022-04-28 06:05:36,136 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-28 06:05:36,136 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:05:36,137 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-28 06:05:36,138 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 256 transitions. [2022-04-28 06:05:36,139 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-28 06:05:36,140 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 256 transitions. [2022-04-28 06:05:36,140 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 25 states and 256 transitions. [2022-04-28 06:05:36,388 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-28 06:05:36,404 INFO L225 Difference]: With dead ends: 827 [2022-04-28 06:05:36,404 INFO L226 Difference]: Without dead ends: 626 [2022-04-28 06:05:36,405 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 239 GetRequests, 203 SyntacticMatches, 0 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 79 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=590, Invalid=816, Unknown=0, NotChecked=0, Total=1406 [2022-04-28 06:05:36,410 INFO L413 NwaCegarLoop]: 63 mSDtfsCounter, 171 mSDsluCounter, 200 mSDsCounter, 0 mSdLazyCounter, 162 mSolverCounterSat, 140 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 171 SdHoareTripleChecker+Valid, 263 SdHoareTripleChecker+Invalid, 302 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 140 IncrementalHoareTripleChecker+Valid, 162 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 06:05:36,410 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [171 Valid, 263 Invalid, 302 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [140 Valid, 162 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 06:05:36,410 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 626 states. [2022-04-28 06:05:38,446 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 626 to 626. [2022-04-28 06:05:38,446 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:05:38,447 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-28 06:05:38,448 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-28 06:05:38,448 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-28 06:05:38,473 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:05:38,473 INFO L93 Difference]: Finished difference Result 626 states and 830 transitions. [2022-04-28 06:05:38,473 INFO L276 IsEmpty]: Start isEmpty. Operand 626 states and 830 transitions. [2022-04-28 06:05:38,474 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:05:38,474 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:05:38,475 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-28 06:05:38,475 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-28 06:05:38,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:05:38,499 INFO L93 Difference]: Finished difference Result 626 states and 830 transitions. [2022-04-28 06:05:38,500 INFO L276 IsEmpty]: Start isEmpty. Operand 626 states and 830 transitions. [2022-04-28 06:05:38,500 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:05:38,500 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:05:38,500 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:05:38,500 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:05:38,501 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-28 06:05:38,518 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 626 states to 626 states and 830 transitions. [2022-04-28 06:05:38,519 INFO L78 Accepts]: Start accepts. Automaton has 626 states and 830 transitions. Word has length 115 [2022-04-28 06:05:38,519 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:05:38,519 INFO L495 AbstractCegarLoop]: Abstraction has 626 states and 830 transitions. [2022-04-28 06:05:38,519 INFO L496 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-28 06:05:38,519 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 626 states and 830 transitions. [2022-04-28 06:05:52,353 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 830 edges. 827 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-28 06:05:52,353 INFO L276 IsEmpty]: Start isEmpty. Operand 626 states and 830 transitions. [2022-04-28 06:05:52,354 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 120 [2022-04-28 06:05:52,354 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:05:52,354 INFO L195 NwaCegarLoop]: 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-28 06:05:52,360 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Forceful destruction successful, exit code 0 [2022-04-28 06:05:52,554 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 39 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable37 [2022-04-28 06:05:52,554 INFO L420 AbstractCegarLoop]: === Iteration 39 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:05:52,555 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:05:52,555 INFO L85 PathProgramCache]: Analyzing trace with hash 650985841, now seen corresponding path program 7 times [2022-04-28 06:05:52,555 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:05:52,555 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1840042222] [2022-04-28 06:05:52,555 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:05:52,555 INFO L85 PathProgramCache]: Analyzing trace with hash 650985841, now seen corresponding path program 8 times [2022-04-28 06:05:52,555 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:05:52,555 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [494809071] [2022-04-28 06:05:52,555 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:05:52,556 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:05:52,569 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:05:52,572 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [917331248] [2022-04-28 06:05:52,572 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:05:52,572 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:05:52,572 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:05:52,576 INFO L229 MonitoredProcess]: Starting monitored process 40 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:05:52,577 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Waiting until timeout for monitored process [2022-04-28 06:05:52,640 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:05:52,640 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:05:52,641 INFO L263 TraceCheckSpWp]: Trace formula consists of 297 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-28 06:05:52,661 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:05:52,662 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:05:53,551 INFO L272 TraceCheckUtils]: 0: Hoare triple {83724#true} call ULTIMATE.init(); {83724#true} is VALID [2022-04-28 06:05:53,552 INFO L290 TraceCheckUtils]: 1: Hoare triple {83724#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,552 INFO L290 TraceCheckUtils]: 2: Hoare triple {83732#(<= ~counter~0 0)} assume true; {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,552 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {83732#(<= ~counter~0 0)} {83724#true} #102#return; {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,552 INFO L272 TraceCheckUtils]: 4: Hoare triple {83732#(<= ~counter~0 0)} call #t~ret9 := main(); {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,553 INFO L290 TraceCheckUtils]: 5: Hoare triple {83732#(<= ~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; {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,553 INFO L272 TraceCheckUtils]: 6: Hoare triple {83732#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,553 INFO L290 TraceCheckUtils]: 7: Hoare triple {83732#(<= ~counter~0 0)} ~cond := #in~cond; {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,554 INFO L290 TraceCheckUtils]: 8: Hoare triple {83732#(<= ~counter~0 0)} assume !(0 == ~cond); {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,554 INFO L290 TraceCheckUtils]: 9: Hoare triple {83732#(<= ~counter~0 0)} assume true; {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,554 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {83732#(<= ~counter~0 0)} {83732#(<= ~counter~0 0)} #90#return; {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,555 INFO L272 TraceCheckUtils]: 11: Hoare triple {83732#(<= ~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)); {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,555 INFO L290 TraceCheckUtils]: 12: Hoare triple {83732#(<= ~counter~0 0)} ~cond := #in~cond; {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,555 INFO L290 TraceCheckUtils]: 13: Hoare triple {83732#(<= ~counter~0 0)} assume !(0 == ~cond); {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,556 INFO L290 TraceCheckUtils]: 14: Hoare triple {83732#(<= ~counter~0 0)} assume true; {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,556 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {83732#(<= ~counter~0 0)} {83732#(<= ~counter~0 0)} #92#return; {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,557 INFO L290 TraceCheckUtils]: 16: Hoare triple {83732#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {83732#(<= ~counter~0 0)} is VALID [2022-04-28 06:05:53,558 INFO L290 TraceCheckUtils]: 17: Hoare triple {83732#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {83781#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:53,559 INFO L290 TraceCheckUtils]: 18: Hoare triple {83781#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {83781#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:53,559 INFO L272 TraceCheckUtils]: 19: Hoare triple {83781#(<= ~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)); {83781#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:53,560 INFO L290 TraceCheckUtils]: 20: Hoare triple {83781#(<= ~counter~0 1)} ~cond := #in~cond; {83781#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:53,560 INFO L290 TraceCheckUtils]: 21: Hoare triple {83781#(<= ~counter~0 1)} assume !(0 == ~cond); {83781#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:53,560 INFO L290 TraceCheckUtils]: 22: Hoare triple {83781#(<= ~counter~0 1)} assume true; {83781#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:53,561 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {83781#(<= ~counter~0 1)} {83781#(<= ~counter~0 1)} #94#return; {83781#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:53,561 INFO L290 TraceCheckUtils]: 24: Hoare triple {83781#(<= ~counter~0 1)} assume !!(0 != ~r~0); {83781#(<= ~counter~0 1)} is VALID [2022-04-28 06:05:53,562 INFO L290 TraceCheckUtils]: 25: Hoare triple {83781#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {83806#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:53,562 INFO L290 TraceCheckUtils]: 26: Hoare triple {83806#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {83806#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:53,563 INFO L272 TraceCheckUtils]: 27: Hoare triple {83806#(<= ~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)); {83806#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:53,563 INFO L290 TraceCheckUtils]: 28: Hoare triple {83806#(<= ~counter~0 2)} ~cond := #in~cond; {83806#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:53,563 INFO L290 TraceCheckUtils]: 29: Hoare triple {83806#(<= ~counter~0 2)} assume !(0 == ~cond); {83806#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:53,564 INFO L290 TraceCheckUtils]: 30: Hoare triple {83806#(<= ~counter~0 2)} assume true; {83806#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:53,564 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {83806#(<= ~counter~0 2)} {83806#(<= ~counter~0 2)} #96#return; {83806#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:53,564 INFO L290 TraceCheckUtils]: 32: Hoare triple {83806#(<= ~counter~0 2)} assume !(~r~0 > 0); {83806#(<= ~counter~0 2)} is VALID [2022-04-28 06:05:53,565 INFO L290 TraceCheckUtils]: 33: Hoare triple {83806#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {83831#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:53,566 INFO L290 TraceCheckUtils]: 34: Hoare triple {83831#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {83831#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:53,566 INFO L272 TraceCheckUtils]: 35: Hoare triple {83831#(<= ~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)); {83831#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:53,566 INFO L290 TraceCheckUtils]: 36: Hoare triple {83831#(<= ~counter~0 3)} ~cond := #in~cond; {83831#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:53,567 INFO L290 TraceCheckUtils]: 37: Hoare triple {83831#(<= ~counter~0 3)} assume !(0 == ~cond); {83831#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:53,567 INFO L290 TraceCheckUtils]: 38: Hoare triple {83831#(<= ~counter~0 3)} assume true; {83831#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:53,567 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {83831#(<= ~counter~0 3)} {83831#(<= ~counter~0 3)} #98#return; {83831#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:53,568 INFO L290 TraceCheckUtils]: 40: Hoare triple {83831#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {83831#(<= ~counter~0 3)} is VALID [2022-04-28 06:05:53,569 INFO L290 TraceCheckUtils]: 41: Hoare triple {83831#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {83856#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:53,569 INFO L290 TraceCheckUtils]: 42: Hoare triple {83856#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {83856#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:53,570 INFO L272 TraceCheckUtils]: 43: Hoare triple {83856#(<= ~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)); {83856#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:53,570 INFO L290 TraceCheckUtils]: 44: Hoare triple {83856#(<= ~counter~0 4)} ~cond := #in~cond; {83856#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:53,570 INFO L290 TraceCheckUtils]: 45: Hoare triple {83856#(<= ~counter~0 4)} assume !(0 == ~cond); {83856#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:53,571 INFO L290 TraceCheckUtils]: 46: Hoare triple {83856#(<= ~counter~0 4)} assume true; {83856#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:53,571 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {83856#(<= ~counter~0 4)} {83856#(<= ~counter~0 4)} #98#return; {83856#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:53,571 INFO L290 TraceCheckUtils]: 48: Hoare triple {83856#(<= ~counter~0 4)} assume !(~r~0 < 0); {83856#(<= ~counter~0 4)} is VALID [2022-04-28 06:05:53,572 INFO L290 TraceCheckUtils]: 49: Hoare triple {83856#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {83881#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:53,573 INFO L290 TraceCheckUtils]: 50: Hoare triple {83881#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {83881#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:53,573 INFO L272 TraceCheckUtils]: 51: Hoare triple {83881#(<= ~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)); {83881#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:53,573 INFO L290 TraceCheckUtils]: 52: Hoare triple {83881#(<= ~counter~0 5)} ~cond := #in~cond; {83881#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:53,574 INFO L290 TraceCheckUtils]: 53: Hoare triple {83881#(<= ~counter~0 5)} assume !(0 == ~cond); {83881#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:53,574 INFO L290 TraceCheckUtils]: 54: Hoare triple {83881#(<= ~counter~0 5)} assume true; {83881#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:53,574 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {83881#(<= ~counter~0 5)} {83881#(<= ~counter~0 5)} #94#return; {83881#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:53,575 INFO L290 TraceCheckUtils]: 56: Hoare triple {83881#(<= ~counter~0 5)} assume !!(0 != ~r~0); {83881#(<= ~counter~0 5)} is VALID [2022-04-28 06:05:53,576 INFO L290 TraceCheckUtils]: 57: Hoare triple {83881#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {83906#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:53,576 INFO L290 TraceCheckUtils]: 58: Hoare triple {83906#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {83906#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:53,577 INFO L272 TraceCheckUtils]: 59: Hoare triple {83906#(<= ~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)); {83906#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:53,577 INFO L290 TraceCheckUtils]: 60: Hoare triple {83906#(<= ~counter~0 6)} ~cond := #in~cond; {83906#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:53,577 INFO L290 TraceCheckUtils]: 61: Hoare triple {83906#(<= ~counter~0 6)} assume !(0 == ~cond); {83906#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:53,577 INFO L290 TraceCheckUtils]: 62: Hoare triple {83906#(<= ~counter~0 6)} assume true; {83906#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:53,578 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {83906#(<= ~counter~0 6)} {83906#(<= ~counter~0 6)} #96#return; {83906#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:53,578 INFO L290 TraceCheckUtils]: 64: Hoare triple {83906#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {83906#(<= ~counter~0 6)} is VALID [2022-04-28 06:05:53,579 INFO L290 TraceCheckUtils]: 65: Hoare triple {83906#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {83931#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:53,579 INFO L290 TraceCheckUtils]: 66: Hoare triple {83931#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {83931#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:53,580 INFO L272 TraceCheckUtils]: 67: Hoare triple {83931#(<= ~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)); {83931#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:53,580 INFO L290 TraceCheckUtils]: 68: Hoare triple {83931#(<= ~counter~0 7)} ~cond := #in~cond; {83931#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:53,580 INFO L290 TraceCheckUtils]: 69: Hoare triple {83931#(<= ~counter~0 7)} assume !(0 == ~cond); {83931#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:53,581 INFO L290 TraceCheckUtils]: 70: Hoare triple {83931#(<= ~counter~0 7)} assume true; {83931#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:53,581 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {83931#(<= ~counter~0 7)} {83931#(<= ~counter~0 7)} #96#return; {83931#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:53,581 INFO L290 TraceCheckUtils]: 72: Hoare triple {83931#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {83931#(<= ~counter~0 7)} is VALID [2022-04-28 06:05:53,583 INFO L290 TraceCheckUtils]: 73: Hoare triple {83931#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {83956#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:53,583 INFO L290 TraceCheckUtils]: 74: Hoare triple {83956#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {83956#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:53,584 INFO L272 TraceCheckUtils]: 75: Hoare triple {83956#(<= ~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)); {83956#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:53,584 INFO L290 TraceCheckUtils]: 76: Hoare triple {83956#(<= ~counter~0 8)} ~cond := #in~cond; {83956#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:53,584 INFO L290 TraceCheckUtils]: 77: Hoare triple {83956#(<= ~counter~0 8)} assume !(0 == ~cond); {83956#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:53,584 INFO L290 TraceCheckUtils]: 78: Hoare triple {83956#(<= ~counter~0 8)} assume true; {83956#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:53,585 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {83956#(<= ~counter~0 8)} {83956#(<= ~counter~0 8)} #96#return; {83956#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:53,585 INFO L290 TraceCheckUtils]: 80: Hoare triple {83956#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {83956#(<= ~counter~0 8)} is VALID [2022-04-28 06:05:53,586 INFO L290 TraceCheckUtils]: 81: Hoare triple {83956#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {83981#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:53,586 INFO L290 TraceCheckUtils]: 82: Hoare triple {83981#(<= ~counter~0 9)} assume !!(#t~post7 < 50);havoc #t~post7; {83981#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:53,587 INFO L272 TraceCheckUtils]: 83: Hoare triple {83981#(<= ~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)); {83981#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:53,587 INFO L290 TraceCheckUtils]: 84: Hoare triple {83981#(<= ~counter~0 9)} ~cond := #in~cond; {83981#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:53,587 INFO L290 TraceCheckUtils]: 85: Hoare triple {83981#(<= ~counter~0 9)} assume !(0 == ~cond); {83981#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:53,588 INFO L290 TraceCheckUtils]: 86: Hoare triple {83981#(<= ~counter~0 9)} assume true; {83981#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:53,588 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {83981#(<= ~counter~0 9)} {83981#(<= ~counter~0 9)} #96#return; {83981#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:53,588 INFO L290 TraceCheckUtils]: 88: Hoare triple {83981#(<= ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {83981#(<= ~counter~0 9)} is VALID [2022-04-28 06:05:53,590 INFO L290 TraceCheckUtils]: 89: Hoare triple {83981#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {84006#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:53,590 INFO L290 TraceCheckUtils]: 90: Hoare triple {84006#(<= ~counter~0 10)} assume !!(#t~post7 < 50);havoc #t~post7; {84006#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:53,590 INFO L272 TraceCheckUtils]: 91: Hoare triple {84006#(<= ~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)); {84006#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:53,591 INFO L290 TraceCheckUtils]: 92: Hoare triple {84006#(<= ~counter~0 10)} ~cond := #in~cond; {84006#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:53,591 INFO L290 TraceCheckUtils]: 93: Hoare triple {84006#(<= ~counter~0 10)} assume !(0 == ~cond); {84006#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:53,591 INFO L290 TraceCheckUtils]: 94: Hoare triple {84006#(<= ~counter~0 10)} assume true; {84006#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:53,592 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {84006#(<= ~counter~0 10)} {84006#(<= ~counter~0 10)} #96#return; {84006#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:53,592 INFO L290 TraceCheckUtils]: 96: Hoare triple {84006#(<= ~counter~0 10)} assume !(~r~0 > 0); {84006#(<= ~counter~0 10)} is VALID [2022-04-28 06:05:53,593 INFO L290 TraceCheckUtils]: 97: Hoare triple {84006#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {84031#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:53,593 INFO L290 TraceCheckUtils]: 98: Hoare triple {84031#(<= ~counter~0 11)} assume !!(#t~post8 < 50);havoc #t~post8; {84031#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:53,594 INFO L272 TraceCheckUtils]: 99: Hoare triple {84031#(<= ~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)); {84031#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:53,594 INFO L290 TraceCheckUtils]: 100: Hoare triple {84031#(<= ~counter~0 11)} ~cond := #in~cond; {84031#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:53,594 INFO L290 TraceCheckUtils]: 101: Hoare triple {84031#(<= ~counter~0 11)} assume !(0 == ~cond); {84031#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:53,595 INFO L290 TraceCheckUtils]: 102: Hoare triple {84031#(<= ~counter~0 11)} assume true; {84031#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:53,595 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {84031#(<= ~counter~0 11)} {84031#(<= ~counter~0 11)} #98#return; {84031#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:53,595 INFO L290 TraceCheckUtils]: 104: Hoare triple {84031#(<= ~counter~0 11)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {84031#(<= ~counter~0 11)} is VALID [2022-04-28 06:05:53,596 INFO L290 TraceCheckUtils]: 105: Hoare triple {84031#(<= ~counter~0 11)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {84056#(<= ~counter~0 12)} is VALID [2022-04-28 06:05:53,597 INFO L290 TraceCheckUtils]: 106: Hoare triple {84056#(<= ~counter~0 12)} assume !!(#t~post8 < 50);havoc #t~post8; {84056#(<= ~counter~0 12)} is VALID [2022-04-28 06:05:53,597 INFO L272 TraceCheckUtils]: 107: Hoare triple {84056#(<= ~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)); {84056#(<= ~counter~0 12)} is VALID [2022-04-28 06:05:53,597 INFO L290 TraceCheckUtils]: 108: Hoare triple {84056#(<= ~counter~0 12)} ~cond := #in~cond; {84056#(<= ~counter~0 12)} is VALID [2022-04-28 06:05:53,598 INFO L290 TraceCheckUtils]: 109: Hoare triple {84056#(<= ~counter~0 12)} assume !(0 == ~cond); {84056#(<= ~counter~0 12)} is VALID [2022-04-28 06:05:53,598 INFO L290 TraceCheckUtils]: 110: Hoare triple {84056#(<= ~counter~0 12)} assume true; {84056#(<= ~counter~0 12)} is VALID [2022-04-28 06:05:53,598 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {84056#(<= ~counter~0 12)} {84056#(<= ~counter~0 12)} #98#return; {84056#(<= ~counter~0 12)} is VALID [2022-04-28 06:05:53,599 INFO L290 TraceCheckUtils]: 112: Hoare triple {84056#(<= ~counter~0 12)} assume !(~r~0 < 0); {84056#(<= ~counter~0 12)} is VALID [2022-04-28 06:05:53,599 INFO L290 TraceCheckUtils]: 113: Hoare triple {84056#(<= ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {84081#(<= |main_#t~post6| 12)} is VALID [2022-04-28 06:05:53,599 INFO L290 TraceCheckUtils]: 114: Hoare triple {84081#(<= |main_#t~post6| 12)} assume !(#t~post6 < 50);havoc #t~post6; {83725#false} is VALID [2022-04-28 06:05:53,611 INFO L272 TraceCheckUtils]: 115: Hoare triple {83725#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)); {83725#false} is VALID [2022-04-28 06:05:53,611 INFO L290 TraceCheckUtils]: 116: Hoare triple {83725#false} ~cond := #in~cond; {83725#false} is VALID [2022-04-28 06:05:53,611 INFO L290 TraceCheckUtils]: 117: Hoare triple {83725#false} assume 0 == ~cond; {83725#false} is VALID [2022-04-28 06:05:53,611 INFO L290 TraceCheckUtils]: 118: Hoare triple {83725#false} assume !false; {83725#false} is VALID [2022-04-28 06:05:53,612 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-28 06:05:53,612 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:05:54,458 INFO L290 TraceCheckUtils]: 118: Hoare triple {83725#false} assume !false; {83725#false} is VALID [2022-04-28 06:05:54,458 INFO L290 TraceCheckUtils]: 117: Hoare triple {83725#false} assume 0 == ~cond; {83725#false} is VALID [2022-04-28 06:05:54,458 INFO L290 TraceCheckUtils]: 116: Hoare triple {83725#false} ~cond := #in~cond; {83725#false} is VALID [2022-04-28 06:05:54,458 INFO L272 TraceCheckUtils]: 115: Hoare triple {83725#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)); {83725#false} is VALID [2022-04-28 06:05:54,458 INFO L290 TraceCheckUtils]: 114: Hoare triple {84109#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {83725#false} is VALID [2022-04-28 06:05:54,459 INFO L290 TraceCheckUtils]: 113: Hoare triple {84113#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {84109#(< |main_#t~post6| 50)} is VALID [2022-04-28 06:05:54,459 INFO L290 TraceCheckUtils]: 112: Hoare triple {84113#(< ~counter~0 50)} assume !(~r~0 < 0); {84113#(< ~counter~0 50)} is VALID [2022-04-28 06:05:54,459 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {83724#true} {84113#(< ~counter~0 50)} #98#return; {84113#(< ~counter~0 50)} is VALID [2022-04-28 06:05:54,460 INFO L290 TraceCheckUtils]: 110: Hoare triple {83724#true} assume true; {83724#true} is VALID [2022-04-28 06:05:54,460 INFO L290 TraceCheckUtils]: 109: Hoare triple {83724#true} assume !(0 == ~cond); {83724#true} is VALID [2022-04-28 06:05:54,460 INFO L290 TraceCheckUtils]: 108: Hoare triple {83724#true} ~cond := #in~cond; {83724#true} is VALID [2022-04-28 06:05:54,460 INFO L272 TraceCheckUtils]: 107: Hoare triple {84113#(< ~counter~0 50)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {83724#true} is VALID [2022-04-28 06:05:54,460 INFO L290 TraceCheckUtils]: 106: Hoare triple {84113#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {84113#(< ~counter~0 50)} is VALID [2022-04-28 06:05:54,462 INFO L290 TraceCheckUtils]: 105: Hoare triple {84138#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {84113#(< ~counter~0 50)} is VALID [2022-04-28 06:05:54,462 INFO L290 TraceCheckUtils]: 104: Hoare triple {84138#(< ~counter~0 49)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {84138#(< ~counter~0 49)} is VALID [2022-04-28 06:05:54,463 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {83724#true} {84138#(< ~counter~0 49)} #98#return; {84138#(< ~counter~0 49)} is VALID [2022-04-28 06:05:54,463 INFO L290 TraceCheckUtils]: 102: Hoare triple {83724#true} assume true; {83724#true} is VALID [2022-04-28 06:05:54,463 INFO L290 TraceCheckUtils]: 101: Hoare triple {83724#true} assume !(0 == ~cond); {83724#true} is VALID [2022-04-28 06:05:54,463 INFO L290 TraceCheckUtils]: 100: Hoare triple {83724#true} ~cond := #in~cond; {83724#true} is VALID [2022-04-28 06:05:54,463 INFO L272 TraceCheckUtils]: 99: Hoare triple {84138#(< ~counter~0 49)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {83724#true} is VALID [2022-04-28 06:05:54,463 INFO L290 TraceCheckUtils]: 98: Hoare triple {84138#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {84138#(< ~counter~0 49)} is VALID [2022-04-28 06:05:54,464 INFO L290 TraceCheckUtils]: 97: Hoare triple {84163#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {84138#(< ~counter~0 49)} is VALID [2022-04-28 06:05:54,465 INFO L290 TraceCheckUtils]: 96: Hoare triple {84163#(< ~counter~0 48)} assume !(~r~0 > 0); {84163#(< ~counter~0 48)} is VALID [2022-04-28 06:05:54,465 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {83724#true} {84163#(< ~counter~0 48)} #96#return; {84163#(< ~counter~0 48)} is VALID [2022-04-28 06:05:54,465 INFO L290 TraceCheckUtils]: 94: Hoare triple {83724#true} assume true; {83724#true} is VALID [2022-04-28 06:05:54,465 INFO L290 TraceCheckUtils]: 93: Hoare triple {83724#true} assume !(0 == ~cond); {83724#true} is VALID [2022-04-28 06:05:54,465 INFO L290 TraceCheckUtils]: 92: Hoare triple {83724#true} ~cond := #in~cond; {83724#true} is VALID [2022-04-28 06:05:54,465 INFO L272 TraceCheckUtils]: 91: Hoare triple {84163#(< ~counter~0 48)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {83724#true} is VALID [2022-04-28 06:05:54,466 INFO L290 TraceCheckUtils]: 90: Hoare triple {84163#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {84163#(< ~counter~0 48)} is VALID [2022-04-28 06:05:54,467 INFO L290 TraceCheckUtils]: 89: Hoare triple {84188#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {84163#(< ~counter~0 48)} is VALID [2022-04-28 06:05:54,467 INFO L290 TraceCheckUtils]: 88: Hoare triple {84188#(< ~counter~0 47)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {84188#(< ~counter~0 47)} is VALID [2022-04-28 06:05:54,467 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {83724#true} {84188#(< ~counter~0 47)} #96#return; {84188#(< ~counter~0 47)} is VALID [2022-04-28 06:05:54,467 INFO L290 TraceCheckUtils]: 86: Hoare triple {83724#true} assume true; {83724#true} is VALID [2022-04-28 06:05:54,468 INFO L290 TraceCheckUtils]: 85: Hoare triple {83724#true} assume !(0 == ~cond); {83724#true} is VALID [2022-04-28 06:05:54,468 INFO L290 TraceCheckUtils]: 84: Hoare triple {83724#true} ~cond := #in~cond; {83724#true} is VALID [2022-04-28 06:05:54,468 INFO L272 TraceCheckUtils]: 83: Hoare triple {84188#(< ~counter~0 47)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {83724#true} is VALID [2022-04-28 06:05:54,468 INFO L290 TraceCheckUtils]: 82: Hoare triple {84188#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {84188#(< ~counter~0 47)} is VALID [2022-04-28 06:05:54,469 INFO L290 TraceCheckUtils]: 81: Hoare triple {84213#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {84188#(< ~counter~0 47)} is VALID [2022-04-28 06:05:54,469 INFO L290 TraceCheckUtils]: 80: Hoare triple {84213#(< ~counter~0 46)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {84213#(< ~counter~0 46)} is VALID [2022-04-28 06:05:54,470 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {83724#true} {84213#(< ~counter~0 46)} #96#return; {84213#(< ~counter~0 46)} is VALID [2022-04-28 06:05:54,470 INFO L290 TraceCheckUtils]: 78: Hoare triple {83724#true} assume true; {83724#true} is VALID [2022-04-28 06:05:54,470 INFO L290 TraceCheckUtils]: 77: Hoare triple {83724#true} assume !(0 == ~cond); {83724#true} is VALID [2022-04-28 06:05:54,470 INFO L290 TraceCheckUtils]: 76: Hoare triple {83724#true} ~cond := #in~cond; {83724#true} is VALID [2022-04-28 06:05:54,470 INFO L272 TraceCheckUtils]: 75: Hoare triple {84213#(< ~counter~0 46)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {83724#true} is VALID [2022-04-28 06:05:54,470 INFO L290 TraceCheckUtils]: 74: Hoare triple {84213#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {84213#(< ~counter~0 46)} is VALID [2022-04-28 06:05:54,471 INFO L290 TraceCheckUtils]: 73: Hoare triple {84238#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {84213#(< ~counter~0 46)} is VALID [2022-04-28 06:05:54,471 INFO L290 TraceCheckUtils]: 72: Hoare triple {84238#(< ~counter~0 45)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {84238#(< ~counter~0 45)} is VALID [2022-04-28 06:05:54,472 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {83724#true} {84238#(< ~counter~0 45)} #96#return; {84238#(< ~counter~0 45)} is VALID [2022-04-28 06:05:54,472 INFO L290 TraceCheckUtils]: 70: Hoare triple {83724#true} assume true; {83724#true} is VALID [2022-04-28 06:05:54,472 INFO L290 TraceCheckUtils]: 69: Hoare triple {83724#true} assume !(0 == ~cond); {83724#true} is VALID [2022-04-28 06:05:54,472 INFO L290 TraceCheckUtils]: 68: Hoare triple {83724#true} ~cond := #in~cond; {83724#true} is VALID [2022-04-28 06:05:54,472 INFO L272 TraceCheckUtils]: 67: Hoare triple {84238#(< ~counter~0 45)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {83724#true} is VALID [2022-04-28 06:05:54,472 INFO L290 TraceCheckUtils]: 66: Hoare triple {84238#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {84238#(< ~counter~0 45)} is VALID [2022-04-28 06:05:54,473 INFO L290 TraceCheckUtils]: 65: Hoare triple {84263#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {84238#(< ~counter~0 45)} is VALID [2022-04-28 06:05:54,474 INFO L290 TraceCheckUtils]: 64: Hoare triple {84263#(< ~counter~0 44)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {84263#(< ~counter~0 44)} is VALID [2022-04-28 06:05:54,474 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {83724#true} {84263#(< ~counter~0 44)} #96#return; {84263#(< ~counter~0 44)} is VALID [2022-04-28 06:05:54,474 INFO L290 TraceCheckUtils]: 62: Hoare triple {83724#true} assume true; {83724#true} is VALID [2022-04-28 06:05:54,474 INFO L290 TraceCheckUtils]: 61: Hoare triple {83724#true} assume !(0 == ~cond); {83724#true} is VALID [2022-04-28 06:05:54,474 INFO L290 TraceCheckUtils]: 60: Hoare triple {83724#true} ~cond := #in~cond; {83724#true} is VALID [2022-04-28 06:05:54,474 INFO L272 TraceCheckUtils]: 59: Hoare triple {84263#(< ~counter~0 44)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {83724#true} is VALID [2022-04-28 06:05:54,475 INFO L290 TraceCheckUtils]: 58: Hoare triple {84263#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {84263#(< ~counter~0 44)} is VALID [2022-04-28 06:05:54,475 INFO L290 TraceCheckUtils]: 57: Hoare triple {84288#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {84263#(< ~counter~0 44)} is VALID [2022-04-28 06:05:54,476 INFO L290 TraceCheckUtils]: 56: Hoare triple {84288#(< ~counter~0 43)} assume !!(0 != ~r~0); {84288#(< ~counter~0 43)} is VALID [2022-04-28 06:05:54,476 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {83724#true} {84288#(< ~counter~0 43)} #94#return; {84288#(< ~counter~0 43)} is VALID [2022-04-28 06:05:54,476 INFO L290 TraceCheckUtils]: 54: Hoare triple {83724#true} assume true; {83724#true} is VALID [2022-04-28 06:05:54,476 INFO L290 TraceCheckUtils]: 53: Hoare triple {83724#true} assume !(0 == ~cond); {83724#true} is VALID [2022-04-28 06:05:54,476 INFO L290 TraceCheckUtils]: 52: Hoare triple {83724#true} ~cond := #in~cond; {83724#true} is VALID [2022-04-28 06:05:54,477 INFO L272 TraceCheckUtils]: 51: Hoare triple {84288#(< ~counter~0 43)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {83724#true} is VALID [2022-04-28 06:05:54,477 INFO L290 TraceCheckUtils]: 50: Hoare triple {84288#(< ~counter~0 43)} assume !!(#t~post6 < 50);havoc #t~post6; {84288#(< ~counter~0 43)} is VALID [2022-04-28 06:05:54,478 INFO L290 TraceCheckUtils]: 49: Hoare triple {84313#(< ~counter~0 42)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {84288#(< ~counter~0 43)} is VALID [2022-04-28 06:05:54,478 INFO L290 TraceCheckUtils]: 48: Hoare triple {84313#(< ~counter~0 42)} assume !(~r~0 < 0); {84313#(< ~counter~0 42)} is VALID [2022-04-28 06:05:54,478 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {83724#true} {84313#(< ~counter~0 42)} #98#return; {84313#(< ~counter~0 42)} is VALID [2022-04-28 06:05:54,479 INFO L290 TraceCheckUtils]: 46: Hoare triple {83724#true} assume true; {83724#true} is VALID [2022-04-28 06:05:54,479 INFO L290 TraceCheckUtils]: 45: Hoare triple {83724#true} assume !(0 == ~cond); {83724#true} is VALID [2022-04-28 06:05:54,479 INFO L290 TraceCheckUtils]: 44: Hoare triple {83724#true} ~cond := #in~cond; {83724#true} is VALID [2022-04-28 06:05:54,479 INFO L272 TraceCheckUtils]: 43: Hoare triple {84313#(< ~counter~0 42)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {83724#true} is VALID [2022-04-28 06:05:54,479 INFO L290 TraceCheckUtils]: 42: Hoare triple {84313#(< ~counter~0 42)} assume !!(#t~post8 < 50);havoc #t~post8; {84313#(< ~counter~0 42)} is VALID [2022-04-28 06:05:54,480 INFO L290 TraceCheckUtils]: 41: Hoare triple {84338#(< ~counter~0 41)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {84313#(< ~counter~0 42)} is VALID [2022-04-28 06:05:54,481 INFO L290 TraceCheckUtils]: 40: Hoare triple {84338#(< ~counter~0 41)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {84338#(< ~counter~0 41)} is VALID [2022-04-28 06:05:54,481 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {83724#true} {84338#(< ~counter~0 41)} #98#return; {84338#(< ~counter~0 41)} is VALID [2022-04-28 06:05:54,481 INFO L290 TraceCheckUtils]: 38: Hoare triple {83724#true} assume true; {83724#true} is VALID [2022-04-28 06:05:54,481 INFO L290 TraceCheckUtils]: 37: Hoare triple {83724#true} assume !(0 == ~cond); {83724#true} is VALID [2022-04-28 06:05:54,482 INFO L290 TraceCheckUtils]: 36: Hoare triple {83724#true} ~cond := #in~cond; {83724#true} is VALID [2022-04-28 06:05:54,482 INFO L272 TraceCheckUtils]: 35: Hoare triple {84338#(< ~counter~0 41)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {83724#true} is VALID [2022-04-28 06:05:54,482 INFO L290 TraceCheckUtils]: 34: Hoare triple {84338#(< ~counter~0 41)} assume !!(#t~post8 < 50);havoc #t~post8; {84338#(< ~counter~0 41)} is VALID [2022-04-28 06:05:54,483 INFO L290 TraceCheckUtils]: 33: Hoare triple {84363#(< ~counter~0 40)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {84338#(< ~counter~0 41)} is VALID [2022-04-28 06:05:54,483 INFO L290 TraceCheckUtils]: 32: Hoare triple {84363#(< ~counter~0 40)} assume !(~r~0 > 0); {84363#(< ~counter~0 40)} is VALID [2022-04-28 06:05:54,484 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {83724#true} {84363#(< ~counter~0 40)} #96#return; {84363#(< ~counter~0 40)} is VALID [2022-04-28 06:05:54,484 INFO L290 TraceCheckUtils]: 30: Hoare triple {83724#true} assume true; {83724#true} is VALID [2022-04-28 06:05:54,484 INFO L290 TraceCheckUtils]: 29: Hoare triple {83724#true} assume !(0 == ~cond); {83724#true} is VALID [2022-04-28 06:05:54,484 INFO L290 TraceCheckUtils]: 28: Hoare triple {83724#true} ~cond := #in~cond; {83724#true} is VALID [2022-04-28 06:05:54,484 INFO L272 TraceCheckUtils]: 27: Hoare triple {84363#(< ~counter~0 40)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {83724#true} is VALID [2022-04-28 06:05:54,485 INFO L290 TraceCheckUtils]: 26: Hoare triple {84363#(< ~counter~0 40)} assume !!(#t~post7 < 50);havoc #t~post7; {84363#(< ~counter~0 40)} is VALID [2022-04-28 06:05:54,486 INFO L290 TraceCheckUtils]: 25: Hoare triple {84388#(< ~counter~0 39)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {84363#(< ~counter~0 40)} is VALID [2022-04-28 06:05:54,486 INFO L290 TraceCheckUtils]: 24: Hoare triple {84388#(< ~counter~0 39)} assume !!(0 != ~r~0); {84388#(< ~counter~0 39)} is VALID [2022-04-28 06:05:54,486 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {83724#true} {84388#(< ~counter~0 39)} #94#return; {84388#(< ~counter~0 39)} is VALID [2022-04-28 06:05:54,486 INFO L290 TraceCheckUtils]: 22: Hoare triple {83724#true} assume true; {83724#true} is VALID [2022-04-28 06:05:54,487 INFO L290 TraceCheckUtils]: 21: Hoare triple {83724#true} assume !(0 == ~cond); {83724#true} is VALID [2022-04-28 06:05:54,487 INFO L290 TraceCheckUtils]: 20: Hoare triple {83724#true} ~cond := #in~cond; {83724#true} is VALID [2022-04-28 06:05:54,487 INFO L272 TraceCheckUtils]: 19: Hoare triple {84388#(< ~counter~0 39)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {83724#true} is VALID [2022-04-28 06:05:54,487 INFO L290 TraceCheckUtils]: 18: Hoare triple {84388#(< ~counter~0 39)} assume !!(#t~post6 < 50);havoc #t~post6; {84388#(< ~counter~0 39)} is VALID [2022-04-28 06:05:54,488 INFO L290 TraceCheckUtils]: 17: Hoare triple {84413#(< ~counter~0 38)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {84388#(< ~counter~0 39)} is VALID [2022-04-28 06:05:54,488 INFO L290 TraceCheckUtils]: 16: Hoare triple {84413#(< ~counter~0 38)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {84413#(< ~counter~0 38)} is VALID [2022-04-28 06:05:54,489 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {83724#true} {84413#(< ~counter~0 38)} #92#return; {84413#(< ~counter~0 38)} is VALID [2022-04-28 06:05:54,489 INFO L290 TraceCheckUtils]: 14: Hoare triple {83724#true} assume true; {83724#true} is VALID [2022-04-28 06:05:54,489 INFO L290 TraceCheckUtils]: 13: Hoare triple {83724#true} assume !(0 == ~cond); {83724#true} is VALID [2022-04-28 06:05:54,489 INFO L290 TraceCheckUtils]: 12: Hoare triple {83724#true} ~cond := #in~cond; {83724#true} is VALID [2022-04-28 06:05:54,489 INFO L272 TraceCheckUtils]: 11: Hoare triple {84413#(< ~counter~0 38)} 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)); {83724#true} is VALID [2022-04-28 06:05:54,489 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {83724#true} {84413#(< ~counter~0 38)} #90#return; {84413#(< ~counter~0 38)} is VALID [2022-04-28 06:05:54,489 INFO L290 TraceCheckUtils]: 9: Hoare triple {83724#true} assume true; {83724#true} is VALID [2022-04-28 06:05:54,489 INFO L290 TraceCheckUtils]: 8: Hoare triple {83724#true} assume !(0 == ~cond); {83724#true} is VALID [2022-04-28 06:05:54,489 INFO L290 TraceCheckUtils]: 7: Hoare triple {83724#true} ~cond := #in~cond; {83724#true} is VALID [2022-04-28 06:05:54,490 INFO L272 TraceCheckUtils]: 6: Hoare triple {84413#(< ~counter~0 38)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {83724#true} is VALID [2022-04-28 06:05:54,490 INFO L290 TraceCheckUtils]: 5: Hoare triple {84413#(< ~counter~0 38)} 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; {84413#(< ~counter~0 38)} is VALID [2022-04-28 06:05:54,490 INFO L272 TraceCheckUtils]: 4: Hoare triple {84413#(< ~counter~0 38)} call #t~ret9 := main(); {84413#(< ~counter~0 38)} is VALID [2022-04-28 06:05:54,490 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {84413#(< ~counter~0 38)} {83724#true} #102#return; {84413#(< ~counter~0 38)} is VALID [2022-04-28 06:05:54,491 INFO L290 TraceCheckUtils]: 2: Hoare triple {84413#(< ~counter~0 38)} assume true; {84413#(< ~counter~0 38)} is VALID [2022-04-28 06:05:54,491 INFO L290 TraceCheckUtils]: 1: Hoare triple {83724#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {84413#(< ~counter~0 38)} is VALID [2022-04-28 06:05:54,491 INFO L272 TraceCheckUtils]: 0: Hoare triple {83724#true} call ULTIMATE.init(); {83724#true} is VALID [2022-04-28 06:05:54,492 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-28 06:05:54,492 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:05:54,492 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [494809071] [2022-04-28 06:05:54,492 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:05:54,492 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [917331248] [2022-04-28 06:05:54,492 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [917331248] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:05:54,492 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:05:54,492 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 30 [2022-04-28 06:05:54,492 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:05:54,492 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1840042222] [2022-04-28 06:05:54,493 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1840042222] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:05:54,493 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:05:54,493 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 06:05:54,493 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1160151255] [2022-04-28 06:05:54,493 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:05:54,493 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-28 06:05:54,493 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:05:54,493 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-28 06:05:54,610 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-28 06:05:54,610 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 06:05:54,610 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:05:54,610 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 06:05:54,610 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=383, Invalid=487, Unknown=0, NotChecked=0, Total=870 [2022-04-28 06:05:54,611 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-28 06:05:57,097 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:05:57,097 INFO L93 Difference]: Finished difference Result 685 states and 910 transitions. [2022-04-28 06:05:57,097 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2022-04-28 06:05:57,097 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-28 06:05:57,100 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:05:57,100 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-28 06:05:57,102 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 254 transitions. [2022-04-28 06:05:57,102 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-28 06:05:57,104 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 254 transitions. [2022-04-28 06:05:57,104 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 25 states and 254 transitions. [2022-04-28 06:05:57,329 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 254 edges. 254 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:05:57,372 INFO L225 Difference]: With dead ends: 685 [2022-04-28 06:05:57,372 INFO L226 Difference]: Without dead ends: 674 [2022-04-28 06:05:57,373 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 246 GetRequests, 209 SyntacticMatches, 0 SemanticMatches, 37 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 73 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=620, Invalid=862, Unknown=0, NotChecked=0, Total=1482 [2022-04-28 06:05:57,373 INFO L413 NwaCegarLoop]: 66 mSDtfsCounter, 175 mSDsluCounter, 233 mSDsCounter, 0 mSdLazyCounter, 157 mSolverCounterSat, 165 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 175 SdHoareTripleChecker+Valid, 299 SdHoareTripleChecker+Invalid, 322 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 165 IncrementalHoareTripleChecker+Valid, 157 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 06:05:57,373 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [175 Valid, 299 Invalid, 322 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [165 Valid, 157 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 06:05:57,374 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 674 states. [2022-04-28 06:05:59,436 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 674 to 652. [2022-04-28 06:05:59,436 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:05:59,437 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-28 06:05:59,438 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-28 06:05:59,438 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-28 06:05:59,455 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:05:59,455 INFO L93 Difference]: Finished difference Result 674 states and 894 transitions. [2022-04-28 06:05:59,455 INFO L276 IsEmpty]: Start isEmpty. Operand 674 states and 894 transitions. [2022-04-28 06:05:59,456 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:05:59,456 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:05:59,457 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-28 06:05:59,457 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-28 06:05:59,472 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:05:59,472 INFO L93 Difference]: Finished difference Result 674 states and 894 transitions. [2022-04-28 06:05:59,472 INFO L276 IsEmpty]: Start isEmpty. Operand 674 states and 894 transitions. [2022-04-28 06:05:59,473 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:05:59,473 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:05:59,473 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:05:59,473 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:05:59,474 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-28 06:05:59,501 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 652 states to 652 states and 868 transitions. [2022-04-28 06:05:59,502 INFO L78 Accepts]: Start accepts. Automaton has 652 states and 868 transitions. Word has length 119 [2022-04-28 06:05:59,502 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:05:59,502 INFO L495 AbstractCegarLoop]: Abstraction has 652 states and 868 transitions. [2022-04-28 06:05:59,502 INFO L496 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-28 06:05:59,502 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 652 states and 868 transitions. [2022-04-28 06:06:16,223 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-28 06:06:16,223 INFO L276 IsEmpty]: Start isEmpty. Operand 652 states and 868 transitions. [2022-04-28 06:06:16,224 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 122 [2022-04-28 06:06:16,224 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:06:16,224 INFO L195 NwaCegarLoop]: 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-28 06:06:16,245 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Forceful destruction successful, exit code 0 [2022-04-28 06:06:16,424 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 40 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable38 [2022-04-28 06:06:16,425 INFO L420 AbstractCegarLoop]: === Iteration 40 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:06:16,425 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:06:16,425 INFO L85 PathProgramCache]: Analyzing trace with hash 1267134888, now seen corresponding path program 17 times [2022-04-28 06:06:16,425 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:06:16,425 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [71508970] [2022-04-28 06:06:16,426 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:06:16,426 INFO L85 PathProgramCache]: Analyzing trace with hash 1267134888, now seen corresponding path program 18 times [2022-04-28 06:06:16,426 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:06:16,426 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1375507578] [2022-04-28 06:06:16,426 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:06:16,426 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:06:16,444 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:06:16,444 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [702941050] [2022-04-28 06:06:16,444 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 06:06:16,445 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:06:16,445 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:06:16,451 INFO L229 MonitoredProcess]: Starting monitored process 41 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:06:16,455 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Waiting until timeout for monitored process [2022-04-28 06:06:17,008 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 9 check-sat command(s) [2022-04-28 06:06:17,008 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:06:17,010 INFO L263 TraceCheckSpWp]: Trace formula consists of 306 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-28 06:06:17,032 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:06:17,033 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:06:17,797 INFO L272 TraceCheckUtils]: 0: Hoare triple {88507#true} call ULTIMATE.init(); {88507#true} is VALID [2022-04-28 06:06:17,798 INFO L290 TraceCheckUtils]: 1: Hoare triple {88507#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,798 INFO L290 TraceCheckUtils]: 2: Hoare triple {88515#(<= ~counter~0 0)} assume true; {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,798 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {88515#(<= ~counter~0 0)} {88507#true} #102#return; {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,798 INFO L272 TraceCheckUtils]: 4: Hoare triple {88515#(<= ~counter~0 0)} call #t~ret9 := main(); {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,799 INFO L290 TraceCheckUtils]: 5: Hoare triple {88515#(<= ~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; {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,799 INFO L272 TraceCheckUtils]: 6: Hoare triple {88515#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,799 INFO L290 TraceCheckUtils]: 7: Hoare triple {88515#(<= ~counter~0 0)} ~cond := #in~cond; {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,800 INFO L290 TraceCheckUtils]: 8: Hoare triple {88515#(<= ~counter~0 0)} assume !(0 == ~cond); {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,800 INFO L290 TraceCheckUtils]: 9: Hoare triple {88515#(<= ~counter~0 0)} assume true; {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,800 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {88515#(<= ~counter~0 0)} {88515#(<= ~counter~0 0)} #90#return; {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,801 INFO L272 TraceCheckUtils]: 11: Hoare triple {88515#(<= ~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)); {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,801 INFO L290 TraceCheckUtils]: 12: Hoare triple {88515#(<= ~counter~0 0)} ~cond := #in~cond; {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,802 INFO L290 TraceCheckUtils]: 13: Hoare triple {88515#(<= ~counter~0 0)} assume !(0 == ~cond); {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,802 INFO L290 TraceCheckUtils]: 14: Hoare triple {88515#(<= ~counter~0 0)} assume true; {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,802 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {88515#(<= ~counter~0 0)} {88515#(<= ~counter~0 0)} #92#return; {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,803 INFO L290 TraceCheckUtils]: 16: Hoare triple {88515#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {88515#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:17,807 INFO L290 TraceCheckUtils]: 17: Hoare triple {88515#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {88564#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:17,807 INFO L290 TraceCheckUtils]: 18: Hoare triple {88564#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {88564#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:17,808 INFO L272 TraceCheckUtils]: 19: Hoare triple {88564#(<= ~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)); {88564#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:17,808 INFO L290 TraceCheckUtils]: 20: Hoare triple {88564#(<= ~counter~0 1)} ~cond := #in~cond; {88564#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:17,808 INFO L290 TraceCheckUtils]: 21: Hoare triple {88564#(<= ~counter~0 1)} assume !(0 == ~cond); {88564#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:17,809 INFO L290 TraceCheckUtils]: 22: Hoare triple {88564#(<= ~counter~0 1)} assume true; {88564#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:17,809 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {88564#(<= ~counter~0 1)} {88564#(<= ~counter~0 1)} #94#return; {88564#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:17,809 INFO L290 TraceCheckUtils]: 24: Hoare triple {88564#(<= ~counter~0 1)} assume !!(0 != ~r~0); {88564#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:17,811 INFO L290 TraceCheckUtils]: 25: Hoare triple {88564#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88589#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:17,811 INFO L290 TraceCheckUtils]: 26: Hoare triple {88589#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {88589#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:17,811 INFO L272 TraceCheckUtils]: 27: Hoare triple {88589#(<= ~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)); {88589#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:17,812 INFO L290 TraceCheckUtils]: 28: Hoare triple {88589#(<= ~counter~0 2)} ~cond := #in~cond; {88589#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:17,812 INFO L290 TraceCheckUtils]: 29: Hoare triple {88589#(<= ~counter~0 2)} assume !(0 == ~cond); {88589#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:17,812 INFO L290 TraceCheckUtils]: 30: Hoare triple {88589#(<= ~counter~0 2)} assume true; {88589#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:17,813 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {88589#(<= ~counter~0 2)} {88589#(<= ~counter~0 2)} #96#return; {88589#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:17,813 INFO L290 TraceCheckUtils]: 32: Hoare triple {88589#(<= ~counter~0 2)} assume !(~r~0 > 0); {88589#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:17,814 INFO L290 TraceCheckUtils]: 33: Hoare triple {88589#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {88614#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:17,814 INFO L290 TraceCheckUtils]: 34: Hoare triple {88614#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {88614#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:17,815 INFO L272 TraceCheckUtils]: 35: Hoare triple {88614#(<= ~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)); {88614#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:17,815 INFO L290 TraceCheckUtils]: 36: Hoare triple {88614#(<= ~counter~0 3)} ~cond := #in~cond; {88614#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:17,816 INFO L290 TraceCheckUtils]: 37: Hoare triple {88614#(<= ~counter~0 3)} assume !(0 == ~cond); {88614#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:17,816 INFO L290 TraceCheckUtils]: 38: Hoare triple {88614#(<= ~counter~0 3)} assume true; {88614#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:17,816 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {88614#(<= ~counter~0 3)} {88614#(<= ~counter~0 3)} #98#return; {88614#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:17,817 INFO L290 TraceCheckUtils]: 40: Hoare triple {88614#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {88614#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:17,818 INFO L290 TraceCheckUtils]: 41: Hoare triple {88614#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {88639#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:17,818 INFO L290 TraceCheckUtils]: 42: Hoare triple {88639#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {88639#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:17,819 INFO L272 TraceCheckUtils]: 43: Hoare triple {88639#(<= ~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)); {88639#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:17,819 INFO L290 TraceCheckUtils]: 44: Hoare triple {88639#(<= ~counter~0 4)} ~cond := #in~cond; {88639#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:17,819 INFO L290 TraceCheckUtils]: 45: Hoare triple {88639#(<= ~counter~0 4)} assume !(0 == ~cond); {88639#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:17,819 INFO L290 TraceCheckUtils]: 46: Hoare triple {88639#(<= ~counter~0 4)} assume true; {88639#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:17,820 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {88639#(<= ~counter~0 4)} {88639#(<= ~counter~0 4)} #98#return; {88639#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:17,820 INFO L290 TraceCheckUtils]: 48: Hoare triple {88639#(<= ~counter~0 4)} assume !(~r~0 < 0); {88639#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:17,821 INFO L290 TraceCheckUtils]: 49: Hoare triple {88639#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {88664#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:17,821 INFO L290 TraceCheckUtils]: 50: Hoare triple {88664#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {88664#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:17,822 INFO L272 TraceCheckUtils]: 51: Hoare triple {88664#(<= ~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)); {88664#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:17,822 INFO L290 TraceCheckUtils]: 52: Hoare triple {88664#(<= ~counter~0 5)} ~cond := #in~cond; {88664#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:17,822 INFO L290 TraceCheckUtils]: 53: Hoare triple {88664#(<= ~counter~0 5)} assume !(0 == ~cond); {88664#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:17,823 INFO L290 TraceCheckUtils]: 54: Hoare triple {88664#(<= ~counter~0 5)} assume true; {88664#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:17,823 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {88664#(<= ~counter~0 5)} {88664#(<= ~counter~0 5)} #94#return; {88664#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:17,823 INFO L290 TraceCheckUtils]: 56: Hoare triple {88664#(<= ~counter~0 5)} assume !!(0 != ~r~0); {88664#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:17,825 INFO L290 TraceCheckUtils]: 57: Hoare triple {88664#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88689#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:17,825 INFO L290 TraceCheckUtils]: 58: Hoare triple {88689#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {88689#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:17,825 INFO L272 TraceCheckUtils]: 59: Hoare triple {88689#(<= ~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)); {88689#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:17,826 INFO L290 TraceCheckUtils]: 60: Hoare triple {88689#(<= ~counter~0 6)} ~cond := #in~cond; {88689#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:17,826 INFO L290 TraceCheckUtils]: 61: Hoare triple {88689#(<= ~counter~0 6)} assume !(0 == ~cond); {88689#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:17,826 INFO L290 TraceCheckUtils]: 62: Hoare triple {88689#(<= ~counter~0 6)} assume true; {88689#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:17,827 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {88689#(<= ~counter~0 6)} {88689#(<= ~counter~0 6)} #96#return; {88689#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:17,827 INFO L290 TraceCheckUtils]: 64: Hoare triple {88689#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {88689#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:17,828 INFO L290 TraceCheckUtils]: 65: Hoare triple {88689#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88714#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:17,829 INFO L290 TraceCheckUtils]: 66: Hoare triple {88714#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {88714#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:17,829 INFO L272 TraceCheckUtils]: 67: Hoare triple {88714#(<= ~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)); {88714#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:17,829 INFO L290 TraceCheckUtils]: 68: Hoare triple {88714#(<= ~counter~0 7)} ~cond := #in~cond; {88714#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:17,830 INFO L290 TraceCheckUtils]: 69: Hoare triple {88714#(<= ~counter~0 7)} assume !(0 == ~cond); {88714#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:17,830 INFO L290 TraceCheckUtils]: 70: Hoare triple {88714#(<= ~counter~0 7)} assume true; {88714#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:17,830 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {88714#(<= ~counter~0 7)} {88714#(<= ~counter~0 7)} #96#return; {88714#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:17,831 INFO L290 TraceCheckUtils]: 72: Hoare triple {88714#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {88714#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:17,832 INFO L290 TraceCheckUtils]: 73: Hoare triple {88714#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88739#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:17,832 INFO L290 TraceCheckUtils]: 74: Hoare triple {88739#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {88739#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:17,833 INFO L272 TraceCheckUtils]: 75: Hoare triple {88739#(<= ~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)); {88739#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:17,833 INFO L290 TraceCheckUtils]: 76: Hoare triple {88739#(<= ~counter~0 8)} ~cond := #in~cond; {88739#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:17,833 INFO L290 TraceCheckUtils]: 77: Hoare triple {88739#(<= ~counter~0 8)} assume !(0 == ~cond); {88739#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:17,833 INFO L290 TraceCheckUtils]: 78: Hoare triple {88739#(<= ~counter~0 8)} assume true; {88739#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:17,834 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {88739#(<= ~counter~0 8)} {88739#(<= ~counter~0 8)} #96#return; {88739#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:17,834 INFO L290 TraceCheckUtils]: 80: Hoare triple {88739#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {88739#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:17,835 INFO L290 TraceCheckUtils]: 81: Hoare triple {88739#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88764#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:17,835 INFO L290 TraceCheckUtils]: 82: Hoare triple {88764#(<= ~counter~0 9)} assume !!(#t~post7 < 50);havoc #t~post7; {88764#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:17,836 INFO L272 TraceCheckUtils]: 83: Hoare triple {88764#(<= ~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)); {88764#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:17,836 INFO L290 TraceCheckUtils]: 84: Hoare triple {88764#(<= ~counter~0 9)} ~cond := #in~cond; {88764#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:17,836 INFO L290 TraceCheckUtils]: 85: Hoare triple {88764#(<= ~counter~0 9)} assume !(0 == ~cond); {88764#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:17,837 INFO L290 TraceCheckUtils]: 86: Hoare triple {88764#(<= ~counter~0 9)} assume true; {88764#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:17,837 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {88764#(<= ~counter~0 9)} {88764#(<= ~counter~0 9)} #96#return; {88764#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:17,837 INFO L290 TraceCheckUtils]: 88: Hoare triple {88764#(<= ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {88764#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:17,838 INFO L290 TraceCheckUtils]: 89: Hoare triple {88764#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88789#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:17,839 INFO L290 TraceCheckUtils]: 90: Hoare triple {88789#(<= ~counter~0 10)} assume !!(#t~post7 < 50);havoc #t~post7; {88789#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:17,839 INFO L272 TraceCheckUtils]: 91: Hoare triple {88789#(<= ~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)); {88789#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:17,840 INFO L290 TraceCheckUtils]: 92: Hoare triple {88789#(<= ~counter~0 10)} ~cond := #in~cond; {88789#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:17,840 INFO L290 TraceCheckUtils]: 93: Hoare triple {88789#(<= ~counter~0 10)} assume !(0 == ~cond); {88789#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:17,840 INFO L290 TraceCheckUtils]: 94: Hoare triple {88789#(<= ~counter~0 10)} assume true; {88789#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:17,841 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {88789#(<= ~counter~0 10)} {88789#(<= ~counter~0 10)} #96#return; {88789#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:17,841 INFO L290 TraceCheckUtils]: 96: Hoare triple {88789#(<= ~counter~0 10)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {88789#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:17,842 INFO L290 TraceCheckUtils]: 97: Hoare triple {88789#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88814#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:17,842 INFO L290 TraceCheckUtils]: 98: Hoare triple {88814#(<= ~counter~0 11)} assume !!(#t~post7 < 50);havoc #t~post7; {88814#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:17,843 INFO L272 TraceCheckUtils]: 99: Hoare triple {88814#(<= ~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)); {88814#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:17,843 INFO L290 TraceCheckUtils]: 100: Hoare triple {88814#(<= ~counter~0 11)} ~cond := #in~cond; {88814#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:17,843 INFO L290 TraceCheckUtils]: 101: Hoare triple {88814#(<= ~counter~0 11)} assume !(0 == ~cond); {88814#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:17,843 INFO L290 TraceCheckUtils]: 102: Hoare triple {88814#(<= ~counter~0 11)} assume true; {88814#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:17,844 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {88814#(<= ~counter~0 11)} {88814#(<= ~counter~0 11)} #96#return; {88814#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:17,844 INFO L290 TraceCheckUtils]: 104: Hoare triple {88814#(<= ~counter~0 11)} assume !(~r~0 > 0); {88814#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:17,845 INFO L290 TraceCheckUtils]: 105: Hoare triple {88814#(<= ~counter~0 11)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {88839#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:17,845 INFO L290 TraceCheckUtils]: 106: Hoare triple {88839#(<= ~counter~0 12)} assume !!(#t~post8 < 50);havoc #t~post8; {88839#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:17,846 INFO L272 TraceCheckUtils]: 107: Hoare triple {88839#(<= ~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)); {88839#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:17,846 INFO L290 TraceCheckUtils]: 108: Hoare triple {88839#(<= ~counter~0 12)} ~cond := #in~cond; {88839#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:17,846 INFO L290 TraceCheckUtils]: 109: Hoare triple {88839#(<= ~counter~0 12)} assume !(0 == ~cond); {88839#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:17,847 INFO L290 TraceCheckUtils]: 110: Hoare triple {88839#(<= ~counter~0 12)} assume true; {88839#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:17,847 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {88839#(<= ~counter~0 12)} {88839#(<= ~counter~0 12)} #98#return; {88839#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:17,847 INFO L290 TraceCheckUtils]: 112: Hoare triple {88839#(<= ~counter~0 12)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {88839#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:17,848 INFO L290 TraceCheckUtils]: 113: Hoare triple {88839#(<= ~counter~0 12)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {88864#(<= |main_#t~post8| 12)} is VALID [2022-04-28 06:06:17,848 INFO L290 TraceCheckUtils]: 114: Hoare triple {88864#(<= |main_#t~post8| 12)} assume !(#t~post8 < 50);havoc #t~post8; {88508#false} is VALID [2022-04-28 06:06:17,848 INFO L290 TraceCheckUtils]: 115: Hoare triple {88508#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {88508#false} is VALID [2022-04-28 06:06:17,848 INFO L290 TraceCheckUtils]: 116: Hoare triple {88508#false} assume !(#t~post6 < 50);havoc #t~post6; {88508#false} is VALID [2022-04-28 06:06:17,848 INFO L272 TraceCheckUtils]: 117: Hoare triple {88508#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)); {88508#false} is VALID [2022-04-28 06:06:17,848 INFO L290 TraceCheckUtils]: 118: Hoare triple {88508#false} ~cond := #in~cond; {88508#false} is VALID [2022-04-28 06:06:17,848 INFO L290 TraceCheckUtils]: 119: Hoare triple {88508#false} assume 0 == ~cond; {88508#false} is VALID [2022-04-28 06:06:17,848 INFO L290 TraceCheckUtils]: 120: Hoare triple {88508#false} assume !false; {88508#false} is VALID [2022-04-28 06:06:17,849 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-28 06:06:17,849 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:06:18,551 INFO L290 TraceCheckUtils]: 120: Hoare triple {88508#false} assume !false; {88508#false} is VALID [2022-04-28 06:06:18,552 INFO L290 TraceCheckUtils]: 119: Hoare triple {88508#false} assume 0 == ~cond; {88508#false} is VALID [2022-04-28 06:06:18,552 INFO L290 TraceCheckUtils]: 118: Hoare triple {88508#false} ~cond := #in~cond; {88508#false} is VALID [2022-04-28 06:06:18,552 INFO L272 TraceCheckUtils]: 117: Hoare triple {88508#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)); {88508#false} is VALID [2022-04-28 06:06:18,552 INFO L290 TraceCheckUtils]: 116: Hoare triple {88508#false} assume !(#t~post6 < 50);havoc #t~post6; {88508#false} is VALID [2022-04-28 06:06:18,552 INFO L290 TraceCheckUtils]: 115: Hoare triple {88508#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {88508#false} is VALID [2022-04-28 06:06:18,552 INFO L290 TraceCheckUtils]: 114: Hoare triple {88904#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {88508#false} is VALID [2022-04-28 06:06:18,553 INFO L290 TraceCheckUtils]: 113: Hoare triple {88908#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {88904#(< |main_#t~post8| 50)} is VALID [2022-04-28 06:06:18,553 INFO L290 TraceCheckUtils]: 112: Hoare triple {88908#(< ~counter~0 50)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {88908#(< ~counter~0 50)} is VALID [2022-04-28 06:06:18,553 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {88507#true} {88908#(< ~counter~0 50)} #98#return; {88908#(< ~counter~0 50)} is VALID [2022-04-28 06:06:18,553 INFO L290 TraceCheckUtils]: 110: Hoare triple {88507#true} assume true; {88507#true} is VALID [2022-04-28 06:06:18,553 INFO L290 TraceCheckUtils]: 109: Hoare triple {88507#true} assume !(0 == ~cond); {88507#true} is VALID [2022-04-28 06:06:18,554 INFO L290 TraceCheckUtils]: 108: Hoare triple {88507#true} ~cond := #in~cond; {88507#true} is VALID [2022-04-28 06:06:18,554 INFO L272 TraceCheckUtils]: 107: Hoare triple {88908#(< ~counter~0 50)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {88507#true} is VALID [2022-04-28 06:06:18,554 INFO L290 TraceCheckUtils]: 106: Hoare triple {88908#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {88908#(< ~counter~0 50)} is VALID [2022-04-28 06:06:18,556 INFO L290 TraceCheckUtils]: 105: Hoare triple {88933#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {88908#(< ~counter~0 50)} is VALID [2022-04-28 06:06:18,556 INFO L290 TraceCheckUtils]: 104: Hoare triple {88933#(< ~counter~0 49)} assume !(~r~0 > 0); {88933#(< ~counter~0 49)} is VALID [2022-04-28 06:06:18,557 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {88507#true} {88933#(< ~counter~0 49)} #96#return; {88933#(< ~counter~0 49)} is VALID [2022-04-28 06:06:18,557 INFO L290 TraceCheckUtils]: 102: Hoare triple {88507#true} assume true; {88507#true} is VALID [2022-04-28 06:06:18,557 INFO L290 TraceCheckUtils]: 101: Hoare triple {88507#true} assume !(0 == ~cond); {88507#true} is VALID [2022-04-28 06:06:18,557 INFO L290 TraceCheckUtils]: 100: Hoare triple {88507#true} ~cond := #in~cond; {88507#true} is VALID [2022-04-28 06:06:18,557 INFO L272 TraceCheckUtils]: 99: Hoare triple {88933#(< ~counter~0 49)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {88507#true} is VALID [2022-04-28 06:06:18,557 INFO L290 TraceCheckUtils]: 98: Hoare triple {88933#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {88933#(< ~counter~0 49)} is VALID [2022-04-28 06:06:18,558 INFO L290 TraceCheckUtils]: 97: Hoare triple {88958#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88933#(< ~counter~0 49)} is VALID [2022-04-28 06:06:18,558 INFO L290 TraceCheckUtils]: 96: Hoare triple {88958#(< ~counter~0 48)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {88958#(< ~counter~0 48)} is VALID [2022-04-28 06:06:18,559 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {88507#true} {88958#(< ~counter~0 48)} #96#return; {88958#(< ~counter~0 48)} is VALID [2022-04-28 06:06:18,559 INFO L290 TraceCheckUtils]: 94: Hoare triple {88507#true} assume true; {88507#true} is VALID [2022-04-28 06:06:18,559 INFO L290 TraceCheckUtils]: 93: Hoare triple {88507#true} assume !(0 == ~cond); {88507#true} is VALID [2022-04-28 06:06:18,559 INFO L290 TraceCheckUtils]: 92: Hoare triple {88507#true} ~cond := #in~cond; {88507#true} is VALID [2022-04-28 06:06:18,559 INFO L272 TraceCheckUtils]: 91: Hoare triple {88958#(< ~counter~0 48)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {88507#true} is VALID [2022-04-28 06:06:18,559 INFO L290 TraceCheckUtils]: 90: Hoare triple {88958#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {88958#(< ~counter~0 48)} is VALID [2022-04-28 06:06:18,560 INFO L290 TraceCheckUtils]: 89: Hoare triple {88983#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88958#(< ~counter~0 48)} is VALID [2022-04-28 06:06:18,560 INFO L290 TraceCheckUtils]: 88: Hoare triple {88983#(< ~counter~0 47)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {88983#(< ~counter~0 47)} is VALID [2022-04-28 06:06:18,561 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {88507#true} {88983#(< ~counter~0 47)} #96#return; {88983#(< ~counter~0 47)} is VALID [2022-04-28 06:06:18,561 INFO L290 TraceCheckUtils]: 86: Hoare triple {88507#true} assume true; {88507#true} is VALID [2022-04-28 06:06:18,561 INFO L290 TraceCheckUtils]: 85: Hoare triple {88507#true} assume !(0 == ~cond); {88507#true} is VALID [2022-04-28 06:06:18,561 INFO L290 TraceCheckUtils]: 84: Hoare triple {88507#true} ~cond := #in~cond; {88507#true} is VALID [2022-04-28 06:06:18,561 INFO L272 TraceCheckUtils]: 83: Hoare triple {88983#(< ~counter~0 47)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {88507#true} is VALID [2022-04-28 06:06:18,561 INFO L290 TraceCheckUtils]: 82: Hoare triple {88983#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {88983#(< ~counter~0 47)} is VALID [2022-04-28 06:06:18,562 INFO L290 TraceCheckUtils]: 81: Hoare triple {89008#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {88983#(< ~counter~0 47)} is VALID [2022-04-28 06:06:18,563 INFO L290 TraceCheckUtils]: 80: Hoare triple {89008#(< ~counter~0 46)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {89008#(< ~counter~0 46)} is VALID [2022-04-28 06:06:18,563 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {88507#true} {89008#(< ~counter~0 46)} #96#return; {89008#(< ~counter~0 46)} is VALID [2022-04-28 06:06:18,563 INFO L290 TraceCheckUtils]: 78: Hoare triple {88507#true} assume true; {88507#true} is VALID [2022-04-28 06:06:18,563 INFO L290 TraceCheckUtils]: 77: Hoare triple {88507#true} assume !(0 == ~cond); {88507#true} is VALID [2022-04-28 06:06:18,563 INFO L290 TraceCheckUtils]: 76: Hoare triple {88507#true} ~cond := #in~cond; {88507#true} is VALID [2022-04-28 06:06:18,563 INFO L272 TraceCheckUtils]: 75: Hoare triple {89008#(< ~counter~0 46)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {88507#true} is VALID [2022-04-28 06:06:18,564 INFO L290 TraceCheckUtils]: 74: Hoare triple {89008#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {89008#(< ~counter~0 46)} is VALID [2022-04-28 06:06:18,565 INFO L290 TraceCheckUtils]: 73: Hoare triple {89033#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {89008#(< ~counter~0 46)} is VALID [2022-04-28 06:06:18,565 INFO L290 TraceCheckUtils]: 72: Hoare triple {89033#(< ~counter~0 45)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {89033#(< ~counter~0 45)} is VALID [2022-04-28 06:06:18,565 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {88507#true} {89033#(< ~counter~0 45)} #96#return; {89033#(< ~counter~0 45)} is VALID [2022-04-28 06:06:18,565 INFO L290 TraceCheckUtils]: 70: Hoare triple {88507#true} assume true; {88507#true} is VALID [2022-04-28 06:06:18,565 INFO L290 TraceCheckUtils]: 69: Hoare triple {88507#true} assume !(0 == ~cond); {88507#true} is VALID [2022-04-28 06:06:18,566 INFO L290 TraceCheckUtils]: 68: Hoare triple {88507#true} ~cond := #in~cond; {88507#true} is VALID [2022-04-28 06:06:18,566 INFO L272 TraceCheckUtils]: 67: Hoare triple {89033#(< ~counter~0 45)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {88507#true} is VALID [2022-04-28 06:06:18,566 INFO L290 TraceCheckUtils]: 66: Hoare triple {89033#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {89033#(< ~counter~0 45)} is VALID [2022-04-28 06:06:18,567 INFO L290 TraceCheckUtils]: 65: Hoare triple {89058#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {89033#(< ~counter~0 45)} is VALID [2022-04-28 06:06:18,567 INFO L290 TraceCheckUtils]: 64: Hoare triple {89058#(< ~counter~0 44)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {89058#(< ~counter~0 44)} is VALID [2022-04-28 06:06:18,568 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {88507#true} {89058#(< ~counter~0 44)} #96#return; {89058#(< ~counter~0 44)} is VALID [2022-04-28 06:06:18,568 INFO L290 TraceCheckUtils]: 62: Hoare triple {88507#true} assume true; {88507#true} is VALID [2022-04-28 06:06:18,568 INFO L290 TraceCheckUtils]: 61: Hoare triple {88507#true} assume !(0 == ~cond); {88507#true} is VALID [2022-04-28 06:06:18,568 INFO L290 TraceCheckUtils]: 60: Hoare triple {88507#true} ~cond := #in~cond; {88507#true} is VALID [2022-04-28 06:06:18,568 INFO L272 TraceCheckUtils]: 59: Hoare triple {89058#(< ~counter~0 44)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {88507#true} is VALID [2022-04-28 06:06:18,568 INFO L290 TraceCheckUtils]: 58: Hoare triple {89058#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {89058#(< ~counter~0 44)} is VALID [2022-04-28 06:06:18,569 INFO L290 TraceCheckUtils]: 57: Hoare triple {89083#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {89058#(< ~counter~0 44)} is VALID [2022-04-28 06:06:18,569 INFO L290 TraceCheckUtils]: 56: Hoare triple {89083#(< ~counter~0 43)} assume !!(0 != ~r~0); {89083#(< ~counter~0 43)} is VALID [2022-04-28 06:06:18,570 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {88507#true} {89083#(< ~counter~0 43)} #94#return; {89083#(< ~counter~0 43)} is VALID [2022-04-28 06:06:18,570 INFO L290 TraceCheckUtils]: 54: Hoare triple {88507#true} assume true; {88507#true} is VALID [2022-04-28 06:06:18,570 INFO L290 TraceCheckUtils]: 53: Hoare triple {88507#true} assume !(0 == ~cond); {88507#true} is VALID [2022-04-28 06:06:18,570 INFO L290 TraceCheckUtils]: 52: Hoare triple {88507#true} ~cond := #in~cond; {88507#true} is VALID [2022-04-28 06:06:18,570 INFO L272 TraceCheckUtils]: 51: Hoare triple {89083#(< ~counter~0 43)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {88507#true} is VALID [2022-04-28 06:06:18,570 INFO L290 TraceCheckUtils]: 50: Hoare triple {89083#(< ~counter~0 43)} assume !!(#t~post6 < 50);havoc #t~post6; {89083#(< ~counter~0 43)} is VALID [2022-04-28 06:06:18,571 INFO L290 TraceCheckUtils]: 49: Hoare triple {89108#(< ~counter~0 42)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {89083#(< ~counter~0 43)} is VALID [2022-04-28 06:06:18,572 INFO L290 TraceCheckUtils]: 48: Hoare triple {89108#(< ~counter~0 42)} assume !(~r~0 < 0); {89108#(< ~counter~0 42)} is VALID [2022-04-28 06:06:18,572 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {88507#true} {89108#(< ~counter~0 42)} #98#return; {89108#(< ~counter~0 42)} is VALID [2022-04-28 06:06:18,572 INFO L290 TraceCheckUtils]: 46: Hoare triple {88507#true} assume true; {88507#true} is VALID [2022-04-28 06:06:18,572 INFO L290 TraceCheckUtils]: 45: Hoare triple {88507#true} assume !(0 == ~cond); {88507#true} is VALID [2022-04-28 06:06:18,572 INFO L290 TraceCheckUtils]: 44: Hoare triple {88507#true} ~cond := #in~cond; {88507#true} is VALID [2022-04-28 06:06:18,572 INFO L272 TraceCheckUtils]: 43: Hoare triple {89108#(< ~counter~0 42)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {88507#true} is VALID [2022-04-28 06:06:18,573 INFO L290 TraceCheckUtils]: 42: Hoare triple {89108#(< ~counter~0 42)} assume !!(#t~post8 < 50);havoc #t~post8; {89108#(< ~counter~0 42)} is VALID [2022-04-28 06:06:18,573 INFO L290 TraceCheckUtils]: 41: Hoare triple {89133#(< ~counter~0 41)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {89108#(< ~counter~0 42)} is VALID [2022-04-28 06:06:18,574 INFO L290 TraceCheckUtils]: 40: Hoare triple {89133#(< ~counter~0 41)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {89133#(< ~counter~0 41)} is VALID [2022-04-28 06:06:18,574 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {88507#true} {89133#(< ~counter~0 41)} #98#return; {89133#(< ~counter~0 41)} is VALID [2022-04-28 06:06:18,574 INFO L290 TraceCheckUtils]: 38: Hoare triple {88507#true} assume true; {88507#true} is VALID [2022-04-28 06:06:18,574 INFO L290 TraceCheckUtils]: 37: Hoare triple {88507#true} assume !(0 == ~cond); {88507#true} is VALID [2022-04-28 06:06:18,574 INFO L290 TraceCheckUtils]: 36: Hoare triple {88507#true} ~cond := #in~cond; {88507#true} is VALID [2022-04-28 06:06:18,575 INFO L272 TraceCheckUtils]: 35: Hoare triple {89133#(< ~counter~0 41)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {88507#true} is VALID [2022-04-28 06:06:18,575 INFO L290 TraceCheckUtils]: 34: Hoare triple {89133#(< ~counter~0 41)} assume !!(#t~post8 < 50);havoc #t~post8; {89133#(< ~counter~0 41)} is VALID [2022-04-28 06:06:18,576 INFO L290 TraceCheckUtils]: 33: Hoare triple {89158#(< ~counter~0 40)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {89133#(< ~counter~0 41)} is VALID [2022-04-28 06:06:18,576 INFO L290 TraceCheckUtils]: 32: Hoare triple {89158#(< ~counter~0 40)} assume !(~r~0 > 0); {89158#(< ~counter~0 40)} is VALID [2022-04-28 06:06:18,576 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {88507#true} {89158#(< ~counter~0 40)} #96#return; {89158#(< ~counter~0 40)} is VALID [2022-04-28 06:06:18,576 INFO L290 TraceCheckUtils]: 30: Hoare triple {88507#true} assume true; {88507#true} is VALID [2022-04-28 06:06:18,577 INFO L290 TraceCheckUtils]: 29: Hoare triple {88507#true} assume !(0 == ~cond); {88507#true} is VALID [2022-04-28 06:06:18,577 INFO L290 TraceCheckUtils]: 28: Hoare triple {88507#true} ~cond := #in~cond; {88507#true} is VALID [2022-04-28 06:06:18,577 INFO L272 TraceCheckUtils]: 27: Hoare triple {89158#(< ~counter~0 40)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {88507#true} is VALID [2022-04-28 06:06:18,577 INFO L290 TraceCheckUtils]: 26: Hoare triple {89158#(< ~counter~0 40)} assume !!(#t~post7 < 50);havoc #t~post7; {89158#(< ~counter~0 40)} is VALID [2022-04-28 06:06:18,578 INFO L290 TraceCheckUtils]: 25: Hoare triple {89183#(< ~counter~0 39)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {89158#(< ~counter~0 40)} is VALID [2022-04-28 06:06:18,578 INFO L290 TraceCheckUtils]: 24: Hoare triple {89183#(< ~counter~0 39)} assume !!(0 != ~r~0); {89183#(< ~counter~0 39)} is VALID [2022-04-28 06:06:18,579 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {88507#true} {89183#(< ~counter~0 39)} #94#return; {89183#(< ~counter~0 39)} is VALID [2022-04-28 06:06:18,579 INFO L290 TraceCheckUtils]: 22: Hoare triple {88507#true} assume true; {88507#true} is VALID [2022-04-28 06:06:18,579 INFO L290 TraceCheckUtils]: 21: Hoare triple {88507#true} assume !(0 == ~cond); {88507#true} is VALID [2022-04-28 06:06:18,579 INFO L290 TraceCheckUtils]: 20: Hoare triple {88507#true} ~cond := #in~cond; {88507#true} is VALID [2022-04-28 06:06:18,579 INFO L272 TraceCheckUtils]: 19: Hoare triple {89183#(< ~counter~0 39)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {88507#true} is VALID [2022-04-28 06:06:18,579 INFO L290 TraceCheckUtils]: 18: Hoare triple {89183#(< ~counter~0 39)} assume !!(#t~post6 < 50);havoc #t~post6; {89183#(< ~counter~0 39)} is VALID [2022-04-28 06:06:18,580 INFO L290 TraceCheckUtils]: 17: Hoare triple {89208#(< ~counter~0 38)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {89183#(< ~counter~0 39)} is VALID [2022-04-28 06:06:18,581 INFO L290 TraceCheckUtils]: 16: Hoare triple {89208#(< ~counter~0 38)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {89208#(< ~counter~0 38)} is VALID [2022-04-28 06:06:18,581 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {88507#true} {89208#(< ~counter~0 38)} #92#return; {89208#(< ~counter~0 38)} is VALID [2022-04-28 06:06:18,581 INFO L290 TraceCheckUtils]: 14: Hoare triple {88507#true} assume true; {88507#true} is VALID [2022-04-28 06:06:18,581 INFO L290 TraceCheckUtils]: 13: Hoare triple {88507#true} assume !(0 == ~cond); {88507#true} is VALID [2022-04-28 06:06:18,581 INFO L290 TraceCheckUtils]: 12: Hoare triple {88507#true} ~cond := #in~cond; {88507#true} is VALID [2022-04-28 06:06:18,581 INFO L272 TraceCheckUtils]: 11: Hoare triple {89208#(< ~counter~0 38)} 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)); {88507#true} is VALID [2022-04-28 06:06:18,582 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {88507#true} {89208#(< ~counter~0 38)} #90#return; {89208#(< ~counter~0 38)} is VALID [2022-04-28 06:06:18,582 INFO L290 TraceCheckUtils]: 9: Hoare triple {88507#true} assume true; {88507#true} is VALID [2022-04-28 06:06:18,582 INFO L290 TraceCheckUtils]: 8: Hoare triple {88507#true} assume !(0 == ~cond); {88507#true} is VALID [2022-04-28 06:06:18,582 INFO L290 TraceCheckUtils]: 7: Hoare triple {88507#true} ~cond := #in~cond; {88507#true} is VALID [2022-04-28 06:06:18,582 INFO L272 TraceCheckUtils]: 6: Hoare triple {89208#(< ~counter~0 38)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {88507#true} is VALID [2022-04-28 06:06:18,582 INFO L290 TraceCheckUtils]: 5: Hoare triple {89208#(< ~counter~0 38)} 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; {89208#(< ~counter~0 38)} is VALID [2022-04-28 06:06:18,583 INFO L272 TraceCheckUtils]: 4: Hoare triple {89208#(< ~counter~0 38)} call #t~ret9 := main(); {89208#(< ~counter~0 38)} is VALID [2022-04-28 06:06:18,583 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {89208#(< ~counter~0 38)} {88507#true} #102#return; {89208#(< ~counter~0 38)} is VALID [2022-04-28 06:06:18,583 INFO L290 TraceCheckUtils]: 2: Hoare triple {89208#(< ~counter~0 38)} assume true; {89208#(< ~counter~0 38)} is VALID [2022-04-28 06:06:18,584 INFO L290 TraceCheckUtils]: 1: Hoare triple {88507#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {89208#(< ~counter~0 38)} is VALID [2022-04-28 06:06:18,584 INFO L272 TraceCheckUtils]: 0: Hoare triple {88507#true} call ULTIMATE.init(); {88507#true} is VALID [2022-04-28 06:06:18,584 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-28 06:06:18,584 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:06:18,584 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1375507578] [2022-04-28 06:06:18,584 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:06:18,584 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [702941050] [2022-04-28 06:06:18,585 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [702941050] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:06:18,585 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:06:18,585 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 30 [2022-04-28 06:06:18,585 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:06:18,585 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [71508970] [2022-04-28 06:06:18,585 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [71508970] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:06:18,585 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:06:18,585 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 06:06:18,585 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [885827932] [2022-04-28 06:06:18,585 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:06:18,585 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-28 06:06:18,586 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:06:18,586 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-28 06:06:18,716 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:06:18,717 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 06:06:18,717 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:06:18,717 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 06:06:18,717 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=383, Invalid=487, Unknown=0, NotChecked=0, Total=870 [2022-04-28 06:06:18,717 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-28 06:06:21,809 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:06:21,810 INFO L93 Difference]: Finished difference Result 877 states and 1204 transitions. [2022-04-28 06:06:21,810 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-28 06:06:21,810 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-28 06:06:21,810 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:06:21,810 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-28 06:06:21,812 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 276 transitions. [2022-04-28 06:06:21,812 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-28 06:06:21,813 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 276 transitions. [2022-04-28 06:06:21,813 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 276 transitions. [2022-04-28 06:06:22,083 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-28 06:06:22,101 INFO L225 Difference]: With dead ends: 877 [2022-04-28 06:06:22,101 INFO L226 Difference]: Without dead ends: 680 [2022-04-28 06:06:22,102 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 251 GetRequests, 213 SyntacticMatches, 0 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 82 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=653, Invalid=907, Unknown=0, NotChecked=0, Total=1560 [2022-04-28 06:06:22,102 INFO L413 NwaCegarLoop]: 66 mSDtfsCounter, 203 mSDsluCounter, 206 mSDsCounter, 0 mSdLazyCounter, 138 mSolverCounterSat, 180 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 203 SdHoareTripleChecker+Valid, 272 SdHoareTripleChecker+Invalid, 318 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 180 IncrementalHoareTripleChecker+Valid, 138 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 06:06:22,102 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [203 Valid, 272 Invalid, 318 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [180 Valid, 138 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 06:06:22,103 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 680 states. [2022-04-28 06:06:24,482 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 680 to 670. [2022-04-28 06:06:24,482 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:06:24,483 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-28 06:06:24,483 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-28 06:06:24,483 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-28 06:06:24,498 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:06:24,498 INFO L93 Difference]: Finished difference Result 680 states and 900 transitions. [2022-04-28 06:06:24,498 INFO L276 IsEmpty]: Start isEmpty. Operand 680 states and 900 transitions. [2022-04-28 06:06:24,499 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:06:24,499 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:06:24,499 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-28 06:06:24,500 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-28 06:06:24,514 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:06:24,514 INFO L93 Difference]: Finished difference Result 680 states and 900 transitions. [2022-04-28 06:06:24,514 INFO L276 IsEmpty]: Start isEmpty. Operand 680 states and 900 transitions. [2022-04-28 06:06:24,515 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:06:24,515 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:06:24,515 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:06:24,515 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:06:24,516 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-28 06:06:24,543 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 670 states to 670 states and 890 transitions. [2022-04-28 06:06:24,543 INFO L78 Accepts]: Start accepts. Automaton has 670 states and 890 transitions. Word has length 121 [2022-04-28 06:06:24,543 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:06:24,543 INFO L495 AbstractCegarLoop]: Abstraction has 670 states and 890 transitions. [2022-04-28 06:06:24,544 INFO L496 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-28 06:06:24,544 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 670 states and 890 transitions. [2022-04-28 06:06:41,322 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 890 edges. 886 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-28 06:06:41,322 INFO L276 IsEmpty]: Start isEmpty. Operand 670 states and 890 transitions. [2022-04-28 06:06:41,323 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 124 [2022-04-28 06:06:41,323 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:06:41,323 INFO L195 NwaCegarLoop]: 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-28 06:06:41,328 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Forceful destruction successful, exit code 0 [2022-04-28 06:06:41,523 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 41 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable39 [2022-04-28 06:06:41,524 INFO L420 AbstractCegarLoop]: === Iteration 41 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:06:41,524 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:06:41,524 INFO L85 PathProgramCache]: Analyzing trace with hash 487500267, now seen corresponding path program 15 times [2022-04-28 06:06:41,524 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:06:41,524 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [585601089] [2022-04-28 06:06:41,524 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:06:41,525 INFO L85 PathProgramCache]: Analyzing trace with hash 487500267, now seen corresponding path program 16 times [2022-04-28 06:06:41,525 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:06:41,525 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1267063358] [2022-04-28 06:06:41,525 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:06:41,525 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:06:41,547 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:06:41,547 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1847532893] [2022-04-28 06:06:41,547 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 06:06:41,547 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:06:41,547 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:06:41,548 INFO L229 MonitoredProcess]: Starting monitored process 42 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:06:41,552 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Waiting until timeout for monitored process [2022-04-28 06:06:41,654 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 06:06:41,654 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:06:41,656 INFO L263 TraceCheckSpWp]: Trace formula consists of 303 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-28 06:06:41,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:06:41,679 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:06:42,059 INFO L272 TraceCheckUtils]: 0: Hoare triple {93736#true} call ULTIMATE.init(); {93736#true} is VALID [2022-04-28 06:06:42,060 INFO L290 TraceCheckUtils]: 1: Hoare triple {93736#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,060 INFO L290 TraceCheckUtils]: 2: Hoare triple {93744#(<= ~counter~0 0)} assume true; {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,060 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {93744#(<= ~counter~0 0)} {93736#true} #102#return; {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,061 INFO L272 TraceCheckUtils]: 4: Hoare triple {93744#(<= ~counter~0 0)} call #t~ret9 := main(); {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,061 INFO L290 TraceCheckUtils]: 5: Hoare triple {93744#(<= ~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; {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,061 INFO L272 TraceCheckUtils]: 6: Hoare triple {93744#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,061 INFO L290 TraceCheckUtils]: 7: Hoare triple {93744#(<= ~counter~0 0)} ~cond := #in~cond; {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,061 INFO L290 TraceCheckUtils]: 8: Hoare triple {93744#(<= ~counter~0 0)} assume !(0 == ~cond); {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,062 INFO L290 TraceCheckUtils]: 9: Hoare triple {93744#(<= ~counter~0 0)} assume true; {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,062 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {93744#(<= ~counter~0 0)} {93744#(<= ~counter~0 0)} #90#return; {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,062 INFO L272 TraceCheckUtils]: 11: Hoare triple {93744#(<= ~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)); {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,062 INFO L290 TraceCheckUtils]: 12: Hoare triple {93744#(<= ~counter~0 0)} ~cond := #in~cond; {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,062 INFO L290 TraceCheckUtils]: 13: Hoare triple {93744#(<= ~counter~0 0)} assume !(0 == ~cond); {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,063 INFO L290 TraceCheckUtils]: 14: Hoare triple {93744#(<= ~counter~0 0)} assume true; {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,063 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {93744#(<= ~counter~0 0)} {93744#(<= ~counter~0 0)} #92#return; {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,063 INFO L290 TraceCheckUtils]: 16: Hoare triple {93744#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {93744#(<= ~counter~0 0)} is VALID [2022-04-28 06:06:42,065 INFO L290 TraceCheckUtils]: 17: Hoare triple {93744#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {93793#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:42,065 INFO L290 TraceCheckUtils]: 18: Hoare triple {93793#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {93793#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:42,066 INFO L272 TraceCheckUtils]: 19: Hoare triple {93793#(<= ~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)); {93793#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:42,066 INFO L290 TraceCheckUtils]: 20: Hoare triple {93793#(<= ~counter~0 1)} ~cond := #in~cond; {93793#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:42,066 INFO L290 TraceCheckUtils]: 21: Hoare triple {93793#(<= ~counter~0 1)} assume !(0 == ~cond); {93793#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:42,066 INFO L290 TraceCheckUtils]: 22: Hoare triple {93793#(<= ~counter~0 1)} assume true; {93793#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:42,066 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {93793#(<= ~counter~0 1)} {93793#(<= ~counter~0 1)} #94#return; {93793#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:42,067 INFO L290 TraceCheckUtils]: 24: Hoare triple {93793#(<= ~counter~0 1)} assume !!(0 != ~r~0); {93793#(<= ~counter~0 1)} is VALID [2022-04-28 06:06:42,067 INFO L290 TraceCheckUtils]: 25: Hoare triple {93793#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {93818#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:42,067 INFO L290 TraceCheckUtils]: 26: Hoare triple {93818#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {93818#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:42,068 INFO L272 TraceCheckUtils]: 27: Hoare triple {93818#(<= ~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)); {93818#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:42,068 INFO L290 TraceCheckUtils]: 28: Hoare triple {93818#(<= ~counter~0 2)} ~cond := #in~cond; {93818#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:42,068 INFO L290 TraceCheckUtils]: 29: Hoare triple {93818#(<= ~counter~0 2)} assume !(0 == ~cond); {93818#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:42,068 INFO L290 TraceCheckUtils]: 30: Hoare triple {93818#(<= ~counter~0 2)} assume true; {93818#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:42,069 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {93818#(<= ~counter~0 2)} {93818#(<= ~counter~0 2)} #96#return; {93818#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:42,069 INFO L290 TraceCheckUtils]: 32: Hoare triple {93818#(<= ~counter~0 2)} assume !(~r~0 > 0); {93818#(<= ~counter~0 2)} is VALID [2022-04-28 06:06:42,070 INFO L290 TraceCheckUtils]: 33: Hoare triple {93818#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {93843#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:42,070 INFO L290 TraceCheckUtils]: 34: Hoare triple {93843#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {93843#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:42,070 INFO L272 TraceCheckUtils]: 35: Hoare triple {93843#(<= ~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)); {93843#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:42,070 INFO L290 TraceCheckUtils]: 36: Hoare triple {93843#(<= ~counter~0 3)} ~cond := #in~cond; {93843#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:42,070 INFO L290 TraceCheckUtils]: 37: Hoare triple {93843#(<= ~counter~0 3)} assume !(0 == ~cond); {93843#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:42,071 INFO L290 TraceCheckUtils]: 38: Hoare triple {93843#(<= ~counter~0 3)} assume true; {93843#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:42,071 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {93843#(<= ~counter~0 3)} {93843#(<= ~counter~0 3)} #98#return; {93843#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:42,071 INFO L290 TraceCheckUtils]: 40: Hoare triple {93843#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {93843#(<= ~counter~0 3)} is VALID [2022-04-28 06:06:42,072 INFO L290 TraceCheckUtils]: 41: Hoare triple {93843#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {93868#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:42,072 INFO L290 TraceCheckUtils]: 42: Hoare triple {93868#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {93868#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:42,072 INFO L272 TraceCheckUtils]: 43: Hoare triple {93868#(<= ~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)); {93868#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:42,073 INFO L290 TraceCheckUtils]: 44: Hoare triple {93868#(<= ~counter~0 4)} ~cond := #in~cond; {93868#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:42,073 INFO L290 TraceCheckUtils]: 45: Hoare triple {93868#(<= ~counter~0 4)} assume !(0 == ~cond); {93868#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:42,073 INFO L290 TraceCheckUtils]: 46: Hoare triple {93868#(<= ~counter~0 4)} assume true; {93868#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:42,073 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {93868#(<= ~counter~0 4)} {93868#(<= ~counter~0 4)} #98#return; {93868#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:42,073 INFO L290 TraceCheckUtils]: 48: Hoare triple {93868#(<= ~counter~0 4)} assume !(~r~0 < 0); {93868#(<= ~counter~0 4)} is VALID [2022-04-28 06:06:42,074 INFO L290 TraceCheckUtils]: 49: Hoare triple {93868#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {93893#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:42,074 INFO L290 TraceCheckUtils]: 50: Hoare triple {93893#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {93893#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:42,075 INFO L272 TraceCheckUtils]: 51: Hoare triple {93893#(<= ~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)); {93893#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:42,075 INFO L290 TraceCheckUtils]: 52: Hoare triple {93893#(<= ~counter~0 5)} ~cond := #in~cond; {93893#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:42,075 INFO L290 TraceCheckUtils]: 53: Hoare triple {93893#(<= ~counter~0 5)} assume !(0 == ~cond); {93893#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:42,075 INFO L290 TraceCheckUtils]: 54: Hoare triple {93893#(<= ~counter~0 5)} assume true; {93893#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:42,076 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {93893#(<= ~counter~0 5)} {93893#(<= ~counter~0 5)} #94#return; {93893#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:42,076 INFO L290 TraceCheckUtils]: 56: Hoare triple {93893#(<= ~counter~0 5)} assume !!(0 != ~r~0); {93893#(<= ~counter~0 5)} is VALID [2022-04-28 06:06:42,077 INFO L290 TraceCheckUtils]: 57: Hoare triple {93893#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {93918#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:42,078 INFO L290 TraceCheckUtils]: 58: Hoare triple {93918#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {93918#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:42,078 INFO L272 TraceCheckUtils]: 59: Hoare triple {93918#(<= ~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)); {93918#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:42,078 INFO L290 TraceCheckUtils]: 60: Hoare triple {93918#(<= ~counter~0 6)} ~cond := #in~cond; {93918#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:42,078 INFO L290 TraceCheckUtils]: 61: Hoare triple {93918#(<= ~counter~0 6)} assume !(0 == ~cond); {93918#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:42,079 INFO L290 TraceCheckUtils]: 62: Hoare triple {93918#(<= ~counter~0 6)} assume true; {93918#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:42,079 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {93918#(<= ~counter~0 6)} {93918#(<= ~counter~0 6)} #96#return; {93918#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:42,079 INFO L290 TraceCheckUtils]: 64: Hoare triple {93918#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {93918#(<= ~counter~0 6)} is VALID [2022-04-28 06:06:42,080 INFO L290 TraceCheckUtils]: 65: Hoare triple {93918#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {93943#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:42,080 INFO L290 TraceCheckUtils]: 66: Hoare triple {93943#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {93943#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:42,081 INFO L272 TraceCheckUtils]: 67: Hoare triple {93943#(<= ~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)); {93943#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:42,081 INFO L290 TraceCheckUtils]: 68: Hoare triple {93943#(<= ~counter~0 7)} ~cond := #in~cond; {93943#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:42,081 INFO L290 TraceCheckUtils]: 69: Hoare triple {93943#(<= ~counter~0 7)} assume !(0 == ~cond); {93943#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:42,081 INFO L290 TraceCheckUtils]: 70: Hoare triple {93943#(<= ~counter~0 7)} assume true; {93943#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:42,081 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {93943#(<= ~counter~0 7)} {93943#(<= ~counter~0 7)} #96#return; {93943#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:42,082 INFO L290 TraceCheckUtils]: 72: Hoare triple {93943#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {93943#(<= ~counter~0 7)} is VALID [2022-04-28 06:06:42,083 INFO L290 TraceCheckUtils]: 73: Hoare triple {93943#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {93968#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:42,083 INFO L290 TraceCheckUtils]: 74: Hoare triple {93968#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {93968#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:42,083 INFO L272 TraceCheckUtils]: 75: Hoare triple {93968#(<= ~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)); {93968#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:42,083 INFO L290 TraceCheckUtils]: 76: Hoare triple {93968#(<= ~counter~0 8)} ~cond := #in~cond; {93968#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:42,083 INFO L290 TraceCheckUtils]: 77: Hoare triple {93968#(<= ~counter~0 8)} assume !(0 == ~cond); {93968#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:42,084 INFO L290 TraceCheckUtils]: 78: Hoare triple {93968#(<= ~counter~0 8)} assume true; {93968#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:42,084 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {93968#(<= ~counter~0 8)} {93968#(<= ~counter~0 8)} #96#return; {93968#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:42,084 INFO L290 TraceCheckUtils]: 80: Hoare triple {93968#(<= ~counter~0 8)} assume !(~r~0 > 0); {93968#(<= ~counter~0 8)} is VALID [2022-04-28 06:06:42,085 INFO L290 TraceCheckUtils]: 81: Hoare triple {93968#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {93993#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:42,085 INFO L290 TraceCheckUtils]: 82: Hoare triple {93993#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {93993#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:42,085 INFO L272 TraceCheckUtils]: 83: Hoare triple {93993#(<= ~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)); {93993#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:42,086 INFO L290 TraceCheckUtils]: 84: Hoare triple {93993#(<= ~counter~0 9)} ~cond := #in~cond; {93993#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:42,086 INFO L290 TraceCheckUtils]: 85: Hoare triple {93993#(<= ~counter~0 9)} assume !(0 == ~cond); {93993#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:42,086 INFO L290 TraceCheckUtils]: 86: Hoare triple {93993#(<= ~counter~0 9)} assume true; {93993#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:42,086 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {93993#(<= ~counter~0 9)} {93993#(<= ~counter~0 9)} #98#return; {93993#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:42,086 INFO L290 TraceCheckUtils]: 88: Hoare triple {93993#(<= ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {93993#(<= ~counter~0 9)} is VALID [2022-04-28 06:06:42,087 INFO L290 TraceCheckUtils]: 89: Hoare triple {93993#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {94018#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:42,087 INFO L290 TraceCheckUtils]: 90: Hoare triple {94018#(<= ~counter~0 10)} assume !!(#t~post8 < 50);havoc #t~post8; {94018#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:42,088 INFO L272 TraceCheckUtils]: 91: Hoare triple {94018#(<= ~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)); {94018#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:42,088 INFO L290 TraceCheckUtils]: 92: Hoare triple {94018#(<= ~counter~0 10)} ~cond := #in~cond; {94018#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:42,088 INFO L290 TraceCheckUtils]: 93: Hoare triple {94018#(<= ~counter~0 10)} assume !(0 == ~cond); {94018#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:42,088 INFO L290 TraceCheckUtils]: 94: Hoare triple {94018#(<= ~counter~0 10)} assume true; {94018#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:42,089 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {94018#(<= ~counter~0 10)} {94018#(<= ~counter~0 10)} #98#return; {94018#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:42,089 INFO L290 TraceCheckUtils]: 96: Hoare triple {94018#(<= ~counter~0 10)} assume !(~r~0 < 0); {94018#(<= ~counter~0 10)} is VALID [2022-04-28 06:06:42,090 INFO L290 TraceCheckUtils]: 97: Hoare triple {94018#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {94043#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:42,090 INFO L290 TraceCheckUtils]: 98: Hoare triple {94043#(<= ~counter~0 11)} assume !!(#t~post6 < 50);havoc #t~post6; {94043#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:42,090 INFO L272 TraceCheckUtils]: 99: Hoare triple {94043#(<= ~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)); {94043#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:42,090 INFO L290 TraceCheckUtils]: 100: Hoare triple {94043#(<= ~counter~0 11)} ~cond := #in~cond; {94043#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:42,090 INFO L290 TraceCheckUtils]: 101: Hoare triple {94043#(<= ~counter~0 11)} assume !(0 == ~cond); {94043#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:42,091 INFO L290 TraceCheckUtils]: 102: Hoare triple {94043#(<= ~counter~0 11)} assume true; {94043#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:42,091 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {94043#(<= ~counter~0 11)} {94043#(<= ~counter~0 11)} #94#return; {94043#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:42,091 INFO L290 TraceCheckUtils]: 104: Hoare triple {94043#(<= ~counter~0 11)} assume !!(0 != ~r~0); {94043#(<= ~counter~0 11)} is VALID [2022-04-28 06:06:42,092 INFO L290 TraceCheckUtils]: 105: Hoare triple {94043#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {94068#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:42,092 INFO L290 TraceCheckUtils]: 106: Hoare triple {94068#(<= ~counter~0 12)} assume !!(#t~post7 < 50);havoc #t~post7; {94068#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:42,093 INFO L272 TraceCheckUtils]: 107: Hoare triple {94068#(<= ~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)); {94068#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:42,093 INFO L290 TraceCheckUtils]: 108: Hoare triple {94068#(<= ~counter~0 12)} ~cond := #in~cond; {94068#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:42,093 INFO L290 TraceCheckUtils]: 109: Hoare triple {94068#(<= ~counter~0 12)} assume !(0 == ~cond); {94068#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:42,093 INFO L290 TraceCheckUtils]: 110: Hoare triple {94068#(<= ~counter~0 12)} assume true; {94068#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:42,093 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {94068#(<= ~counter~0 12)} {94068#(<= ~counter~0 12)} #96#return; {94068#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:42,094 INFO L290 TraceCheckUtils]: 112: Hoare triple {94068#(<= ~counter~0 12)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {94068#(<= ~counter~0 12)} is VALID [2022-04-28 06:06:42,094 INFO L290 TraceCheckUtils]: 113: Hoare triple {94068#(<= ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {94093#(<= |main_#t~post7| 12)} is VALID [2022-04-28 06:06:42,094 INFO L290 TraceCheckUtils]: 114: Hoare triple {94093#(<= |main_#t~post7| 12)} assume !(#t~post7 < 50);havoc #t~post7; {93737#false} is VALID [2022-04-28 06:06:42,094 INFO L290 TraceCheckUtils]: 115: Hoare triple {93737#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {93737#false} is VALID [2022-04-28 06:06:42,094 INFO L290 TraceCheckUtils]: 116: Hoare triple {93737#false} assume !(#t~post8 < 50);havoc #t~post8; {93737#false} is VALID [2022-04-28 06:06:42,094 INFO L290 TraceCheckUtils]: 117: Hoare triple {93737#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {93737#false} is VALID [2022-04-28 06:06:42,094 INFO L290 TraceCheckUtils]: 118: Hoare triple {93737#false} assume !(#t~post6 < 50);havoc #t~post6; {93737#false} is VALID [2022-04-28 06:06:42,094 INFO L272 TraceCheckUtils]: 119: Hoare triple {93737#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)); {93737#false} is VALID [2022-04-28 06:06:42,094 INFO L290 TraceCheckUtils]: 120: Hoare triple {93737#false} ~cond := #in~cond; {93737#false} is VALID [2022-04-28 06:06:42,095 INFO L290 TraceCheckUtils]: 121: Hoare triple {93737#false} assume 0 == ~cond; {93737#false} is VALID [2022-04-28 06:06:42,095 INFO L290 TraceCheckUtils]: 122: Hoare triple {93737#false} assume !false; {93737#false} is VALID [2022-04-28 06:06:42,095 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-28 06:06:42,095 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:06:42,479 INFO L290 TraceCheckUtils]: 122: Hoare triple {93737#false} assume !false; {93737#false} is VALID [2022-04-28 06:06:42,480 INFO L290 TraceCheckUtils]: 121: Hoare triple {93737#false} assume 0 == ~cond; {93737#false} is VALID [2022-04-28 06:06:42,480 INFO L290 TraceCheckUtils]: 120: Hoare triple {93737#false} ~cond := #in~cond; {93737#false} is VALID [2022-04-28 06:06:42,480 INFO L272 TraceCheckUtils]: 119: Hoare triple {93737#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)); {93737#false} is VALID [2022-04-28 06:06:42,480 INFO L290 TraceCheckUtils]: 118: Hoare triple {93737#false} assume !(#t~post6 < 50);havoc #t~post6; {93737#false} is VALID [2022-04-28 06:06:42,480 INFO L290 TraceCheckUtils]: 117: Hoare triple {93737#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {93737#false} is VALID [2022-04-28 06:06:42,480 INFO L290 TraceCheckUtils]: 116: Hoare triple {93737#false} assume !(#t~post8 < 50);havoc #t~post8; {93737#false} is VALID [2022-04-28 06:06:42,480 INFO L290 TraceCheckUtils]: 115: Hoare triple {93737#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {93737#false} is VALID [2022-04-28 06:06:42,480 INFO L290 TraceCheckUtils]: 114: Hoare triple {94145#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {93737#false} is VALID [2022-04-28 06:06:42,480 INFO L290 TraceCheckUtils]: 113: Hoare triple {94149#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {94145#(< |main_#t~post7| 50)} is VALID [2022-04-28 06:06:42,481 INFO L290 TraceCheckUtils]: 112: Hoare triple {94149#(< ~counter~0 50)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {94149#(< ~counter~0 50)} is VALID [2022-04-28 06:06:42,481 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {93736#true} {94149#(< ~counter~0 50)} #96#return; {94149#(< ~counter~0 50)} is VALID [2022-04-28 06:06:42,481 INFO L290 TraceCheckUtils]: 110: Hoare triple {93736#true} assume true; {93736#true} is VALID [2022-04-28 06:06:42,481 INFO L290 TraceCheckUtils]: 109: Hoare triple {93736#true} assume !(0 == ~cond); {93736#true} is VALID [2022-04-28 06:06:42,481 INFO L290 TraceCheckUtils]: 108: Hoare triple {93736#true} ~cond := #in~cond; {93736#true} is VALID [2022-04-28 06:06:42,481 INFO L272 TraceCheckUtils]: 107: Hoare triple {94149#(< ~counter~0 50)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {93736#true} is VALID [2022-04-28 06:06:42,481 INFO L290 TraceCheckUtils]: 106: Hoare triple {94149#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {94149#(< ~counter~0 50)} is VALID [2022-04-28 06:06:42,483 INFO L290 TraceCheckUtils]: 105: Hoare triple {94174#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {94149#(< ~counter~0 50)} is VALID [2022-04-28 06:06:42,484 INFO L290 TraceCheckUtils]: 104: Hoare triple {94174#(< ~counter~0 49)} assume !!(0 != ~r~0); {94174#(< ~counter~0 49)} is VALID [2022-04-28 06:06:42,484 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {93736#true} {94174#(< ~counter~0 49)} #94#return; {94174#(< ~counter~0 49)} is VALID [2022-04-28 06:06:42,484 INFO L290 TraceCheckUtils]: 102: Hoare triple {93736#true} assume true; {93736#true} is VALID [2022-04-28 06:06:42,484 INFO L290 TraceCheckUtils]: 101: Hoare triple {93736#true} assume !(0 == ~cond); {93736#true} is VALID [2022-04-28 06:06:42,484 INFO L290 TraceCheckUtils]: 100: Hoare triple {93736#true} ~cond := #in~cond; {93736#true} is VALID [2022-04-28 06:06:42,484 INFO L272 TraceCheckUtils]: 99: Hoare triple {94174#(< ~counter~0 49)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {93736#true} is VALID [2022-04-28 06:06:42,484 INFO L290 TraceCheckUtils]: 98: Hoare triple {94174#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {94174#(< ~counter~0 49)} is VALID [2022-04-28 06:06:42,485 INFO L290 TraceCheckUtils]: 97: Hoare triple {94199#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {94174#(< ~counter~0 49)} is VALID [2022-04-28 06:06:42,485 INFO L290 TraceCheckUtils]: 96: Hoare triple {94199#(< ~counter~0 48)} assume !(~r~0 < 0); {94199#(< ~counter~0 48)} is VALID [2022-04-28 06:06:42,486 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {93736#true} {94199#(< ~counter~0 48)} #98#return; {94199#(< ~counter~0 48)} is VALID [2022-04-28 06:06:42,486 INFO L290 TraceCheckUtils]: 94: Hoare triple {93736#true} assume true; {93736#true} is VALID [2022-04-28 06:06:42,486 INFO L290 TraceCheckUtils]: 93: Hoare triple {93736#true} assume !(0 == ~cond); {93736#true} is VALID [2022-04-28 06:06:42,486 INFO L290 TraceCheckUtils]: 92: Hoare triple {93736#true} ~cond := #in~cond; {93736#true} is VALID [2022-04-28 06:06:42,486 INFO L272 TraceCheckUtils]: 91: Hoare triple {94199#(< ~counter~0 48)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {93736#true} is VALID [2022-04-28 06:06:42,486 INFO L290 TraceCheckUtils]: 90: Hoare triple {94199#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {94199#(< ~counter~0 48)} is VALID [2022-04-28 06:06:42,487 INFO L290 TraceCheckUtils]: 89: Hoare triple {94224#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {94199#(< ~counter~0 48)} is VALID [2022-04-28 06:06:42,487 INFO L290 TraceCheckUtils]: 88: Hoare triple {94224#(< ~counter~0 47)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {94224#(< ~counter~0 47)} is VALID [2022-04-28 06:06:42,487 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {93736#true} {94224#(< ~counter~0 47)} #98#return; {94224#(< ~counter~0 47)} is VALID [2022-04-28 06:06:42,487 INFO L290 TraceCheckUtils]: 86: Hoare triple {93736#true} assume true; {93736#true} is VALID [2022-04-28 06:06:42,487 INFO L290 TraceCheckUtils]: 85: Hoare triple {93736#true} assume !(0 == ~cond); {93736#true} is VALID [2022-04-28 06:06:42,487 INFO L290 TraceCheckUtils]: 84: Hoare triple {93736#true} ~cond := #in~cond; {93736#true} is VALID [2022-04-28 06:06:42,488 INFO L272 TraceCheckUtils]: 83: Hoare triple {94224#(< ~counter~0 47)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {93736#true} is VALID [2022-04-28 06:06:42,488 INFO L290 TraceCheckUtils]: 82: Hoare triple {94224#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {94224#(< ~counter~0 47)} is VALID [2022-04-28 06:06:42,488 INFO L290 TraceCheckUtils]: 81: Hoare triple {94249#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {94224#(< ~counter~0 47)} is VALID [2022-04-28 06:06:42,489 INFO L290 TraceCheckUtils]: 80: Hoare triple {94249#(< ~counter~0 46)} assume !(~r~0 > 0); {94249#(< ~counter~0 46)} is VALID [2022-04-28 06:06:42,489 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {93736#true} {94249#(< ~counter~0 46)} #96#return; {94249#(< ~counter~0 46)} is VALID [2022-04-28 06:06:42,489 INFO L290 TraceCheckUtils]: 78: Hoare triple {93736#true} assume true; {93736#true} is VALID [2022-04-28 06:06:42,489 INFO L290 TraceCheckUtils]: 77: Hoare triple {93736#true} assume !(0 == ~cond); {93736#true} is VALID [2022-04-28 06:06:42,489 INFO L290 TraceCheckUtils]: 76: Hoare triple {93736#true} ~cond := #in~cond; {93736#true} is VALID [2022-04-28 06:06:42,489 INFO L272 TraceCheckUtils]: 75: Hoare triple {94249#(< ~counter~0 46)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {93736#true} is VALID [2022-04-28 06:06:42,489 INFO L290 TraceCheckUtils]: 74: Hoare triple {94249#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {94249#(< ~counter~0 46)} is VALID [2022-04-28 06:06:42,490 INFO L290 TraceCheckUtils]: 73: Hoare triple {94274#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {94249#(< ~counter~0 46)} is VALID [2022-04-28 06:06:42,490 INFO L290 TraceCheckUtils]: 72: Hoare triple {94274#(< ~counter~0 45)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {94274#(< ~counter~0 45)} is VALID [2022-04-28 06:06:42,491 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {93736#true} {94274#(< ~counter~0 45)} #96#return; {94274#(< ~counter~0 45)} is VALID [2022-04-28 06:06:42,491 INFO L290 TraceCheckUtils]: 70: Hoare triple {93736#true} assume true; {93736#true} is VALID [2022-04-28 06:06:42,491 INFO L290 TraceCheckUtils]: 69: Hoare triple {93736#true} assume !(0 == ~cond); {93736#true} is VALID [2022-04-28 06:06:42,491 INFO L290 TraceCheckUtils]: 68: Hoare triple {93736#true} ~cond := #in~cond; {93736#true} is VALID [2022-04-28 06:06:42,491 INFO L272 TraceCheckUtils]: 67: Hoare triple {94274#(< ~counter~0 45)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {93736#true} is VALID [2022-04-28 06:06:42,491 INFO L290 TraceCheckUtils]: 66: Hoare triple {94274#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {94274#(< ~counter~0 45)} is VALID [2022-04-28 06:06:42,492 INFO L290 TraceCheckUtils]: 65: Hoare triple {94299#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {94274#(< ~counter~0 45)} is VALID [2022-04-28 06:06:42,492 INFO L290 TraceCheckUtils]: 64: Hoare triple {94299#(< ~counter~0 44)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {94299#(< ~counter~0 44)} is VALID [2022-04-28 06:06:42,492 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {93736#true} {94299#(< ~counter~0 44)} #96#return; {94299#(< ~counter~0 44)} is VALID [2022-04-28 06:06:42,492 INFO L290 TraceCheckUtils]: 62: Hoare triple {93736#true} assume true; {93736#true} is VALID [2022-04-28 06:06:42,492 INFO L290 TraceCheckUtils]: 61: Hoare triple {93736#true} assume !(0 == ~cond); {93736#true} is VALID [2022-04-28 06:06:42,493 INFO L290 TraceCheckUtils]: 60: Hoare triple {93736#true} ~cond := #in~cond; {93736#true} is VALID [2022-04-28 06:06:42,493 INFO L272 TraceCheckUtils]: 59: Hoare triple {94299#(< ~counter~0 44)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {93736#true} is VALID [2022-04-28 06:06:42,506 INFO L290 TraceCheckUtils]: 58: Hoare triple {94299#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {94299#(< ~counter~0 44)} is VALID [2022-04-28 06:06:42,507 INFO L290 TraceCheckUtils]: 57: Hoare triple {94324#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {94299#(< ~counter~0 44)} is VALID [2022-04-28 06:06:42,508 INFO L290 TraceCheckUtils]: 56: Hoare triple {94324#(< ~counter~0 43)} assume !!(0 != ~r~0); {94324#(< ~counter~0 43)} is VALID [2022-04-28 06:06:42,508 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {93736#true} {94324#(< ~counter~0 43)} #94#return; {94324#(< ~counter~0 43)} is VALID [2022-04-28 06:06:42,509 INFO L290 TraceCheckUtils]: 54: Hoare triple {93736#true} assume true; {93736#true} is VALID [2022-04-28 06:06:42,509 INFO L290 TraceCheckUtils]: 53: Hoare triple {93736#true} assume !(0 == ~cond); {93736#true} is VALID [2022-04-28 06:06:42,509 INFO L290 TraceCheckUtils]: 52: Hoare triple {93736#true} ~cond := #in~cond; {93736#true} is VALID [2022-04-28 06:06:42,509 INFO L272 TraceCheckUtils]: 51: Hoare triple {94324#(< ~counter~0 43)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {93736#true} is VALID [2022-04-28 06:06:42,509 INFO L290 TraceCheckUtils]: 50: Hoare triple {94324#(< ~counter~0 43)} assume !!(#t~post6 < 50);havoc #t~post6; {94324#(< ~counter~0 43)} is VALID [2022-04-28 06:06:42,510 INFO L290 TraceCheckUtils]: 49: Hoare triple {94349#(< ~counter~0 42)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {94324#(< ~counter~0 43)} is VALID [2022-04-28 06:06:42,510 INFO L290 TraceCheckUtils]: 48: Hoare triple {94349#(< ~counter~0 42)} assume !(~r~0 < 0); {94349#(< ~counter~0 42)} is VALID [2022-04-28 06:06:42,511 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {93736#true} {94349#(< ~counter~0 42)} #98#return; {94349#(< ~counter~0 42)} is VALID [2022-04-28 06:06:42,511 INFO L290 TraceCheckUtils]: 46: Hoare triple {93736#true} assume true; {93736#true} is VALID [2022-04-28 06:06:42,511 INFO L290 TraceCheckUtils]: 45: Hoare triple {93736#true} assume !(0 == ~cond); {93736#true} is VALID [2022-04-28 06:06:42,511 INFO L290 TraceCheckUtils]: 44: Hoare triple {93736#true} ~cond := #in~cond; {93736#true} is VALID [2022-04-28 06:06:42,511 INFO L272 TraceCheckUtils]: 43: Hoare triple {94349#(< ~counter~0 42)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {93736#true} is VALID [2022-04-28 06:06:42,511 INFO L290 TraceCheckUtils]: 42: Hoare triple {94349#(< ~counter~0 42)} assume !!(#t~post8 < 50);havoc #t~post8; {94349#(< ~counter~0 42)} is VALID [2022-04-28 06:06:42,512 INFO L290 TraceCheckUtils]: 41: Hoare triple {94374#(< ~counter~0 41)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {94349#(< ~counter~0 42)} is VALID [2022-04-28 06:06:42,512 INFO L290 TraceCheckUtils]: 40: Hoare triple {94374#(< ~counter~0 41)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {94374#(< ~counter~0 41)} is VALID [2022-04-28 06:06:42,513 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {93736#true} {94374#(< ~counter~0 41)} #98#return; {94374#(< ~counter~0 41)} is VALID [2022-04-28 06:06:42,513 INFO L290 TraceCheckUtils]: 38: Hoare triple {93736#true} assume true; {93736#true} is VALID [2022-04-28 06:06:42,513 INFO L290 TraceCheckUtils]: 37: Hoare triple {93736#true} assume !(0 == ~cond); {93736#true} is VALID [2022-04-28 06:06:42,513 INFO L290 TraceCheckUtils]: 36: Hoare triple {93736#true} ~cond := #in~cond; {93736#true} is VALID [2022-04-28 06:06:42,513 INFO L272 TraceCheckUtils]: 35: Hoare triple {94374#(< ~counter~0 41)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {93736#true} is VALID [2022-04-28 06:06:42,513 INFO L290 TraceCheckUtils]: 34: Hoare triple {94374#(< ~counter~0 41)} assume !!(#t~post8 < 50);havoc #t~post8; {94374#(< ~counter~0 41)} is VALID [2022-04-28 06:06:42,514 INFO L290 TraceCheckUtils]: 33: Hoare triple {94399#(< ~counter~0 40)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {94374#(< ~counter~0 41)} is VALID [2022-04-28 06:06:42,514 INFO L290 TraceCheckUtils]: 32: Hoare triple {94399#(< ~counter~0 40)} assume !(~r~0 > 0); {94399#(< ~counter~0 40)} is VALID [2022-04-28 06:06:42,515 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {93736#true} {94399#(< ~counter~0 40)} #96#return; {94399#(< ~counter~0 40)} is VALID [2022-04-28 06:06:42,515 INFO L290 TraceCheckUtils]: 30: Hoare triple {93736#true} assume true; {93736#true} is VALID [2022-04-28 06:06:42,515 INFO L290 TraceCheckUtils]: 29: Hoare triple {93736#true} assume !(0 == ~cond); {93736#true} is VALID [2022-04-28 06:06:42,515 INFO L290 TraceCheckUtils]: 28: Hoare triple {93736#true} ~cond := #in~cond; {93736#true} is VALID [2022-04-28 06:06:42,515 INFO L272 TraceCheckUtils]: 27: Hoare triple {94399#(< ~counter~0 40)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {93736#true} is VALID [2022-04-28 06:06:42,515 INFO L290 TraceCheckUtils]: 26: Hoare triple {94399#(< ~counter~0 40)} assume !!(#t~post7 < 50);havoc #t~post7; {94399#(< ~counter~0 40)} is VALID [2022-04-28 06:06:42,516 INFO L290 TraceCheckUtils]: 25: Hoare triple {94424#(< ~counter~0 39)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {94399#(< ~counter~0 40)} is VALID [2022-04-28 06:06:42,516 INFO L290 TraceCheckUtils]: 24: Hoare triple {94424#(< ~counter~0 39)} assume !!(0 != ~r~0); {94424#(< ~counter~0 39)} is VALID [2022-04-28 06:06:42,517 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {93736#true} {94424#(< ~counter~0 39)} #94#return; {94424#(< ~counter~0 39)} is VALID [2022-04-28 06:06:42,517 INFO L290 TraceCheckUtils]: 22: Hoare triple {93736#true} assume true; {93736#true} is VALID [2022-04-28 06:06:42,517 INFO L290 TraceCheckUtils]: 21: Hoare triple {93736#true} assume !(0 == ~cond); {93736#true} is VALID [2022-04-28 06:06:42,517 INFO L290 TraceCheckUtils]: 20: Hoare triple {93736#true} ~cond := #in~cond; {93736#true} is VALID [2022-04-28 06:06:42,517 INFO L272 TraceCheckUtils]: 19: Hoare triple {94424#(< ~counter~0 39)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {93736#true} is VALID [2022-04-28 06:06:42,517 INFO L290 TraceCheckUtils]: 18: Hoare triple {94424#(< ~counter~0 39)} assume !!(#t~post6 < 50);havoc #t~post6; {94424#(< ~counter~0 39)} is VALID [2022-04-28 06:06:42,518 INFO L290 TraceCheckUtils]: 17: Hoare triple {94449#(< ~counter~0 38)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {94424#(< ~counter~0 39)} is VALID [2022-04-28 06:06:42,518 INFO L290 TraceCheckUtils]: 16: Hoare triple {94449#(< ~counter~0 38)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {94449#(< ~counter~0 38)} is VALID [2022-04-28 06:06:42,519 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {93736#true} {94449#(< ~counter~0 38)} #92#return; {94449#(< ~counter~0 38)} is VALID [2022-04-28 06:06:42,519 INFO L290 TraceCheckUtils]: 14: Hoare triple {93736#true} assume true; {93736#true} is VALID [2022-04-28 06:06:42,519 INFO L290 TraceCheckUtils]: 13: Hoare triple {93736#true} assume !(0 == ~cond); {93736#true} is VALID [2022-04-28 06:06:42,519 INFO L290 TraceCheckUtils]: 12: Hoare triple {93736#true} ~cond := #in~cond; {93736#true} is VALID [2022-04-28 06:06:42,519 INFO L272 TraceCheckUtils]: 11: Hoare triple {94449#(< ~counter~0 38)} 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)); {93736#true} is VALID [2022-04-28 06:06:42,519 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {93736#true} {94449#(< ~counter~0 38)} #90#return; {94449#(< ~counter~0 38)} is VALID [2022-04-28 06:06:42,519 INFO L290 TraceCheckUtils]: 9: Hoare triple {93736#true} assume true; {93736#true} is VALID [2022-04-28 06:06:42,520 INFO L290 TraceCheckUtils]: 8: Hoare triple {93736#true} assume !(0 == ~cond); {93736#true} is VALID [2022-04-28 06:06:42,520 INFO L290 TraceCheckUtils]: 7: Hoare triple {93736#true} ~cond := #in~cond; {93736#true} is VALID [2022-04-28 06:06:42,520 INFO L272 TraceCheckUtils]: 6: Hoare triple {94449#(< ~counter~0 38)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {93736#true} is VALID [2022-04-28 06:06:42,520 INFO L290 TraceCheckUtils]: 5: Hoare triple {94449#(< ~counter~0 38)} 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; {94449#(< ~counter~0 38)} is VALID [2022-04-28 06:06:42,520 INFO L272 TraceCheckUtils]: 4: Hoare triple {94449#(< ~counter~0 38)} call #t~ret9 := main(); {94449#(< ~counter~0 38)} is VALID [2022-04-28 06:06:42,520 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {94449#(< ~counter~0 38)} {93736#true} #102#return; {94449#(< ~counter~0 38)} is VALID [2022-04-28 06:06:42,521 INFO L290 TraceCheckUtils]: 2: Hoare triple {94449#(< ~counter~0 38)} assume true; {94449#(< ~counter~0 38)} is VALID [2022-04-28 06:06:42,521 INFO L290 TraceCheckUtils]: 1: Hoare triple {93736#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {94449#(< ~counter~0 38)} is VALID [2022-04-28 06:06:42,521 INFO L272 TraceCheckUtils]: 0: Hoare triple {93736#true} call ULTIMATE.init(); {93736#true} is VALID [2022-04-28 06:06:42,522 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-28 06:06:42,522 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:06:42,522 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1267063358] [2022-04-28 06:06:42,522 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:06:42,522 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1847532893] [2022-04-28 06:06:42,522 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1847532893] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:06:42,522 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:06:42,522 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 30 [2022-04-28 06:06:42,522 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:06:42,522 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [585601089] [2022-04-28 06:06:42,522 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [585601089] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:06:42,522 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:06:42,522 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 06:06:42,522 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1438810707] [2022-04-28 06:06:42,523 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:06:42,523 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-28 06:06:42,523 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:06:42,523 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-28 06:06:42,618 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-28 06:06:42,618 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 06:06:42,618 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:06:42,618 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 06:06:42,619 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=383, Invalid=487, Unknown=0, NotChecked=0, Total=870 [2022-04-28 06:06:42,619 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-28 06:06:45,079 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:06:45,080 INFO L93 Difference]: Finished difference Result 887 states and 1217 transitions. [2022-04-28 06:06:45,080 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-04-28 06:06:45,080 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-28 06:06:45,080 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:06:45,080 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-28 06:06:45,082 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 276 transitions. [2022-04-28 06:06:45,082 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-28 06:06:45,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 276 transitions. [2022-04-28 06:06:45,084 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 276 transitions. [2022-04-28 06:06:45,324 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-28 06:06:45,343 INFO L225 Difference]: With dead ends: 887 [2022-04-28 06:06:45,343 INFO L226 Difference]: Without dead ends: 686 [2022-04-28 06:06:45,344 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 256 GetRequests, 217 SyntacticMatches, 0 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 92 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=691, Invalid=949, Unknown=0, NotChecked=0, Total=1640 [2022-04-28 06:06:45,344 INFO L413 NwaCegarLoop]: 66 mSDtfsCounter, 186 mSDsluCounter, 217 mSDsCounter, 0 mSdLazyCounter, 143 mSolverCounterSat, 170 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 186 SdHoareTripleChecker+Valid, 283 SdHoareTripleChecker+Invalid, 313 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 170 IncrementalHoareTripleChecker+Valid, 143 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 06:06:45,344 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [186 Valid, 283 Invalid, 313 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [170 Valid, 143 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 06:06:45,345 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 686 states. [2022-04-28 06:06:46,533 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 686 to 686. [2022-04-28 06:06:46,534 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:06:46,534 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-28 06:06:46,535 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-28 06:06:46,535 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-28 06:06:46,550 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:06:46,550 INFO L93 Difference]: Finished difference Result 686 states and 906 transitions. [2022-04-28 06:06:46,550 INFO L276 IsEmpty]: Start isEmpty. Operand 686 states and 906 transitions. [2022-04-28 06:06:46,550 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:06:46,551 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:06:46,551 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-28 06:06:46,551 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-28 06:06:46,566 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:06:46,566 INFO L93 Difference]: Finished difference Result 686 states and 906 transitions. [2022-04-28 06:06:46,566 INFO L276 IsEmpty]: Start isEmpty. Operand 686 states and 906 transitions. [2022-04-28 06:06:46,567 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:06:46,567 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:06:46,567 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:06:46,567 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:06:46,567 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-28 06:06:46,587 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 686 states to 686 states and 906 transitions. [2022-04-28 06:06:46,587 INFO L78 Accepts]: Start accepts. Automaton has 686 states and 906 transitions. Word has length 123 [2022-04-28 06:06:46,587 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:06:46,587 INFO L495 AbstractCegarLoop]: Abstraction has 686 states and 906 transitions. [2022-04-28 06:06:46,587 INFO L496 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-28 06:06:46,587 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 686 states and 906 transitions. [2022-04-28 06:07:03,707 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-28 06:07:03,707 INFO L276 IsEmpty]: Start isEmpty. Operand 686 states and 906 transitions. [2022-04-28 06:07:03,708 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 128 [2022-04-28 06:07:03,708 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:07:03,709 INFO L195 NwaCegarLoop]: 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-28 06:07:03,726 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Forceful destruction successful, exit code 0 [2022-04-28 06:07:03,909 WARN L477 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-28 06:07:03,909 INFO L420 AbstractCegarLoop]: === Iteration 42 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:07:03,909 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:07:03,909 INFO L85 PathProgramCache]: Analyzing trace with hash -992818924, now seen corresponding path program 9 times [2022-04-28 06:07:03,909 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:07:03,910 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [293662064] [2022-04-28 06:07:03,910 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:07:03,910 INFO L85 PathProgramCache]: Analyzing trace with hash -992818924, now seen corresponding path program 10 times [2022-04-28 06:07:03,910 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:07:03,910 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [296534751] [2022-04-28 06:07:03,910 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:07:03,910 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:07:03,924 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:07:03,925 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1006006009] [2022-04-28 06:07:03,925 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 06:07:03,925 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:07:03,925 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:07:03,926 INFO L229 MonitoredProcess]: Starting monitored process 43 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:07:03,927 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Waiting until timeout for monitored process [2022-04-28 06:07:03,986 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 06:07:03,987 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:07:03,988 INFO L263 TraceCheckSpWp]: Trace formula consists of 316 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-28 06:07:04,006 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:07:04,008 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:07:04,550 INFO L272 TraceCheckUtils]: 0: Hoare triple {99043#true} call ULTIMATE.init(); {99043#true} is VALID [2022-04-28 06:07:04,551 INFO L290 TraceCheckUtils]: 1: Hoare triple {99043#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,551 INFO L290 TraceCheckUtils]: 2: Hoare triple {99051#(<= ~counter~0 0)} assume true; {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,551 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99051#(<= ~counter~0 0)} {99043#true} #102#return; {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,551 INFO L272 TraceCheckUtils]: 4: Hoare triple {99051#(<= ~counter~0 0)} call #t~ret9 := main(); {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,552 INFO L290 TraceCheckUtils]: 5: Hoare triple {99051#(<= ~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; {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,552 INFO L272 TraceCheckUtils]: 6: Hoare triple {99051#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,552 INFO L290 TraceCheckUtils]: 7: Hoare triple {99051#(<= ~counter~0 0)} ~cond := #in~cond; {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,552 INFO L290 TraceCheckUtils]: 8: Hoare triple {99051#(<= ~counter~0 0)} assume !(0 == ~cond); {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,553 INFO L290 TraceCheckUtils]: 9: Hoare triple {99051#(<= ~counter~0 0)} assume true; {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,553 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {99051#(<= ~counter~0 0)} {99051#(<= ~counter~0 0)} #90#return; {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,553 INFO L272 TraceCheckUtils]: 11: Hoare triple {99051#(<= ~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)); {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,554 INFO L290 TraceCheckUtils]: 12: Hoare triple {99051#(<= ~counter~0 0)} ~cond := #in~cond; {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,554 INFO L290 TraceCheckUtils]: 13: Hoare triple {99051#(<= ~counter~0 0)} assume !(0 == ~cond); {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,554 INFO L290 TraceCheckUtils]: 14: Hoare triple {99051#(<= ~counter~0 0)} assume true; {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,554 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99051#(<= ~counter~0 0)} {99051#(<= ~counter~0 0)} #92#return; {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,555 INFO L290 TraceCheckUtils]: 16: Hoare triple {99051#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {99051#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:04,557 INFO L290 TraceCheckUtils]: 17: Hoare triple {99051#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99100#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:04,557 INFO L290 TraceCheckUtils]: 18: Hoare triple {99100#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {99100#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:04,557 INFO L272 TraceCheckUtils]: 19: Hoare triple {99100#(<= ~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)); {99100#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:04,557 INFO L290 TraceCheckUtils]: 20: Hoare triple {99100#(<= ~counter~0 1)} ~cond := #in~cond; {99100#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:04,558 INFO L290 TraceCheckUtils]: 21: Hoare triple {99100#(<= ~counter~0 1)} assume !(0 == ~cond); {99100#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:04,558 INFO L290 TraceCheckUtils]: 22: Hoare triple {99100#(<= ~counter~0 1)} assume true; {99100#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:04,558 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {99100#(<= ~counter~0 1)} {99100#(<= ~counter~0 1)} #94#return; {99100#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:04,559 INFO L290 TraceCheckUtils]: 24: Hoare triple {99100#(<= ~counter~0 1)} assume !!(0 != ~r~0); {99100#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:04,559 INFO L290 TraceCheckUtils]: 25: Hoare triple {99100#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99125#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:04,560 INFO L290 TraceCheckUtils]: 26: Hoare triple {99125#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {99125#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:04,560 INFO L272 TraceCheckUtils]: 27: Hoare triple {99125#(<= ~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)); {99125#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:04,560 INFO L290 TraceCheckUtils]: 28: Hoare triple {99125#(<= ~counter~0 2)} ~cond := #in~cond; {99125#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:04,561 INFO L290 TraceCheckUtils]: 29: Hoare triple {99125#(<= ~counter~0 2)} assume !(0 == ~cond); {99125#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:04,561 INFO L290 TraceCheckUtils]: 30: Hoare triple {99125#(<= ~counter~0 2)} assume true; {99125#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:04,561 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {99125#(<= ~counter~0 2)} {99125#(<= ~counter~0 2)} #96#return; {99125#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:04,561 INFO L290 TraceCheckUtils]: 32: Hoare triple {99125#(<= ~counter~0 2)} assume !(~r~0 > 0); {99125#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:04,562 INFO L290 TraceCheckUtils]: 33: Hoare triple {99125#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99150#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:04,562 INFO L290 TraceCheckUtils]: 34: Hoare triple {99150#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {99150#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:04,563 INFO L272 TraceCheckUtils]: 35: Hoare triple {99150#(<= ~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)); {99150#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:04,563 INFO L290 TraceCheckUtils]: 36: Hoare triple {99150#(<= ~counter~0 3)} ~cond := #in~cond; {99150#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:04,563 INFO L290 TraceCheckUtils]: 37: Hoare triple {99150#(<= ~counter~0 3)} assume !(0 == ~cond); {99150#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:04,564 INFO L290 TraceCheckUtils]: 38: Hoare triple {99150#(<= ~counter~0 3)} assume true; {99150#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:04,564 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {99150#(<= ~counter~0 3)} {99150#(<= ~counter~0 3)} #98#return; {99150#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:04,564 INFO L290 TraceCheckUtils]: 40: Hoare triple {99150#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {99150#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:04,565 INFO L290 TraceCheckUtils]: 41: Hoare triple {99150#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99175#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:04,565 INFO L290 TraceCheckUtils]: 42: Hoare triple {99175#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {99175#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:04,566 INFO L272 TraceCheckUtils]: 43: Hoare triple {99175#(<= ~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)); {99175#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:04,566 INFO L290 TraceCheckUtils]: 44: Hoare triple {99175#(<= ~counter~0 4)} ~cond := #in~cond; {99175#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:04,566 INFO L290 TraceCheckUtils]: 45: Hoare triple {99175#(<= ~counter~0 4)} assume !(0 == ~cond); {99175#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:04,566 INFO L290 TraceCheckUtils]: 46: Hoare triple {99175#(<= ~counter~0 4)} assume true; {99175#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:04,567 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {99175#(<= ~counter~0 4)} {99175#(<= ~counter~0 4)} #98#return; {99175#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:04,567 INFO L290 TraceCheckUtils]: 48: Hoare triple {99175#(<= ~counter~0 4)} assume !(~r~0 < 0); {99175#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:04,568 INFO L290 TraceCheckUtils]: 49: Hoare triple {99175#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99200#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:04,568 INFO L290 TraceCheckUtils]: 50: Hoare triple {99200#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {99200#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:04,569 INFO L272 TraceCheckUtils]: 51: Hoare triple {99200#(<= ~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)); {99200#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:04,569 INFO L290 TraceCheckUtils]: 52: Hoare triple {99200#(<= ~counter~0 5)} ~cond := #in~cond; {99200#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:04,569 INFO L290 TraceCheckUtils]: 53: Hoare triple {99200#(<= ~counter~0 5)} assume !(0 == ~cond); {99200#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:04,569 INFO L290 TraceCheckUtils]: 54: Hoare triple {99200#(<= ~counter~0 5)} assume true; {99200#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:04,570 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {99200#(<= ~counter~0 5)} {99200#(<= ~counter~0 5)} #94#return; {99200#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:04,570 INFO L290 TraceCheckUtils]: 56: Hoare triple {99200#(<= ~counter~0 5)} assume !!(0 != ~r~0); {99200#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:04,571 INFO L290 TraceCheckUtils]: 57: Hoare triple {99200#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99225#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:04,571 INFO L290 TraceCheckUtils]: 58: Hoare triple {99225#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {99225#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:04,571 INFO L272 TraceCheckUtils]: 59: Hoare triple {99225#(<= ~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)); {99225#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:04,572 INFO L290 TraceCheckUtils]: 60: Hoare triple {99225#(<= ~counter~0 6)} ~cond := #in~cond; {99225#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:04,572 INFO L290 TraceCheckUtils]: 61: Hoare triple {99225#(<= ~counter~0 6)} assume !(0 == ~cond); {99225#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:04,572 INFO L290 TraceCheckUtils]: 62: Hoare triple {99225#(<= ~counter~0 6)} assume true; {99225#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:04,573 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {99225#(<= ~counter~0 6)} {99225#(<= ~counter~0 6)} #96#return; {99225#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:04,573 INFO L290 TraceCheckUtils]: 64: Hoare triple {99225#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99225#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:04,574 INFO L290 TraceCheckUtils]: 65: Hoare triple {99225#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99250#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:04,574 INFO L290 TraceCheckUtils]: 66: Hoare triple {99250#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {99250#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:04,574 INFO L272 TraceCheckUtils]: 67: Hoare triple {99250#(<= ~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)); {99250#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:04,575 INFO L290 TraceCheckUtils]: 68: Hoare triple {99250#(<= ~counter~0 7)} ~cond := #in~cond; {99250#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:04,575 INFO L290 TraceCheckUtils]: 69: Hoare triple {99250#(<= ~counter~0 7)} assume !(0 == ~cond); {99250#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:04,575 INFO L290 TraceCheckUtils]: 70: Hoare triple {99250#(<= ~counter~0 7)} assume true; {99250#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:04,575 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {99250#(<= ~counter~0 7)} {99250#(<= ~counter~0 7)} #96#return; {99250#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:04,576 INFO L290 TraceCheckUtils]: 72: Hoare triple {99250#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99250#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:04,576 INFO L290 TraceCheckUtils]: 73: Hoare triple {99250#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99275#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:04,577 INFO L290 TraceCheckUtils]: 74: Hoare triple {99275#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {99275#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:04,577 INFO L272 TraceCheckUtils]: 75: Hoare triple {99275#(<= ~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)); {99275#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:04,577 INFO L290 TraceCheckUtils]: 76: Hoare triple {99275#(<= ~counter~0 8)} ~cond := #in~cond; {99275#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:04,578 INFO L290 TraceCheckUtils]: 77: Hoare triple {99275#(<= ~counter~0 8)} assume !(0 == ~cond); {99275#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:04,578 INFO L290 TraceCheckUtils]: 78: Hoare triple {99275#(<= ~counter~0 8)} assume true; {99275#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:04,578 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {99275#(<= ~counter~0 8)} {99275#(<= ~counter~0 8)} #96#return; {99275#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:04,578 INFO L290 TraceCheckUtils]: 80: Hoare triple {99275#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99275#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:04,579 INFO L290 TraceCheckUtils]: 81: Hoare triple {99275#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99300#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:04,580 INFO L290 TraceCheckUtils]: 82: Hoare triple {99300#(<= ~counter~0 9)} assume !!(#t~post7 < 50);havoc #t~post7; {99300#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:04,580 INFO L272 TraceCheckUtils]: 83: Hoare triple {99300#(<= ~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)); {99300#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:04,580 INFO L290 TraceCheckUtils]: 84: Hoare triple {99300#(<= ~counter~0 9)} ~cond := #in~cond; {99300#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:04,580 INFO L290 TraceCheckUtils]: 85: Hoare triple {99300#(<= ~counter~0 9)} assume !(0 == ~cond); {99300#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:04,581 INFO L290 TraceCheckUtils]: 86: Hoare triple {99300#(<= ~counter~0 9)} assume true; {99300#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:04,581 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {99300#(<= ~counter~0 9)} {99300#(<= ~counter~0 9)} #96#return; {99300#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:04,581 INFO L290 TraceCheckUtils]: 88: Hoare triple {99300#(<= ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99300#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:04,582 INFO L290 TraceCheckUtils]: 89: Hoare triple {99300#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99325#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:04,582 INFO L290 TraceCheckUtils]: 90: Hoare triple {99325#(<= ~counter~0 10)} assume !!(#t~post7 < 50);havoc #t~post7; {99325#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:04,583 INFO L272 TraceCheckUtils]: 91: Hoare triple {99325#(<= ~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)); {99325#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:04,583 INFO L290 TraceCheckUtils]: 92: Hoare triple {99325#(<= ~counter~0 10)} ~cond := #in~cond; {99325#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:04,583 INFO L290 TraceCheckUtils]: 93: Hoare triple {99325#(<= ~counter~0 10)} assume !(0 == ~cond); {99325#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:04,583 INFO L290 TraceCheckUtils]: 94: Hoare triple {99325#(<= ~counter~0 10)} assume true; {99325#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:04,584 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {99325#(<= ~counter~0 10)} {99325#(<= ~counter~0 10)} #96#return; {99325#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:04,584 INFO L290 TraceCheckUtils]: 96: Hoare triple {99325#(<= ~counter~0 10)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99325#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:04,585 INFO L290 TraceCheckUtils]: 97: Hoare triple {99325#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99350#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:04,585 INFO L290 TraceCheckUtils]: 98: Hoare triple {99350#(<= ~counter~0 11)} assume !!(#t~post7 < 50);havoc #t~post7; {99350#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:04,586 INFO L272 TraceCheckUtils]: 99: Hoare triple {99350#(<= ~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)); {99350#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:04,586 INFO L290 TraceCheckUtils]: 100: Hoare triple {99350#(<= ~counter~0 11)} ~cond := #in~cond; {99350#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:04,586 INFO L290 TraceCheckUtils]: 101: Hoare triple {99350#(<= ~counter~0 11)} assume !(0 == ~cond); {99350#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:04,586 INFO L290 TraceCheckUtils]: 102: Hoare triple {99350#(<= ~counter~0 11)} assume true; {99350#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:04,587 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {99350#(<= ~counter~0 11)} {99350#(<= ~counter~0 11)} #96#return; {99350#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:04,587 INFO L290 TraceCheckUtils]: 104: Hoare triple {99350#(<= ~counter~0 11)} assume !(~r~0 > 0); {99350#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:04,588 INFO L290 TraceCheckUtils]: 105: Hoare triple {99350#(<= ~counter~0 11)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99375#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:04,588 INFO L290 TraceCheckUtils]: 106: Hoare triple {99375#(<= ~counter~0 12)} assume !!(#t~post8 < 50);havoc #t~post8; {99375#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:04,588 INFO L272 TraceCheckUtils]: 107: Hoare triple {99375#(<= ~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)); {99375#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:04,589 INFO L290 TraceCheckUtils]: 108: Hoare triple {99375#(<= ~counter~0 12)} ~cond := #in~cond; {99375#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:04,589 INFO L290 TraceCheckUtils]: 109: Hoare triple {99375#(<= ~counter~0 12)} assume !(0 == ~cond); {99375#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:04,589 INFO L290 TraceCheckUtils]: 110: Hoare triple {99375#(<= ~counter~0 12)} assume true; {99375#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:04,590 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {99375#(<= ~counter~0 12)} {99375#(<= ~counter~0 12)} #98#return; {99375#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:04,590 INFO L290 TraceCheckUtils]: 112: Hoare triple {99375#(<= ~counter~0 12)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {99375#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:04,591 INFO L290 TraceCheckUtils]: 113: Hoare triple {99375#(<= ~counter~0 12)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99400#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:04,591 INFO L290 TraceCheckUtils]: 114: Hoare triple {99400#(<= ~counter~0 13)} assume !!(#t~post8 < 50);havoc #t~post8; {99400#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:04,591 INFO L272 TraceCheckUtils]: 115: Hoare triple {99400#(<= ~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)); {99400#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:04,592 INFO L290 TraceCheckUtils]: 116: Hoare triple {99400#(<= ~counter~0 13)} ~cond := #in~cond; {99400#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:04,592 INFO L290 TraceCheckUtils]: 117: Hoare triple {99400#(<= ~counter~0 13)} assume !(0 == ~cond); {99400#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:04,592 INFO L290 TraceCheckUtils]: 118: Hoare triple {99400#(<= ~counter~0 13)} assume true; {99400#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:04,593 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {99400#(<= ~counter~0 13)} {99400#(<= ~counter~0 13)} #98#return; {99400#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:04,593 INFO L290 TraceCheckUtils]: 120: Hoare triple {99400#(<= ~counter~0 13)} assume !(~r~0 < 0); {99400#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:04,593 INFO L290 TraceCheckUtils]: 121: Hoare triple {99400#(<= ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99425#(<= |main_#t~post6| 13)} is VALID [2022-04-28 06:07:04,593 INFO L290 TraceCheckUtils]: 122: Hoare triple {99425#(<= |main_#t~post6| 13)} assume !(#t~post6 < 50);havoc #t~post6; {99044#false} is VALID [2022-04-28 06:07:04,593 INFO L272 TraceCheckUtils]: 123: Hoare triple {99044#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)); {99044#false} is VALID [2022-04-28 06:07:04,593 INFO L290 TraceCheckUtils]: 124: Hoare triple {99044#false} ~cond := #in~cond; {99044#false} is VALID [2022-04-28 06:07:04,594 INFO L290 TraceCheckUtils]: 125: Hoare triple {99044#false} assume 0 == ~cond; {99044#false} is VALID [2022-04-28 06:07:04,594 INFO L290 TraceCheckUtils]: 126: Hoare triple {99044#false} assume !false; {99044#false} is VALID [2022-04-28 06:07:04,594 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-28 06:07:04,594 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:07:05,321 INFO L290 TraceCheckUtils]: 126: Hoare triple {99044#false} assume !false; {99044#false} is VALID [2022-04-28 06:07:05,322 INFO L290 TraceCheckUtils]: 125: Hoare triple {99044#false} assume 0 == ~cond; {99044#false} is VALID [2022-04-28 06:07:05,322 INFO L290 TraceCheckUtils]: 124: Hoare triple {99044#false} ~cond := #in~cond; {99044#false} is VALID [2022-04-28 06:07:05,322 INFO L272 TraceCheckUtils]: 123: Hoare triple {99044#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)); {99044#false} is VALID [2022-04-28 06:07:05,322 INFO L290 TraceCheckUtils]: 122: Hoare triple {99453#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {99044#false} is VALID [2022-04-28 06:07:05,322 INFO L290 TraceCheckUtils]: 121: Hoare triple {99457#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99453#(< |main_#t~post6| 50)} is VALID [2022-04-28 06:07:05,323 INFO L290 TraceCheckUtils]: 120: Hoare triple {99457#(< ~counter~0 50)} assume !(~r~0 < 0); {99457#(< ~counter~0 50)} is VALID [2022-04-28 06:07:05,323 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {99043#true} {99457#(< ~counter~0 50)} #98#return; {99457#(< ~counter~0 50)} is VALID [2022-04-28 06:07:05,323 INFO L290 TraceCheckUtils]: 118: Hoare triple {99043#true} assume true; {99043#true} is VALID [2022-04-28 06:07:05,323 INFO L290 TraceCheckUtils]: 117: Hoare triple {99043#true} assume !(0 == ~cond); {99043#true} is VALID [2022-04-28 06:07:05,323 INFO L290 TraceCheckUtils]: 116: Hoare triple {99043#true} ~cond := #in~cond; {99043#true} is VALID [2022-04-28 06:07:05,323 INFO L272 TraceCheckUtils]: 115: Hoare triple {99457#(< ~counter~0 50)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {99043#true} is VALID [2022-04-28 06:07:05,324 INFO L290 TraceCheckUtils]: 114: Hoare triple {99457#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {99457#(< ~counter~0 50)} is VALID [2022-04-28 06:07:05,326 INFO L290 TraceCheckUtils]: 113: Hoare triple {99482#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99457#(< ~counter~0 50)} is VALID [2022-04-28 06:07:05,326 INFO L290 TraceCheckUtils]: 112: Hoare triple {99482#(< ~counter~0 49)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {99482#(< ~counter~0 49)} is VALID [2022-04-28 06:07:05,326 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {99043#true} {99482#(< ~counter~0 49)} #98#return; {99482#(< ~counter~0 49)} is VALID [2022-04-28 06:07:05,326 INFO L290 TraceCheckUtils]: 110: Hoare triple {99043#true} assume true; {99043#true} is VALID [2022-04-28 06:07:05,326 INFO L290 TraceCheckUtils]: 109: Hoare triple {99043#true} assume !(0 == ~cond); {99043#true} is VALID [2022-04-28 06:07:05,327 INFO L290 TraceCheckUtils]: 108: Hoare triple {99043#true} ~cond := #in~cond; {99043#true} is VALID [2022-04-28 06:07:05,327 INFO L272 TraceCheckUtils]: 107: Hoare triple {99482#(< ~counter~0 49)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {99043#true} is VALID [2022-04-28 06:07:05,327 INFO L290 TraceCheckUtils]: 106: Hoare triple {99482#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {99482#(< ~counter~0 49)} is VALID [2022-04-28 06:07:05,328 INFO L290 TraceCheckUtils]: 105: Hoare triple {99507#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99482#(< ~counter~0 49)} is VALID [2022-04-28 06:07:05,328 INFO L290 TraceCheckUtils]: 104: Hoare triple {99507#(< ~counter~0 48)} assume !(~r~0 > 0); {99507#(< ~counter~0 48)} is VALID [2022-04-28 06:07:05,328 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {99043#true} {99507#(< ~counter~0 48)} #96#return; {99507#(< ~counter~0 48)} is VALID [2022-04-28 06:07:05,329 INFO L290 TraceCheckUtils]: 102: Hoare triple {99043#true} assume true; {99043#true} is VALID [2022-04-28 06:07:05,329 INFO L290 TraceCheckUtils]: 101: Hoare triple {99043#true} assume !(0 == ~cond); {99043#true} is VALID [2022-04-28 06:07:05,329 INFO L290 TraceCheckUtils]: 100: Hoare triple {99043#true} ~cond := #in~cond; {99043#true} is VALID [2022-04-28 06:07:05,329 INFO L272 TraceCheckUtils]: 99: Hoare triple {99507#(< ~counter~0 48)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {99043#true} is VALID [2022-04-28 06:07:05,329 INFO L290 TraceCheckUtils]: 98: Hoare triple {99507#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {99507#(< ~counter~0 48)} is VALID [2022-04-28 06:07:05,330 INFO L290 TraceCheckUtils]: 97: Hoare triple {99532#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99507#(< ~counter~0 48)} is VALID [2022-04-28 06:07:05,330 INFO L290 TraceCheckUtils]: 96: Hoare triple {99532#(< ~counter~0 47)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99532#(< ~counter~0 47)} is VALID [2022-04-28 06:07:05,331 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {99043#true} {99532#(< ~counter~0 47)} #96#return; {99532#(< ~counter~0 47)} is VALID [2022-04-28 06:07:05,331 INFO L290 TraceCheckUtils]: 94: Hoare triple {99043#true} assume true; {99043#true} is VALID [2022-04-28 06:07:05,331 INFO L290 TraceCheckUtils]: 93: Hoare triple {99043#true} assume !(0 == ~cond); {99043#true} is VALID [2022-04-28 06:07:05,331 INFO L290 TraceCheckUtils]: 92: Hoare triple {99043#true} ~cond := #in~cond; {99043#true} is VALID [2022-04-28 06:07:05,331 INFO L272 TraceCheckUtils]: 91: Hoare triple {99532#(< ~counter~0 47)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {99043#true} is VALID [2022-04-28 06:07:05,331 INFO L290 TraceCheckUtils]: 90: Hoare triple {99532#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {99532#(< ~counter~0 47)} is VALID [2022-04-28 06:07:05,332 INFO L290 TraceCheckUtils]: 89: Hoare triple {99557#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99532#(< ~counter~0 47)} is VALID [2022-04-28 06:07:05,332 INFO L290 TraceCheckUtils]: 88: Hoare triple {99557#(< ~counter~0 46)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99557#(< ~counter~0 46)} is VALID [2022-04-28 06:07:05,333 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {99043#true} {99557#(< ~counter~0 46)} #96#return; {99557#(< ~counter~0 46)} is VALID [2022-04-28 06:07:05,333 INFO L290 TraceCheckUtils]: 86: Hoare triple {99043#true} assume true; {99043#true} is VALID [2022-04-28 06:07:05,333 INFO L290 TraceCheckUtils]: 85: Hoare triple {99043#true} assume !(0 == ~cond); {99043#true} is VALID [2022-04-28 06:07:05,333 INFO L290 TraceCheckUtils]: 84: Hoare triple {99043#true} ~cond := #in~cond; {99043#true} is VALID [2022-04-28 06:07:05,333 INFO L272 TraceCheckUtils]: 83: Hoare triple {99557#(< ~counter~0 46)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {99043#true} is VALID [2022-04-28 06:07:05,333 INFO L290 TraceCheckUtils]: 82: Hoare triple {99557#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {99557#(< ~counter~0 46)} is VALID [2022-04-28 06:07:05,334 INFO L290 TraceCheckUtils]: 81: Hoare triple {99582#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99557#(< ~counter~0 46)} is VALID [2022-04-28 06:07:05,334 INFO L290 TraceCheckUtils]: 80: Hoare triple {99582#(< ~counter~0 45)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99582#(< ~counter~0 45)} is VALID [2022-04-28 06:07:05,335 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {99043#true} {99582#(< ~counter~0 45)} #96#return; {99582#(< ~counter~0 45)} is VALID [2022-04-28 06:07:05,335 INFO L290 TraceCheckUtils]: 78: Hoare triple {99043#true} assume true; {99043#true} is VALID [2022-04-28 06:07:05,335 INFO L290 TraceCheckUtils]: 77: Hoare triple {99043#true} assume !(0 == ~cond); {99043#true} is VALID [2022-04-28 06:07:05,335 INFO L290 TraceCheckUtils]: 76: Hoare triple {99043#true} ~cond := #in~cond; {99043#true} is VALID [2022-04-28 06:07:05,335 INFO L272 TraceCheckUtils]: 75: Hoare triple {99582#(< ~counter~0 45)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {99043#true} is VALID [2022-04-28 06:07:05,335 INFO L290 TraceCheckUtils]: 74: Hoare triple {99582#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {99582#(< ~counter~0 45)} is VALID [2022-04-28 06:07:05,336 INFO L290 TraceCheckUtils]: 73: Hoare triple {99607#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99582#(< ~counter~0 45)} is VALID [2022-04-28 06:07:05,337 INFO L290 TraceCheckUtils]: 72: Hoare triple {99607#(< ~counter~0 44)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99607#(< ~counter~0 44)} is VALID [2022-04-28 06:07:05,337 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {99043#true} {99607#(< ~counter~0 44)} #96#return; {99607#(< ~counter~0 44)} is VALID [2022-04-28 06:07:05,337 INFO L290 TraceCheckUtils]: 70: Hoare triple {99043#true} assume true; {99043#true} is VALID [2022-04-28 06:07:05,337 INFO L290 TraceCheckUtils]: 69: Hoare triple {99043#true} assume !(0 == ~cond); {99043#true} is VALID [2022-04-28 06:07:05,337 INFO L290 TraceCheckUtils]: 68: Hoare triple {99043#true} ~cond := #in~cond; {99043#true} is VALID [2022-04-28 06:07:05,337 INFO L272 TraceCheckUtils]: 67: Hoare triple {99607#(< ~counter~0 44)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {99043#true} is VALID [2022-04-28 06:07:05,338 INFO L290 TraceCheckUtils]: 66: Hoare triple {99607#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {99607#(< ~counter~0 44)} is VALID [2022-04-28 06:07:05,338 INFO L290 TraceCheckUtils]: 65: Hoare triple {99632#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99607#(< ~counter~0 44)} is VALID [2022-04-28 06:07:05,339 INFO L290 TraceCheckUtils]: 64: Hoare triple {99632#(< ~counter~0 43)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {99632#(< ~counter~0 43)} is VALID [2022-04-28 06:07:05,339 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {99043#true} {99632#(< ~counter~0 43)} #96#return; {99632#(< ~counter~0 43)} is VALID [2022-04-28 06:07:05,339 INFO L290 TraceCheckUtils]: 62: Hoare triple {99043#true} assume true; {99043#true} is VALID [2022-04-28 06:07:05,339 INFO L290 TraceCheckUtils]: 61: Hoare triple {99043#true} assume !(0 == ~cond); {99043#true} is VALID [2022-04-28 06:07:05,339 INFO L290 TraceCheckUtils]: 60: Hoare triple {99043#true} ~cond := #in~cond; {99043#true} is VALID [2022-04-28 06:07:05,339 INFO L272 TraceCheckUtils]: 59: Hoare triple {99632#(< ~counter~0 43)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {99043#true} is VALID [2022-04-28 06:07:05,340 INFO L290 TraceCheckUtils]: 58: Hoare triple {99632#(< ~counter~0 43)} assume !!(#t~post7 < 50);havoc #t~post7; {99632#(< ~counter~0 43)} is VALID [2022-04-28 06:07:05,341 INFO L290 TraceCheckUtils]: 57: Hoare triple {99657#(< ~counter~0 42)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99632#(< ~counter~0 43)} is VALID [2022-04-28 06:07:05,341 INFO L290 TraceCheckUtils]: 56: Hoare triple {99657#(< ~counter~0 42)} assume !!(0 != ~r~0); {99657#(< ~counter~0 42)} is VALID [2022-04-28 06:07:05,341 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {99043#true} {99657#(< ~counter~0 42)} #94#return; {99657#(< ~counter~0 42)} is VALID [2022-04-28 06:07:05,341 INFO L290 TraceCheckUtils]: 54: Hoare triple {99043#true} assume true; {99043#true} is VALID [2022-04-28 06:07:05,341 INFO L290 TraceCheckUtils]: 53: Hoare triple {99043#true} assume !(0 == ~cond); {99043#true} is VALID [2022-04-28 06:07:05,342 INFO L290 TraceCheckUtils]: 52: Hoare triple {99043#true} ~cond := #in~cond; {99043#true} is VALID [2022-04-28 06:07:05,342 INFO L272 TraceCheckUtils]: 51: Hoare triple {99657#(< ~counter~0 42)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {99043#true} is VALID [2022-04-28 06:07:05,342 INFO L290 TraceCheckUtils]: 50: Hoare triple {99657#(< ~counter~0 42)} assume !!(#t~post6 < 50);havoc #t~post6; {99657#(< ~counter~0 42)} is VALID [2022-04-28 06:07:05,343 INFO L290 TraceCheckUtils]: 49: Hoare triple {99682#(< ~counter~0 41)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99657#(< ~counter~0 42)} is VALID [2022-04-28 06:07:05,343 INFO L290 TraceCheckUtils]: 48: Hoare triple {99682#(< ~counter~0 41)} assume !(~r~0 < 0); {99682#(< ~counter~0 41)} is VALID [2022-04-28 06:07:05,344 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {99043#true} {99682#(< ~counter~0 41)} #98#return; {99682#(< ~counter~0 41)} is VALID [2022-04-28 06:07:05,344 INFO L290 TraceCheckUtils]: 46: Hoare triple {99043#true} assume true; {99043#true} is VALID [2022-04-28 06:07:05,344 INFO L290 TraceCheckUtils]: 45: Hoare triple {99043#true} assume !(0 == ~cond); {99043#true} is VALID [2022-04-28 06:07:05,344 INFO L290 TraceCheckUtils]: 44: Hoare triple {99043#true} ~cond := #in~cond; {99043#true} is VALID [2022-04-28 06:07:05,344 INFO L272 TraceCheckUtils]: 43: Hoare triple {99682#(< ~counter~0 41)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {99043#true} is VALID [2022-04-28 06:07:05,344 INFO L290 TraceCheckUtils]: 42: Hoare triple {99682#(< ~counter~0 41)} assume !!(#t~post8 < 50);havoc #t~post8; {99682#(< ~counter~0 41)} is VALID [2022-04-28 06:07:05,345 INFO L290 TraceCheckUtils]: 41: Hoare triple {99707#(< ~counter~0 40)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99682#(< ~counter~0 41)} is VALID [2022-04-28 06:07:05,345 INFO L290 TraceCheckUtils]: 40: Hoare triple {99707#(< ~counter~0 40)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {99707#(< ~counter~0 40)} is VALID [2022-04-28 06:07:05,346 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {99043#true} {99707#(< ~counter~0 40)} #98#return; {99707#(< ~counter~0 40)} is VALID [2022-04-28 06:07:05,346 INFO L290 TraceCheckUtils]: 38: Hoare triple {99043#true} assume true; {99043#true} is VALID [2022-04-28 06:07:05,346 INFO L290 TraceCheckUtils]: 37: Hoare triple {99043#true} assume !(0 == ~cond); {99043#true} is VALID [2022-04-28 06:07:05,346 INFO L290 TraceCheckUtils]: 36: Hoare triple {99043#true} ~cond := #in~cond; {99043#true} is VALID [2022-04-28 06:07:05,346 INFO L272 TraceCheckUtils]: 35: Hoare triple {99707#(< ~counter~0 40)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {99043#true} is VALID [2022-04-28 06:07:05,346 INFO L290 TraceCheckUtils]: 34: Hoare triple {99707#(< ~counter~0 40)} assume !!(#t~post8 < 50);havoc #t~post8; {99707#(< ~counter~0 40)} is VALID [2022-04-28 06:07:05,347 INFO L290 TraceCheckUtils]: 33: Hoare triple {99732#(< ~counter~0 39)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99707#(< ~counter~0 40)} is VALID [2022-04-28 06:07:05,347 INFO L290 TraceCheckUtils]: 32: Hoare triple {99732#(< ~counter~0 39)} assume !(~r~0 > 0); {99732#(< ~counter~0 39)} is VALID [2022-04-28 06:07:05,348 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {99043#true} {99732#(< ~counter~0 39)} #96#return; {99732#(< ~counter~0 39)} is VALID [2022-04-28 06:07:05,348 INFO L290 TraceCheckUtils]: 30: Hoare triple {99043#true} assume true; {99043#true} is VALID [2022-04-28 06:07:05,348 INFO L290 TraceCheckUtils]: 29: Hoare triple {99043#true} assume !(0 == ~cond); {99043#true} is VALID [2022-04-28 06:07:05,348 INFO L290 TraceCheckUtils]: 28: Hoare triple {99043#true} ~cond := #in~cond; {99043#true} is VALID [2022-04-28 06:07:05,348 INFO L272 TraceCheckUtils]: 27: Hoare triple {99732#(< ~counter~0 39)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {99043#true} is VALID [2022-04-28 06:07:05,348 INFO L290 TraceCheckUtils]: 26: Hoare triple {99732#(< ~counter~0 39)} assume !!(#t~post7 < 50);havoc #t~post7; {99732#(< ~counter~0 39)} is VALID [2022-04-28 06:07:05,349 INFO L290 TraceCheckUtils]: 25: Hoare triple {99757#(< ~counter~0 38)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99732#(< ~counter~0 39)} is VALID [2022-04-28 06:07:05,349 INFO L290 TraceCheckUtils]: 24: Hoare triple {99757#(< ~counter~0 38)} assume !!(0 != ~r~0); {99757#(< ~counter~0 38)} is VALID [2022-04-28 06:07:05,350 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {99043#true} {99757#(< ~counter~0 38)} #94#return; {99757#(< ~counter~0 38)} is VALID [2022-04-28 06:07:05,350 INFO L290 TraceCheckUtils]: 22: Hoare triple {99043#true} assume true; {99043#true} is VALID [2022-04-28 06:07:05,350 INFO L290 TraceCheckUtils]: 21: Hoare triple {99043#true} assume !(0 == ~cond); {99043#true} is VALID [2022-04-28 06:07:05,350 INFO L290 TraceCheckUtils]: 20: Hoare triple {99043#true} ~cond := #in~cond; {99043#true} is VALID [2022-04-28 06:07:05,350 INFO L272 TraceCheckUtils]: 19: Hoare triple {99757#(< ~counter~0 38)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {99043#true} is VALID [2022-04-28 06:07:05,350 INFO L290 TraceCheckUtils]: 18: Hoare triple {99757#(< ~counter~0 38)} assume !!(#t~post6 < 50);havoc #t~post6; {99757#(< ~counter~0 38)} is VALID [2022-04-28 06:07:05,351 INFO L290 TraceCheckUtils]: 17: Hoare triple {99782#(< ~counter~0 37)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99757#(< ~counter~0 38)} is VALID [2022-04-28 06:07:05,352 INFO L290 TraceCheckUtils]: 16: Hoare triple {99782#(< ~counter~0 37)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {99782#(< ~counter~0 37)} is VALID [2022-04-28 06:07:05,352 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99043#true} {99782#(< ~counter~0 37)} #92#return; {99782#(< ~counter~0 37)} is VALID [2022-04-28 06:07:05,352 INFO L290 TraceCheckUtils]: 14: Hoare triple {99043#true} assume true; {99043#true} is VALID [2022-04-28 06:07:05,352 INFO L290 TraceCheckUtils]: 13: Hoare triple {99043#true} assume !(0 == ~cond); {99043#true} is VALID [2022-04-28 06:07:05,352 INFO L290 TraceCheckUtils]: 12: Hoare triple {99043#true} ~cond := #in~cond; {99043#true} is VALID [2022-04-28 06:07:05,352 INFO L272 TraceCheckUtils]: 11: Hoare triple {99782#(< ~counter~0 37)} 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)); {99043#true} is VALID [2022-04-28 06:07:05,353 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {99043#true} {99782#(< ~counter~0 37)} #90#return; {99782#(< ~counter~0 37)} is VALID [2022-04-28 06:07:05,353 INFO L290 TraceCheckUtils]: 9: Hoare triple {99043#true} assume true; {99043#true} is VALID [2022-04-28 06:07:05,353 INFO L290 TraceCheckUtils]: 8: Hoare triple {99043#true} assume !(0 == ~cond); {99043#true} is VALID [2022-04-28 06:07:05,353 INFO L290 TraceCheckUtils]: 7: Hoare triple {99043#true} ~cond := #in~cond; {99043#true} is VALID [2022-04-28 06:07:05,353 INFO L272 TraceCheckUtils]: 6: Hoare triple {99782#(< ~counter~0 37)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {99043#true} is VALID [2022-04-28 06:07:05,353 INFO L290 TraceCheckUtils]: 5: Hoare triple {99782#(< ~counter~0 37)} 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; {99782#(< ~counter~0 37)} is VALID [2022-04-28 06:07:05,353 INFO L272 TraceCheckUtils]: 4: Hoare triple {99782#(< ~counter~0 37)} call #t~ret9 := main(); {99782#(< ~counter~0 37)} is VALID [2022-04-28 06:07:05,354 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99782#(< ~counter~0 37)} {99043#true} #102#return; {99782#(< ~counter~0 37)} is VALID [2022-04-28 06:07:05,354 INFO L290 TraceCheckUtils]: 2: Hoare triple {99782#(< ~counter~0 37)} assume true; {99782#(< ~counter~0 37)} is VALID [2022-04-28 06:07:05,354 INFO L290 TraceCheckUtils]: 1: Hoare triple {99043#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {99782#(< ~counter~0 37)} is VALID [2022-04-28 06:07:05,355 INFO L272 TraceCheckUtils]: 0: Hoare triple {99043#true} call ULTIMATE.init(); {99043#true} is VALID [2022-04-28 06:07:05,355 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-28 06:07:05,355 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:07:05,355 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [296534751] [2022-04-28 06:07:05,355 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:07:05,355 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1006006009] [2022-04-28 06:07:05,355 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1006006009] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:07:05,355 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:07:05,355 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 32 [2022-04-28 06:07:05,355 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:07:05,356 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [293662064] [2022-04-28 06:07:05,356 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [293662064] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:07:05,356 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:07:05,356 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-28 06:07:05,356 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1096445440] [2022-04-28 06:07:05,356 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:07:05,356 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-28 06:07:05,356 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:07:05,356 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-28 06:07:05,464 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:07:05,464 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-28 06:07:05,464 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:07:05,465 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-28 06:07:05,465 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=440, Invalid=552, Unknown=0, NotChecked=0, Total=992 [2022-04-28 06:07:05,465 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-28 06:07:09,001 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:07:09,001 INFO L93 Difference]: Finished difference Result 745 states and 986 transitions. [2022-04-28 06:07:09,001 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-04-28 06:07:09,001 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-28 06:07:09,002 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:07:09,002 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-28 06:07:09,003 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 274 transitions. [2022-04-28 06:07:09,004 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-28 06:07:09,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 274 transitions. [2022-04-28 06:07:09,005 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 274 transitions. [2022-04-28 06:07:09,196 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-28 06:07:09,218 INFO L225 Difference]: With dead ends: 745 [2022-04-28 06:07:09,218 INFO L226 Difference]: Without dead ends: 734 [2022-04-28 06:07:09,219 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 263 GetRequests, 223 SyntacticMatches, 0 SemanticMatches, 40 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 85 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=723, Invalid=999, Unknown=0, NotChecked=0, Total=1722 [2022-04-28 06:07:09,235 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 243 mSDsluCounter, 226 mSDsCounter, 0 mSdLazyCounter, 175 mSolverCounterSat, 235 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 243 SdHoareTripleChecker+Valid, 295 SdHoareTripleChecker+Invalid, 410 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 235 IncrementalHoareTripleChecker+Valid, 175 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 06:07:09,240 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [243 Valid, 295 Invalid, 410 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [235 Valid, 175 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 06:07:09,240 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 734 states. [2022-04-28 06:07:10,825 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 734 to 712. [2022-04-28 06:07:10,825 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:07:10,826 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-28 06:07:10,826 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-28 06:07:10,827 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-28 06:07:10,843 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:07:10,843 INFO L93 Difference]: Finished difference Result 734 states and 970 transitions. [2022-04-28 06:07:10,843 INFO L276 IsEmpty]: Start isEmpty. Operand 734 states and 970 transitions. [2022-04-28 06:07:10,844 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:07:10,844 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:07:10,844 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-28 06:07:10,845 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-28 06:07:10,864 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:07:10,864 INFO L93 Difference]: Finished difference Result 734 states and 970 transitions. [2022-04-28 06:07:10,864 INFO L276 IsEmpty]: Start isEmpty. Operand 734 states and 970 transitions. [2022-04-28 06:07:10,865 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:07:10,865 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:07:10,865 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:07:10,865 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:07:10,865 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-28 06:07:10,886 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 712 states to 712 states and 944 transitions. [2022-04-28 06:07:10,887 INFO L78 Accepts]: Start accepts. Automaton has 712 states and 944 transitions. Word has length 127 [2022-04-28 06:07:10,887 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:07:10,887 INFO L495 AbstractCegarLoop]: Abstraction has 712 states and 944 transitions. [2022-04-28 06:07:10,887 INFO L496 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-28 06:07:10,887 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 712 states and 944 transitions. [2022-04-28 06:07:28,538 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 944 edges. 942 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 06:07:28,538 INFO L276 IsEmpty]: Start isEmpty. Operand 712 states and 944 transitions. [2022-04-28 06:07:28,539 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 130 [2022-04-28 06:07:28,539 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:07:28,539 INFO L195 NwaCegarLoop]: 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-28 06:07:28,561 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Forceful destruction successful, exit code 0 [2022-04-28 06:07:28,739 WARN L477 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-28 06:07:28,740 INFO L420 AbstractCegarLoop]: === Iteration 43 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:07:28,740 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:07:28,740 INFO L85 PathProgramCache]: Analyzing trace with hash -1410231607, now seen corresponding path program 19 times [2022-04-28 06:07:28,740 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:07:28,740 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1979819184] [2022-04-28 06:07:28,740 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:07:28,740 INFO L85 PathProgramCache]: Analyzing trace with hash -1410231607, now seen corresponding path program 20 times [2022-04-28 06:07:28,740 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:07:28,740 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1822509577] [2022-04-28 06:07:28,741 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:07:28,741 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:07:28,766 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:07:28,766 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [128508420] [2022-04-28 06:07:28,766 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:07:28,766 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:07:28,766 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:07:28,771 INFO L229 MonitoredProcess]: Starting monitored process 44 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:07:28,772 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (44)] Waiting until timeout for monitored process [2022-04-28 06:07:28,919 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:07:28,919 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:07:28,920 INFO L263 TraceCheckSpWp]: Trace formula consists of 313 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-28 06:07:28,944 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:07:28,945 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:07:29,550 INFO L272 TraceCheckUtils]: 0: Hoare triple {104238#true} call ULTIMATE.init(); {104238#true} is VALID [2022-04-28 06:07:29,551 INFO L290 TraceCheckUtils]: 1: Hoare triple {104238#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,551 INFO L290 TraceCheckUtils]: 2: Hoare triple {104246#(<= ~counter~0 0)} assume true; {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,551 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {104246#(<= ~counter~0 0)} {104238#true} #102#return; {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,551 INFO L272 TraceCheckUtils]: 4: Hoare triple {104246#(<= ~counter~0 0)} call #t~ret9 := main(); {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,552 INFO L290 TraceCheckUtils]: 5: Hoare triple {104246#(<= ~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; {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,552 INFO L272 TraceCheckUtils]: 6: Hoare triple {104246#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,552 INFO L290 TraceCheckUtils]: 7: Hoare triple {104246#(<= ~counter~0 0)} ~cond := #in~cond; {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,553 INFO L290 TraceCheckUtils]: 8: Hoare triple {104246#(<= ~counter~0 0)} assume !(0 == ~cond); {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,553 INFO L290 TraceCheckUtils]: 9: Hoare triple {104246#(<= ~counter~0 0)} assume true; {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,553 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {104246#(<= ~counter~0 0)} {104246#(<= ~counter~0 0)} #90#return; {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,554 INFO L272 TraceCheckUtils]: 11: Hoare triple {104246#(<= ~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)); {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,554 INFO L290 TraceCheckUtils]: 12: Hoare triple {104246#(<= ~counter~0 0)} ~cond := #in~cond; {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,554 INFO L290 TraceCheckUtils]: 13: Hoare triple {104246#(<= ~counter~0 0)} assume !(0 == ~cond); {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,554 INFO L290 TraceCheckUtils]: 14: Hoare triple {104246#(<= ~counter~0 0)} assume true; {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,555 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {104246#(<= ~counter~0 0)} {104246#(<= ~counter~0 0)} #92#return; {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,555 INFO L290 TraceCheckUtils]: 16: Hoare triple {104246#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {104246#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:29,557 INFO L290 TraceCheckUtils]: 17: Hoare triple {104246#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104295#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:29,557 INFO L290 TraceCheckUtils]: 18: Hoare triple {104295#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {104295#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:29,558 INFO L272 TraceCheckUtils]: 19: Hoare triple {104295#(<= ~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)); {104295#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:29,558 INFO L290 TraceCheckUtils]: 20: Hoare triple {104295#(<= ~counter~0 1)} ~cond := #in~cond; {104295#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:29,558 INFO L290 TraceCheckUtils]: 21: Hoare triple {104295#(<= ~counter~0 1)} assume !(0 == ~cond); {104295#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:29,559 INFO L290 TraceCheckUtils]: 22: Hoare triple {104295#(<= ~counter~0 1)} assume true; {104295#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:29,559 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {104295#(<= ~counter~0 1)} {104295#(<= ~counter~0 1)} #94#return; {104295#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:29,559 INFO L290 TraceCheckUtils]: 24: Hoare triple {104295#(<= ~counter~0 1)} assume !!(0 != ~r~0); {104295#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:29,560 INFO L290 TraceCheckUtils]: 25: Hoare triple {104295#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104320#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:29,561 INFO L290 TraceCheckUtils]: 26: Hoare triple {104320#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {104320#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:29,561 INFO L272 TraceCheckUtils]: 27: Hoare triple {104320#(<= ~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)); {104320#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:29,561 INFO L290 TraceCheckUtils]: 28: Hoare triple {104320#(<= ~counter~0 2)} ~cond := #in~cond; {104320#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:29,562 INFO L290 TraceCheckUtils]: 29: Hoare triple {104320#(<= ~counter~0 2)} assume !(0 == ~cond); {104320#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:29,562 INFO L290 TraceCheckUtils]: 30: Hoare triple {104320#(<= ~counter~0 2)} assume true; {104320#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:29,562 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {104320#(<= ~counter~0 2)} {104320#(<= ~counter~0 2)} #96#return; {104320#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:29,563 INFO L290 TraceCheckUtils]: 32: Hoare triple {104320#(<= ~counter~0 2)} assume !(~r~0 > 0); {104320#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:29,564 INFO L290 TraceCheckUtils]: 33: Hoare triple {104320#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104345#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:29,564 INFO L290 TraceCheckUtils]: 34: Hoare triple {104345#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {104345#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:29,564 INFO L272 TraceCheckUtils]: 35: Hoare triple {104345#(<= ~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)); {104345#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:29,565 INFO L290 TraceCheckUtils]: 36: Hoare triple {104345#(<= ~counter~0 3)} ~cond := #in~cond; {104345#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:29,565 INFO L290 TraceCheckUtils]: 37: Hoare triple {104345#(<= ~counter~0 3)} assume !(0 == ~cond); {104345#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:29,565 INFO L290 TraceCheckUtils]: 38: Hoare triple {104345#(<= ~counter~0 3)} assume true; {104345#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:29,566 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {104345#(<= ~counter~0 3)} {104345#(<= ~counter~0 3)} #98#return; {104345#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:29,566 INFO L290 TraceCheckUtils]: 40: Hoare triple {104345#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {104345#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:29,567 INFO L290 TraceCheckUtils]: 41: Hoare triple {104345#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104370#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:29,567 INFO L290 TraceCheckUtils]: 42: Hoare triple {104370#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {104370#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:29,568 INFO L272 TraceCheckUtils]: 43: Hoare triple {104370#(<= ~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)); {104370#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:29,568 INFO L290 TraceCheckUtils]: 44: Hoare triple {104370#(<= ~counter~0 4)} ~cond := #in~cond; {104370#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:29,568 INFO L290 TraceCheckUtils]: 45: Hoare triple {104370#(<= ~counter~0 4)} assume !(0 == ~cond); {104370#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:29,568 INFO L290 TraceCheckUtils]: 46: Hoare triple {104370#(<= ~counter~0 4)} assume true; {104370#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:29,569 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {104370#(<= ~counter~0 4)} {104370#(<= ~counter~0 4)} #98#return; {104370#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:29,569 INFO L290 TraceCheckUtils]: 48: Hoare triple {104370#(<= ~counter~0 4)} assume !(~r~0 < 0); {104370#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:29,570 INFO L290 TraceCheckUtils]: 49: Hoare triple {104370#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104395#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:29,570 INFO L290 TraceCheckUtils]: 50: Hoare triple {104395#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {104395#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:29,571 INFO L272 TraceCheckUtils]: 51: Hoare triple {104395#(<= ~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)); {104395#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:29,571 INFO L290 TraceCheckUtils]: 52: Hoare triple {104395#(<= ~counter~0 5)} ~cond := #in~cond; {104395#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:29,571 INFO L290 TraceCheckUtils]: 53: Hoare triple {104395#(<= ~counter~0 5)} assume !(0 == ~cond); {104395#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:29,571 INFO L290 TraceCheckUtils]: 54: Hoare triple {104395#(<= ~counter~0 5)} assume true; {104395#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:29,572 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {104395#(<= ~counter~0 5)} {104395#(<= ~counter~0 5)} #94#return; {104395#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:29,572 INFO L290 TraceCheckUtils]: 56: Hoare triple {104395#(<= ~counter~0 5)} assume !!(0 != ~r~0); {104395#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:29,573 INFO L290 TraceCheckUtils]: 57: Hoare triple {104395#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104420#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:29,573 INFO L290 TraceCheckUtils]: 58: Hoare triple {104420#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {104420#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:29,574 INFO L272 TraceCheckUtils]: 59: Hoare triple {104420#(<= ~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)); {104420#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:29,574 INFO L290 TraceCheckUtils]: 60: Hoare triple {104420#(<= ~counter~0 6)} ~cond := #in~cond; {104420#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:29,574 INFO L290 TraceCheckUtils]: 61: Hoare triple {104420#(<= ~counter~0 6)} assume !(0 == ~cond); {104420#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:29,575 INFO L290 TraceCheckUtils]: 62: Hoare triple {104420#(<= ~counter~0 6)} assume true; {104420#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:29,575 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {104420#(<= ~counter~0 6)} {104420#(<= ~counter~0 6)} #96#return; {104420#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:29,575 INFO L290 TraceCheckUtils]: 64: Hoare triple {104420#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {104420#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:29,576 INFO L290 TraceCheckUtils]: 65: Hoare triple {104420#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104445#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:29,576 INFO L290 TraceCheckUtils]: 66: Hoare triple {104445#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {104445#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:29,577 INFO L272 TraceCheckUtils]: 67: Hoare triple {104445#(<= ~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)); {104445#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:29,577 INFO L290 TraceCheckUtils]: 68: Hoare triple {104445#(<= ~counter~0 7)} ~cond := #in~cond; {104445#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:29,577 INFO L290 TraceCheckUtils]: 69: Hoare triple {104445#(<= ~counter~0 7)} assume !(0 == ~cond); {104445#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:29,578 INFO L290 TraceCheckUtils]: 70: Hoare triple {104445#(<= ~counter~0 7)} assume true; {104445#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:29,578 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {104445#(<= ~counter~0 7)} {104445#(<= ~counter~0 7)} #96#return; {104445#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:29,578 INFO L290 TraceCheckUtils]: 72: Hoare triple {104445#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {104445#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:29,579 INFO L290 TraceCheckUtils]: 73: Hoare triple {104445#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104470#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:29,580 INFO L290 TraceCheckUtils]: 74: Hoare triple {104470#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {104470#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:29,580 INFO L272 TraceCheckUtils]: 75: Hoare triple {104470#(<= ~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)); {104470#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:29,580 INFO L290 TraceCheckUtils]: 76: Hoare triple {104470#(<= ~counter~0 8)} ~cond := #in~cond; {104470#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:29,581 INFO L290 TraceCheckUtils]: 77: Hoare triple {104470#(<= ~counter~0 8)} assume !(0 == ~cond); {104470#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:29,581 INFO L290 TraceCheckUtils]: 78: Hoare triple {104470#(<= ~counter~0 8)} assume true; {104470#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:29,581 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {104470#(<= ~counter~0 8)} {104470#(<= ~counter~0 8)} #96#return; {104470#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:29,582 INFO L290 TraceCheckUtils]: 80: Hoare triple {104470#(<= ~counter~0 8)} assume !(~r~0 > 0); {104470#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:29,582 INFO L290 TraceCheckUtils]: 81: Hoare triple {104470#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104495#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:29,583 INFO L290 TraceCheckUtils]: 82: Hoare triple {104495#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {104495#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:29,583 INFO L272 TraceCheckUtils]: 83: Hoare triple {104495#(<= ~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)); {104495#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:29,583 INFO L290 TraceCheckUtils]: 84: Hoare triple {104495#(<= ~counter~0 9)} ~cond := #in~cond; {104495#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:29,584 INFO L290 TraceCheckUtils]: 85: Hoare triple {104495#(<= ~counter~0 9)} assume !(0 == ~cond); {104495#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:29,584 INFO L290 TraceCheckUtils]: 86: Hoare triple {104495#(<= ~counter~0 9)} assume true; {104495#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:29,584 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {104495#(<= ~counter~0 9)} {104495#(<= ~counter~0 9)} #98#return; {104495#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:29,585 INFO L290 TraceCheckUtils]: 88: Hoare triple {104495#(<= ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {104495#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:29,586 INFO L290 TraceCheckUtils]: 89: Hoare triple {104495#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104520#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:29,586 INFO L290 TraceCheckUtils]: 90: Hoare triple {104520#(<= ~counter~0 10)} assume !!(#t~post8 < 50);havoc #t~post8; {104520#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:29,586 INFO L272 TraceCheckUtils]: 91: Hoare triple {104520#(<= ~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)); {104520#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:29,587 INFO L290 TraceCheckUtils]: 92: Hoare triple {104520#(<= ~counter~0 10)} ~cond := #in~cond; {104520#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:29,587 INFO L290 TraceCheckUtils]: 93: Hoare triple {104520#(<= ~counter~0 10)} assume !(0 == ~cond); {104520#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:29,587 INFO L290 TraceCheckUtils]: 94: Hoare triple {104520#(<= ~counter~0 10)} assume true; {104520#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:29,588 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {104520#(<= ~counter~0 10)} {104520#(<= ~counter~0 10)} #98#return; {104520#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:29,588 INFO L290 TraceCheckUtils]: 96: Hoare triple {104520#(<= ~counter~0 10)} assume !(~r~0 < 0); {104520#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:29,589 INFO L290 TraceCheckUtils]: 97: Hoare triple {104520#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104545#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:29,589 INFO L290 TraceCheckUtils]: 98: Hoare triple {104545#(<= ~counter~0 11)} assume !!(#t~post6 < 50);havoc #t~post6; {104545#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:29,590 INFO L272 TraceCheckUtils]: 99: Hoare triple {104545#(<= ~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)); {104545#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:29,590 INFO L290 TraceCheckUtils]: 100: Hoare triple {104545#(<= ~counter~0 11)} ~cond := #in~cond; {104545#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:29,590 INFO L290 TraceCheckUtils]: 101: Hoare triple {104545#(<= ~counter~0 11)} assume !(0 == ~cond); {104545#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:29,590 INFO L290 TraceCheckUtils]: 102: Hoare triple {104545#(<= ~counter~0 11)} assume true; {104545#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:29,591 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {104545#(<= ~counter~0 11)} {104545#(<= ~counter~0 11)} #94#return; {104545#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:29,591 INFO L290 TraceCheckUtils]: 104: Hoare triple {104545#(<= ~counter~0 11)} assume !!(0 != ~r~0); {104545#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:29,592 INFO L290 TraceCheckUtils]: 105: Hoare triple {104545#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104570#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:29,592 INFO L290 TraceCheckUtils]: 106: Hoare triple {104570#(<= ~counter~0 12)} assume !!(#t~post7 < 50);havoc #t~post7; {104570#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:29,593 INFO L272 TraceCheckUtils]: 107: Hoare triple {104570#(<= ~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)); {104570#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:29,593 INFO L290 TraceCheckUtils]: 108: Hoare triple {104570#(<= ~counter~0 12)} ~cond := #in~cond; {104570#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:29,593 INFO L290 TraceCheckUtils]: 109: Hoare triple {104570#(<= ~counter~0 12)} assume !(0 == ~cond); {104570#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:29,594 INFO L290 TraceCheckUtils]: 110: Hoare triple {104570#(<= ~counter~0 12)} assume true; {104570#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:29,594 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {104570#(<= ~counter~0 12)} {104570#(<= ~counter~0 12)} #96#return; {104570#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:29,594 INFO L290 TraceCheckUtils]: 112: Hoare triple {104570#(<= ~counter~0 12)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {104570#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:29,595 INFO L290 TraceCheckUtils]: 113: Hoare triple {104570#(<= ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104595#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:29,596 INFO L290 TraceCheckUtils]: 114: Hoare triple {104595#(<= ~counter~0 13)} assume !!(#t~post7 < 50);havoc #t~post7; {104595#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:29,596 INFO L272 TraceCheckUtils]: 115: Hoare triple {104595#(<= ~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)); {104595#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:29,596 INFO L290 TraceCheckUtils]: 116: Hoare triple {104595#(<= ~counter~0 13)} ~cond := #in~cond; {104595#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:29,597 INFO L290 TraceCheckUtils]: 117: Hoare triple {104595#(<= ~counter~0 13)} assume !(0 == ~cond); {104595#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:29,597 INFO L290 TraceCheckUtils]: 118: Hoare triple {104595#(<= ~counter~0 13)} assume true; {104595#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:29,597 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {104595#(<= ~counter~0 13)} {104595#(<= ~counter~0 13)} #96#return; {104595#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:29,598 INFO L290 TraceCheckUtils]: 120: Hoare triple {104595#(<= ~counter~0 13)} assume !(~r~0 > 0); {104595#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:29,598 INFO L290 TraceCheckUtils]: 121: Hoare triple {104595#(<= ~counter~0 13)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104620#(<= |main_#t~post8| 13)} is VALID [2022-04-28 06:07:29,598 INFO L290 TraceCheckUtils]: 122: Hoare triple {104620#(<= |main_#t~post8| 13)} assume !(#t~post8 < 50);havoc #t~post8; {104239#false} is VALID [2022-04-28 06:07:29,598 INFO L290 TraceCheckUtils]: 123: Hoare triple {104239#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104239#false} is VALID [2022-04-28 06:07:29,598 INFO L290 TraceCheckUtils]: 124: Hoare triple {104239#false} assume !(#t~post6 < 50);havoc #t~post6; {104239#false} is VALID [2022-04-28 06:07:29,598 INFO L272 TraceCheckUtils]: 125: Hoare triple {104239#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)); {104239#false} is VALID [2022-04-28 06:07:29,598 INFO L290 TraceCheckUtils]: 126: Hoare triple {104239#false} ~cond := #in~cond; {104239#false} is VALID [2022-04-28 06:07:29,599 INFO L290 TraceCheckUtils]: 127: Hoare triple {104239#false} assume 0 == ~cond; {104239#false} is VALID [2022-04-28 06:07:29,599 INFO L290 TraceCheckUtils]: 128: Hoare triple {104239#false} assume !false; {104239#false} is VALID [2022-04-28 06:07:29,599 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-28 06:07:29,599 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:07:30,233 INFO L290 TraceCheckUtils]: 128: Hoare triple {104239#false} assume !false; {104239#false} is VALID [2022-04-28 06:07:30,233 INFO L290 TraceCheckUtils]: 127: Hoare triple {104239#false} assume 0 == ~cond; {104239#false} is VALID [2022-04-28 06:07:30,234 INFO L290 TraceCheckUtils]: 126: Hoare triple {104239#false} ~cond := #in~cond; {104239#false} is VALID [2022-04-28 06:07:30,234 INFO L272 TraceCheckUtils]: 125: Hoare triple {104239#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)); {104239#false} is VALID [2022-04-28 06:07:30,234 INFO L290 TraceCheckUtils]: 124: Hoare triple {104239#false} assume !(#t~post6 < 50);havoc #t~post6; {104239#false} is VALID [2022-04-28 06:07:30,234 INFO L290 TraceCheckUtils]: 123: Hoare triple {104239#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104239#false} is VALID [2022-04-28 06:07:30,234 INFO L290 TraceCheckUtils]: 122: Hoare triple {104660#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {104239#false} is VALID [2022-04-28 06:07:30,234 INFO L290 TraceCheckUtils]: 121: Hoare triple {104664#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104660#(< |main_#t~post8| 50)} is VALID [2022-04-28 06:07:30,234 INFO L290 TraceCheckUtils]: 120: Hoare triple {104664#(< ~counter~0 50)} assume !(~r~0 > 0); {104664#(< ~counter~0 50)} is VALID [2022-04-28 06:07:30,235 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {104238#true} {104664#(< ~counter~0 50)} #96#return; {104664#(< ~counter~0 50)} is VALID [2022-04-28 06:07:30,235 INFO L290 TraceCheckUtils]: 118: Hoare triple {104238#true} assume true; {104238#true} is VALID [2022-04-28 06:07:30,235 INFO L290 TraceCheckUtils]: 117: Hoare triple {104238#true} assume !(0 == ~cond); {104238#true} is VALID [2022-04-28 06:07:30,235 INFO L290 TraceCheckUtils]: 116: Hoare triple {104238#true} ~cond := #in~cond; {104238#true} is VALID [2022-04-28 06:07:30,235 INFO L272 TraceCheckUtils]: 115: Hoare triple {104664#(< ~counter~0 50)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {104238#true} is VALID [2022-04-28 06:07:30,235 INFO L290 TraceCheckUtils]: 114: Hoare triple {104664#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {104664#(< ~counter~0 50)} is VALID [2022-04-28 06:07:30,237 INFO L290 TraceCheckUtils]: 113: Hoare triple {104689#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104664#(< ~counter~0 50)} is VALID [2022-04-28 06:07:30,237 INFO L290 TraceCheckUtils]: 112: Hoare triple {104689#(< ~counter~0 49)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {104689#(< ~counter~0 49)} is VALID [2022-04-28 06:07:30,238 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {104238#true} {104689#(< ~counter~0 49)} #96#return; {104689#(< ~counter~0 49)} is VALID [2022-04-28 06:07:30,238 INFO L290 TraceCheckUtils]: 110: Hoare triple {104238#true} assume true; {104238#true} is VALID [2022-04-28 06:07:30,238 INFO L290 TraceCheckUtils]: 109: Hoare triple {104238#true} assume !(0 == ~cond); {104238#true} is VALID [2022-04-28 06:07:30,238 INFO L290 TraceCheckUtils]: 108: Hoare triple {104238#true} ~cond := #in~cond; {104238#true} is VALID [2022-04-28 06:07:30,238 INFO L272 TraceCheckUtils]: 107: Hoare triple {104689#(< ~counter~0 49)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {104238#true} is VALID [2022-04-28 06:07:30,238 INFO L290 TraceCheckUtils]: 106: Hoare triple {104689#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {104689#(< ~counter~0 49)} is VALID [2022-04-28 06:07:30,239 INFO L290 TraceCheckUtils]: 105: Hoare triple {104714#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104689#(< ~counter~0 49)} is VALID [2022-04-28 06:07:30,239 INFO L290 TraceCheckUtils]: 104: Hoare triple {104714#(< ~counter~0 48)} assume !!(0 != ~r~0); {104714#(< ~counter~0 48)} is VALID [2022-04-28 06:07:30,239 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {104238#true} {104714#(< ~counter~0 48)} #94#return; {104714#(< ~counter~0 48)} is VALID [2022-04-28 06:07:30,239 INFO L290 TraceCheckUtils]: 102: Hoare triple {104238#true} assume true; {104238#true} is VALID [2022-04-28 06:07:30,240 INFO L290 TraceCheckUtils]: 101: Hoare triple {104238#true} assume !(0 == ~cond); {104238#true} is VALID [2022-04-28 06:07:30,240 INFO L290 TraceCheckUtils]: 100: Hoare triple {104238#true} ~cond := #in~cond; {104238#true} is VALID [2022-04-28 06:07:30,240 INFO L272 TraceCheckUtils]: 99: Hoare triple {104714#(< ~counter~0 48)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {104238#true} is VALID [2022-04-28 06:07:30,240 INFO L290 TraceCheckUtils]: 98: Hoare triple {104714#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {104714#(< ~counter~0 48)} is VALID [2022-04-28 06:07:30,241 INFO L290 TraceCheckUtils]: 97: Hoare triple {104739#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104714#(< ~counter~0 48)} is VALID [2022-04-28 06:07:30,241 INFO L290 TraceCheckUtils]: 96: Hoare triple {104739#(< ~counter~0 47)} assume !(~r~0 < 0); {104739#(< ~counter~0 47)} is VALID [2022-04-28 06:07:30,241 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {104238#true} {104739#(< ~counter~0 47)} #98#return; {104739#(< ~counter~0 47)} is VALID [2022-04-28 06:07:30,241 INFO L290 TraceCheckUtils]: 94: Hoare triple {104238#true} assume true; {104238#true} is VALID [2022-04-28 06:07:30,241 INFO L290 TraceCheckUtils]: 93: Hoare triple {104238#true} assume !(0 == ~cond); {104238#true} is VALID [2022-04-28 06:07:30,241 INFO L290 TraceCheckUtils]: 92: Hoare triple {104238#true} ~cond := #in~cond; {104238#true} is VALID [2022-04-28 06:07:30,241 INFO L272 TraceCheckUtils]: 91: Hoare triple {104739#(< ~counter~0 47)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {104238#true} is VALID [2022-04-28 06:07:30,242 INFO L290 TraceCheckUtils]: 90: Hoare triple {104739#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {104739#(< ~counter~0 47)} is VALID [2022-04-28 06:07:30,242 INFO L290 TraceCheckUtils]: 89: Hoare triple {104764#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104739#(< ~counter~0 47)} is VALID [2022-04-28 06:07:30,243 INFO L290 TraceCheckUtils]: 88: Hoare triple {104764#(< ~counter~0 46)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {104764#(< ~counter~0 46)} is VALID [2022-04-28 06:07:30,243 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {104238#true} {104764#(< ~counter~0 46)} #98#return; {104764#(< ~counter~0 46)} is VALID [2022-04-28 06:07:30,243 INFO L290 TraceCheckUtils]: 86: Hoare triple {104238#true} assume true; {104238#true} is VALID [2022-04-28 06:07:30,243 INFO L290 TraceCheckUtils]: 85: Hoare triple {104238#true} assume !(0 == ~cond); {104238#true} is VALID [2022-04-28 06:07:30,243 INFO L290 TraceCheckUtils]: 84: Hoare triple {104238#true} ~cond := #in~cond; {104238#true} is VALID [2022-04-28 06:07:30,243 INFO L272 TraceCheckUtils]: 83: Hoare triple {104764#(< ~counter~0 46)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {104238#true} is VALID [2022-04-28 06:07:30,243 INFO L290 TraceCheckUtils]: 82: Hoare triple {104764#(< ~counter~0 46)} assume !!(#t~post8 < 50);havoc #t~post8; {104764#(< ~counter~0 46)} is VALID [2022-04-28 06:07:30,244 INFO L290 TraceCheckUtils]: 81: Hoare triple {104789#(< ~counter~0 45)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104764#(< ~counter~0 46)} is VALID [2022-04-28 06:07:30,244 INFO L290 TraceCheckUtils]: 80: Hoare triple {104789#(< ~counter~0 45)} assume !(~r~0 > 0); {104789#(< ~counter~0 45)} is VALID [2022-04-28 06:07:30,245 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {104238#true} {104789#(< ~counter~0 45)} #96#return; {104789#(< ~counter~0 45)} is VALID [2022-04-28 06:07:30,245 INFO L290 TraceCheckUtils]: 78: Hoare triple {104238#true} assume true; {104238#true} is VALID [2022-04-28 06:07:30,245 INFO L290 TraceCheckUtils]: 77: Hoare triple {104238#true} assume !(0 == ~cond); {104238#true} is VALID [2022-04-28 06:07:30,245 INFO L290 TraceCheckUtils]: 76: Hoare triple {104238#true} ~cond := #in~cond; {104238#true} is VALID [2022-04-28 06:07:30,245 INFO L272 TraceCheckUtils]: 75: Hoare triple {104789#(< ~counter~0 45)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {104238#true} is VALID [2022-04-28 06:07:30,245 INFO L290 TraceCheckUtils]: 74: Hoare triple {104789#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {104789#(< ~counter~0 45)} is VALID [2022-04-28 06:07:30,246 INFO L290 TraceCheckUtils]: 73: Hoare triple {104814#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104789#(< ~counter~0 45)} is VALID [2022-04-28 06:07:30,246 INFO L290 TraceCheckUtils]: 72: Hoare triple {104814#(< ~counter~0 44)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {104814#(< ~counter~0 44)} is VALID [2022-04-28 06:07:30,247 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {104238#true} {104814#(< ~counter~0 44)} #96#return; {104814#(< ~counter~0 44)} is VALID [2022-04-28 06:07:30,247 INFO L290 TraceCheckUtils]: 70: Hoare triple {104238#true} assume true; {104238#true} is VALID [2022-04-28 06:07:30,247 INFO L290 TraceCheckUtils]: 69: Hoare triple {104238#true} assume !(0 == ~cond); {104238#true} is VALID [2022-04-28 06:07:30,247 INFO L290 TraceCheckUtils]: 68: Hoare triple {104238#true} ~cond := #in~cond; {104238#true} is VALID [2022-04-28 06:07:30,247 INFO L272 TraceCheckUtils]: 67: Hoare triple {104814#(< ~counter~0 44)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {104238#true} is VALID [2022-04-28 06:07:30,247 INFO L290 TraceCheckUtils]: 66: Hoare triple {104814#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {104814#(< ~counter~0 44)} is VALID [2022-04-28 06:07:30,248 INFO L290 TraceCheckUtils]: 65: Hoare triple {104839#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104814#(< ~counter~0 44)} is VALID [2022-04-28 06:07:30,248 INFO L290 TraceCheckUtils]: 64: Hoare triple {104839#(< ~counter~0 43)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {104839#(< ~counter~0 43)} is VALID [2022-04-28 06:07:30,249 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {104238#true} {104839#(< ~counter~0 43)} #96#return; {104839#(< ~counter~0 43)} is VALID [2022-04-28 06:07:30,249 INFO L290 TraceCheckUtils]: 62: Hoare triple {104238#true} assume true; {104238#true} is VALID [2022-04-28 06:07:30,249 INFO L290 TraceCheckUtils]: 61: Hoare triple {104238#true} assume !(0 == ~cond); {104238#true} is VALID [2022-04-28 06:07:30,249 INFO L290 TraceCheckUtils]: 60: Hoare triple {104238#true} ~cond := #in~cond; {104238#true} is VALID [2022-04-28 06:07:30,249 INFO L272 TraceCheckUtils]: 59: Hoare triple {104839#(< ~counter~0 43)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {104238#true} is VALID [2022-04-28 06:07:30,249 INFO L290 TraceCheckUtils]: 58: Hoare triple {104839#(< ~counter~0 43)} assume !!(#t~post7 < 50);havoc #t~post7; {104839#(< ~counter~0 43)} is VALID [2022-04-28 06:07:30,250 INFO L290 TraceCheckUtils]: 57: Hoare triple {104864#(< ~counter~0 42)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104839#(< ~counter~0 43)} is VALID [2022-04-28 06:07:30,250 INFO L290 TraceCheckUtils]: 56: Hoare triple {104864#(< ~counter~0 42)} assume !!(0 != ~r~0); {104864#(< ~counter~0 42)} is VALID [2022-04-28 06:07:30,250 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {104238#true} {104864#(< ~counter~0 42)} #94#return; {104864#(< ~counter~0 42)} is VALID [2022-04-28 06:07:30,250 INFO L290 TraceCheckUtils]: 54: Hoare triple {104238#true} assume true; {104238#true} is VALID [2022-04-28 06:07:30,251 INFO L290 TraceCheckUtils]: 53: Hoare triple {104238#true} assume !(0 == ~cond); {104238#true} is VALID [2022-04-28 06:07:30,251 INFO L290 TraceCheckUtils]: 52: Hoare triple {104238#true} ~cond := #in~cond; {104238#true} is VALID [2022-04-28 06:07:30,251 INFO L272 TraceCheckUtils]: 51: Hoare triple {104864#(< ~counter~0 42)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {104238#true} is VALID [2022-04-28 06:07:30,251 INFO L290 TraceCheckUtils]: 50: Hoare triple {104864#(< ~counter~0 42)} assume !!(#t~post6 < 50);havoc #t~post6; {104864#(< ~counter~0 42)} is VALID [2022-04-28 06:07:30,252 INFO L290 TraceCheckUtils]: 49: Hoare triple {104889#(< ~counter~0 41)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104864#(< ~counter~0 42)} is VALID [2022-04-28 06:07:30,252 INFO L290 TraceCheckUtils]: 48: Hoare triple {104889#(< ~counter~0 41)} assume !(~r~0 < 0); {104889#(< ~counter~0 41)} is VALID [2022-04-28 06:07:30,252 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {104238#true} {104889#(< ~counter~0 41)} #98#return; {104889#(< ~counter~0 41)} is VALID [2022-04-28 06:07:30,252 INFO L290 TraceCheckUtils]: 46: Hoare triple {104238#true} assume true; {104238#true} is VALID [2022-04-28 06:07:30,252 INFO L290 TraceCheckUtils]: 45: Hoare triple {104238#true} assume !(0 == ~cond); {104238#true} is VALID [2022-04-28 06:07:30,252 INFO L290 TraceCheckUtils]: 44: Hoare triple {104238#true} ~cond := #in~cond; {104238#true} is VALID [2022-04-28 06:07:30,252 INFO L272 TraceCheckUtils]: 43: Hoare triple {104889#(< ~counter~0 41)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {104238#true} is VALID [2022-04-28 06:07:30,253 INFO L290 TraceCheckUtils]: 42: Hoare triple {104889#(< ~counter~0 41)} assume !!(#t~post8 < 50);havoc #t~post8; {104889#(< ~counter~0 41)} is VALID [2022-04-28 06:07:30,253 INFO L290 TraceCheckUtils]: 41: Hoare triple {104914#(< ~counter~0 40)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104889#(< ~counter~0 41)} is VALID [2022-04-28 06:07:30,254 INFO L290 TraceCheckUtils]: 40: Hoare triple {104914#(< ~counter~0 40)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {104914#(< ~counter~0 40)} is VALID [2022-04-28 06:07:30,254 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {104238#true} {104914#(< ~counter~0 40)} #98#return; {104914#(< ~counter~0 40)} is VALID [2022-04-28 06:07:30,254 INFO L290 TraceCheckUtils]: 38: Hoare triple {104238#true} assume true; {104238#true} is VALID [2022-04-28 06:07:30,254 INFO L290 TraceCheckUtils]: 37: Hoare triple {104238#true} assume !(0 == ~cond); {104238#true} is VALID [2022-04-28 06:07:30,254 INFO L290 TraceCheckUtils]: 36: Hoare triple {104238#true} ~cond := #in~cond; {104238#true} is VALID [2022-04-28 06:07:30,254 INFO L272 TraceCheckUtils]: 35: Hoare triple {104914#(< ~counter~0 40)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {104238#true} is VALID [2022-04-28 06:07:30,254 INFO L290 TraceCheckUtils]: 34: Hoare triple {104914#(< ~counter~0 40)} assume !!(#t~post8 < 50);havoc #t~post8; {104914#(< ~counter~0 40)} is VALID [2022-04-28 06:07:30,255 INFO L290 TraceCheckUtils]: 33: Hoare triple {104939#(< ~counter~0 39)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {104914#(< ~counter~0 40)} is VALID [2022-04-28 06:07:30,255 INFO L290 TraceCheckUtils]: 32: Hoare triple {104939#(< ~counter~0 39)} assume !(~r~0 > 0); {104939#(< ~counter~0 39)} is VALID [2022-04-28 06:07:30,256 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {104238#true} {104939#(< ~counter~0 39)} #96#return; {104939#(< ~counter~0 39)} is VALID [2022-04-28 06:07:30,256 INFO L290 TraceCheckUtils]: 30: Hoare triple {104238#true} assume true; {104238#true} is VALID [2022-04-28 06:07:30,256 INFO L290 TraceCheckUtils]: 29: Hoare triple {104238#true} assume !(0 == ~cond); {104238#true} is VALID [2022-04-28 06:07:30,256 INFO L290 TraceCheckUtils]: 28: Hoare triple {104238#true} ~cond := #in~cond; {104238#true} is VALID [2022-04-28 06:07:30,256 INFO L272 TraceCheckUtils]: 27: Hoare triple {104939#(< ~counter~0 39)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {104238#true} is VALID [2022-04-28 06:07:30,256 INFO L290 TraceCheckUtils]: 26: Hoare triple {104939#(< ~counter~0 39)} assume !!(#t~post7 < 50);havoc #t~post7; {104939#(< ~counter~0 39)} is VALID [2022-04-28 06:07:30,257 INFO L290 TraceCheckUtils]: 25: Hoare triple {104964#(< ~counter~0 38)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {104939#(< ~counter~0 39)} is VALID [2022-04-28 06:07:30,257 INFO L290 TraceCheckUtils]: 24: Hoare triple {104964#(< ~counter~0 38)} assume !!(0 != ~r~0); {104964#(< ~counter~0 38)} is VALID [2022-04-28 06:07:30,257 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {104238#true} {104964#(< ~counter~0 38)} #94#return; {104964#(< ~counter~0 38)} is VALID [2022-04-28 06:07:30,257 INFO L290 TraceCheckUtils]: 22: Hoare triple {104238#true} assume true; {104238#true} is VALID [2022-04-28 06:07:30,258 INFO L290 TraceCheckUtils]: 21: Hoare triple {104238#true} assume !(0 == ~cond); {104238#true} is VALID [2022-04-28 06:07:30,258 INFO L290 TraceCheckUtils]: 20: Hoare triple {104238#true} ~cond := #in~cond; {104238#true} is VALID [2022-04-28 06:07:30,258 INFO L272 TraceCheckUtils]: 19: Hoare triple {104964#(< ~counter~0 38)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {104238#true} is VALID [2022-04-28 06:07:30,258 INFO L290 TraceCheckUtils]: 18: Hoare triple {104964#(< ~counter~0 38)} assume !!(#t~post6 < 50);havoc #t~post6; {104964#(< ~counter~0 38)} is VALID [2022-04-28 06:07:30,259 INFO L290 TraceCheckUtils]: 17: Hoare triple {104989#(< ~counter~0 37)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {104964#(< ~counter~0 38)} is VALID [2022-04-28 06:07:30,259 INFO L290 TraceCheckUtils]: 16: Hoare triple {104989#(< ~counter~0 37)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {104989#(< ~counter~0 37)} is VALID [2022-04-28 06:07:30,259 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {104238#true} {104989#(< ~counter~0 37)} #92#return; {104989#(< ~counter~0 37)} is VALID [2022-04-28 06:07:30,259 INFO L290 TraceCheckUtils]: 14: Hoare triple {104238#true} assume true; {104238#true} is VALID [2022-04-28 06:07:30,259 INFO L290 TraceCheckUtils]: 13: Hoare triple {104238#true} assume !(0 == ~cond); {104238#true} is VALID [2022-04-28 06:07:30,259 INFO L290 TraceCheckUtils]: 12: Hoare triple {104238#true} ~cond := #in~cond; {104238#true} is VALID [2022-04-28 06:07:30,259 INFO L272 TraceCheckUtils]: 11: Hoare triple {104989#(< ~counter~0 37)} 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)); {104238#true} is VALID [2022-04-28 06:07:30,260 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {104238#true} {104989#(< ~counter~0 37)} #90#return; {104989#(< ~counter~0 37)} is VALID [2022-04-28 06:07:30,260 INFO L290 TraceCheckUtils]: 9: Hoare triple {104238#true} assume true; {104238#true} is VALID [2022-04-28 06:07:30,260 INFO L290 TraceCheckUtils]: 8: Hoare triple {104238#true} assume !(0 == ~cond); {104238#true} is VALID [2022-04-28 06:07:30,260 INFO L290 TraceCheckUtils]: 7: Hoare triple {104238#true} ~cond := #in~cond; {104238#true} is VALID [2022-04-28 06:07:30,260 INFO L272 TraceCheckUtils]: 6: Hoare triple {104989#(< ~counter~0 37)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {104238#true} is VALID [2022-04-28 06:07:30,260 INFO L290 TraceCheckUtils]: 5: Hoare triple {104989#(< ~counter~0 37)} 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; {104989#(< ~counter~0 37)} is VALID [2022-04-28 06:07:30,260 INFO L272 TraceCheckUtils]: 4: Hoare triple {104989#(< ~counter~0 37)} call #t~ret9 := main(); {104989#(< ~counter~0 37)} is VALID [2022-04-28 06:07:30,260 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {104989#(< ~counter~0 37)} {104238#true} #102#return; {104989#(< ~counter~0 37)} is VALID [2022-04-28 06:07:30,261 INFO L290 TraceCheckUtils]: 2: Hoare triple {104989#(< ~counter~0 37)} assume true; {104989#(< ~counter~0 37)} is VALID [2022-04-28 06:07:30,261 INFO L290 TraceCheckUtils]: 1: Hoare triple {104238#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {104989#(< ~counter~0 37)} is VALID [2022-04-28 06:07:30,261 INFO L272 TraceCheckUtils]: 0: Hoare triple {104238#true} call ULTIMATE.init(); {104238#true} is VALID [2022-04-28 06:07:30,261 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-28 06:07:30,262 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:07:30,262 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1822509577] [2022-04-28 06:07:30,262 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:07:30,262 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [128508420] [2022-04-28 06:07:30,262 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [128508420] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:07:30,262 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:07:30,262 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 32 [2022-04-28 06:07:30,262 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:07:30,262 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1979819184] [2022-04-28 06:07:30,262 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1979819184] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:07:30,262 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:07:30,262 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-28 06:07:30,262 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [962683714] [2022-04-28 06:07:30,262 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:07:30,263 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-28 06:07:30,263 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:07:30,263 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-28 06:07:30,333 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:07:30,333 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-28 06:07:30,333 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:07:30,333 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-28 06:07:30,333 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=440, Invalid=552, Unknown=0, NotChecked=0, Total=992 [2022-04-28 06:07:30,334 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-28 06:07:33,175 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:07:33,175 INFO L93 Difference]: Finished difference Result 937 states and 1280 transitions. [2022-04-28 06:07:33,175 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-04-28 06:07:33,175 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-28 06:07:33,175 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:07:33,176 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-28 06:07:33,178 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 296 transitions. [2022-04-28 06:07:33,178 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-28 06:07:33,180 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 296 transitions. [2022-04-28 06:07:33,180 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 296 transitions. [2022-04-28 06:07:33,495 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-28 06:07:33,516 INFO L225 Difference]: With dead ends: 937 [2022-04-28 06:07:33,516 INFO L226 Difference]: Without dead ends: 740 [2022-04-28 06:07:33,535 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 268 GetRequests, 227 SyntacticMatches, 0 SemanticMatches, 41 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 95 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=759, Invalid=1047, Unknown=0, NotChecked=0, Total=1806 [2022-04-28 06:07:33,536 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 209 mSDsluCounter, 235 mSDsCounter, 0 mSdLazyCounter, 177 mSolverCounterSat, 181 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 209 SdHoareTripleChecker+Valid, 304 SdHoareTripleChecker+Invalid, 358 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 181 IncrementalHoareTripleChecker+Valid, 177 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 06:07:33,537 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [209 Valid, 304 Invalid, 358 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [181 Valid, 177 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 06:07:33,537 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 740 states. [2022-04-28 06:07:36,157 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 740 to 730. [2022-04-28 06:07:36,157 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:07:36,158 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-28 06:07:36,158 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-28 06:07:36,160 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-28 06:07:36,178 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:07:36,178 INFO L93 Difference]: Finished difference Result 740 states and 976 transitions. [2022-04-28 06:07:36,179 INFO L276 IsEmpty]: Start isEmpty. Operand 740 states and 976 transitions. [2022-04-28 06:07:36,179 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:07:36,180 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:07:36,180 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-28 06:07:36,181 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-28 06:07:36,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:07:36,198 INFO L93 Difference]: Finished difference Result 740 states and 976 transitions. [2022-04-28 06:07:36,198 INFO L276 IsEmpty]: Start isEmpty. Operand 740 states and 976 transitions. [2022-04-28 06:07:36,199 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:07:36,199 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:07:36,199 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:07:36,199 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:07:36,200 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-28 06:07:36,222 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 730 states to 730 states and 966 transitions. [2022-04-28 06:07:36,223 INFO L78 Accepts]: Start accepts. Automaton has 730 states and 966 transitions. Word has length 129 [2022-04-28 06:07:36,223 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:07:36,223 INFO L495 AbstractCegarLoop]: Abstraction has 730 states and 966 transitions. [2022-04-28 06:07:36,223 INFO L496 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-28 06:07:36,223 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 730 states and 966 transitions. [2022-04-28 06:07:55,221 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-28 06:07:55,221 INFO L276 IsEmpty]: Start isEmpty. Operand 730 states and 966 transitions. [2022-04-28 06:07:55,222 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 132 [2022-04-28 06:07:55,222 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:07:55,222 INFO L195 NwaCegarLoop]: 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-28 06:07:55,239 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (44)] Forceful destruction successful, exit code 0 [2022-04-28 06:07:55,423 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 44 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable42 [2022-04-28 06:07:55,423 INFO L420 AbstractCegarLoop]: === Iteration 44 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:07:55,423 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:07:55,423 INFO L85 PathProgramCache]: Analyzing trace with hash 1255136270, now seen corresponding path program 17 times [2022-04-28 06:07:55,423 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:07:55,423 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [21260574] [2022-04-28 06:07:55,424 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:07:55,424 INFO L85 PathProgramCache]: Analyzing trace with hash 1255136270, now seen corresponding path program 18 times [2022-04-28 06:07:55,424 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:07:55,424 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [915322471] [2022-04-28 06:07:55,424 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:07:55,424 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:07:55,439 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:07:55,439 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [102227212] [2022-04-28 06:07:55,439 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 06:07:55,439 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:07:55,440 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:07:55,441 INFO L229 MonitoredProcess]: Starting monitored process 45 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:07:55,441 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (45)] Waiting until timeout for monitored process [2022-04-28 06:07:55,619 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2022-04-28 06:07:55,619 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:07:55,621 INFO L263 TraceCheckSpWp]: Trace formula consists of 322 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-28 06:07:55,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:07:55,645 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:07:56,217 INFO L272 TraceCheckUtils]: 0: Hoare triple {109879#true} call ULTIMATE.init(); {109879#true} is VALID [2022-04-28 06:07:56,217 INFO L290 TraceCheckUtils]: 1: Hoare triple {109879#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,218 INFO L290 TraceCheckUtils]: 2: Hoare triple {109887#(<= ~counter~0 0)} assume true; {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,218 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {109887#(<= ~counter~0 0)} {109879#true} #102#return; {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,218 INFO L272 TraceCheckUtils]: 4: Hoare triple {109887#(<= ~counter~0 0)} call #t~ret9 := main(); {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,218 INFO L290 TraceCheckUtils]: 5: Hoare triple {109887#(<= ~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; {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,219 INFO L272 TraceCheckUtils]: 6: Hoare triple {109887#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,219 INFO L290 TraceCheckUtils]: 7: Hoare triple {109887#(<= ~counter~0 0)} ~cond := #in~cond; {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,219 INFO L290 TraceCheckUtils]: 8: Hoare triple {109887#(<= ~counter~0 0)} assume !(0 == ~cond); {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,220 INFO L290 TraceCheckUtils]: 9: Hoare triple {109887#(<= ~counter~0 0)} assume true; {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,220 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {109887#(<= ~counter~0 0)} {109887#(<= ~counter~0 0)} #90#return; {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,220 INFO L272 TraceCheckUtils]: 11: Hoare triple {109887#(<= ~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)); {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,220 INFO L290 TraceCheckUtils]: 12: Hoare triple {109887#(<= ~counter~0 0)} ~cond := #in~cond; {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,221 INFO L290 TraceCheckUtils]: 13: Hoare triple {109887#(<= ~counter~0 0)} assume !(0 == ~cond); {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,221 INFO L290 TraceCheckUtils]: 14: Hoare triple {109887#(<= ~counter~0 0)} assume true; {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,221 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {109887#(<= ~counter~0 0)} {109887#(<= ~counter~0 0)} #92#return; {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,221 INFO L290 TraceCheckUtils]: 16: Hoare triple {109887#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {109887#(<= ~counter~0 0)} is VALID [2022-04-28 06:07:56,223 INFO L290 TraceCheckUtils]: 17: Hoare triple {109887#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {109936#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:56,224 INFO L290 TraceCheckUtils]: 18: Hoare triple {109936#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {109936#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:56,224 INFO L272 TraceCheckUtils]: 19: Hoare triple {109936#(<= ~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)); {109936#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:56,224 INFO L290 TraceCheckUtils]: 20: Hoare triple {109936#(<= ~counter~0 1)} ~cond := #in~cond; {109936#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:56,225 INFO L290 TraceCheckUtils]: 21: Hoare triple {109936#(<= ~counter~0 1)} assume !(0 == ~cond); {109936#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:56,225 INFO L290 TraceCheckUtils]: 22: Hoare triple {109936#(<= ~counter~0 1)} assume true; {109936#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:56,225 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {109936#(<= ~counter~0 1)} {109936#(<= ~counter~0 1)} #94#return; {109936#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:56,225 INFO L290 TraceCheckUtils]: 24: Hoare triple {109936#(<= ~counter~0 1)} assume !!(0 != ~r~0); {109936#(<= ~counter~0 1)} is VALID [2022-04-28 06:07:56,226 INFO L290 TraceCheckUtils]: 25: Hoare triple {109936#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {109961#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:56,226 INFO L290 TraceCheckUtils]: 26: Hoare triple {109961#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {109961#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:56,227 INFO L272 TraceCheckUtils]: 27: Hoare triple {109961#(<= ~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)); {109961#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:56,227 INFO L290 TraceCheckUtils]: 28: Hoare triple {109961#(<= ~counter~0 2)} ~cond := #in~cond; {109961#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:56,227 INFO L290 TraceCheckUtils]: 29: Hoare triple {109961#(<= ~counter~0 2)} assume !(0 == ~cond); {109961#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:56,228 INFO L290 TraceCheckUtils]: 30: Hoare triple {109961#(<= ~counter~0 2)} assume true; {109961#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:56,228 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {109961#(<= ~counter~0 2)} {109961#(<= ~counter~0 2)} #96#return; {109961#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:56,228 INFO L290 TraceCheckUtils]: 32: Hoare triple {109961#(<= ~counter~0 2)} assume !(~r~0 > 0); {109961#(<= ~counter~0 2)} is VALID [2022-04-28 06:07:56,229 INFO L290 TraceCheckUtils]: 33: Hoare triple {109961#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {109986#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:56,229 INFO L290 TraceCheckUtils]: 34: Hoare triple {109986#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {109986#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:56,230 INFO L272 TraceCheckUtils]: 35: Hoare triple {109986#(<= ~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)); {109986#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:56,230 INFO L290 TraceCheckUtils]: 36: Hoare triple {109986#(<= ~counter~0 3)} ~cond := #in~cond; {109986#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:56,230 INFO L290 TraceCheckUtils]: 37: Hoare triple {109986#(<= ~counter~0 3)} assume !(0 == ~cond); {109986#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:56,230 INFO L290 TraceCheckUtils]: 38: Hoare triple {109986#(<= ~counter~0 3)} assume true; {109986#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:56,231 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {109986#(<= ~counter~0 3)} {109986#(<= ~counter~0 3)} #98#return; {109986#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:56,231 INFO L290 TraceCheckUtils]: 40: Hoare triple {109986#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {109986#(<= ~counter~0 3)} is VALID [2022-04-28 06:07:56,232 INFO L290 TraceCheckUtils]: 41: Hoare triple {109986#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110011#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:56,232 INFO L290 TraceCheckUtils]: 42: Hoare triple {110011#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {110011#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:56,233 INFO L272 TraceCheckUtils]: 43: Hoare triple {110011#(<= ~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)); {110011#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:56,233 INFO L290 TraceCheckUtils]: 44: Hoare triple {110011#(<= ~counter~0 4)} ~cond := #in~cond; {110011#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:56,233 INFO L290 TraceCheckUtils]: 45: Hoare triple {110011#(<= ~counter~0 4)} assume !(0 == ~cond); {110011#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:56,233 INFO L290 TraceCheckUtils]: 46: Hoare triple {110011#(<= ~counter~0 4)} assume true; {110011#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:56,234 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {110011#(<= ~counter~0 4)} {110011#(<= ~counter~0 4)} #98#return; {110011#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:56,234 INFO L290 TraceCheckUtils]: 48: Hoare triple {110011#(<= ~counter~0 4)} assume !(~r~0 < 0); {110011#(<= ~counter~0 4)} is VALID [2022-04-28 06:07:56,235 INFO L290 TraceCheckUtils]: 49: Hoare triple {110011#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110036#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:56,235 INFO L290 TraceCheckUtils]: 50: Hoare triple {110036#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {110036#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:56,236 INFO L272 TraceCheckUtils]: 51: Hoare triple {110036#(<= ~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)); {110036#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:56,236 INFO L290 TraceCheckUtils]: 52: Hoare triple {110036#(<= ~counter~0 5)} ~cond := #in~cond; {110036#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:56,236 INFO L290 TraceCheckUtils]: 53: Hoare triple {110036#(<= ~counter~0 5)} assume !(0 == ~cond); {110036#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:56,236 INFO L290 TraceCheckUtils]: 54: Hoare triple {110036#(<= ~counter~0 5)} assume true; {110036#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:56,237 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {110036#(<= ~counter~0 5)} {110036#(<= ~counter~0 5)} #94#return; {110036#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:56,237 INFO L290 TraceCheckUtils]: 56: Hoare triple {110036#(<= ~counter~0 5)} assume !!(0 != ~r~0); {110036#(<= ~counter~0 5)} is VALID [2022-04-28 06:07:56,238 INFO L290 TraceCheckUtils]: 57: Hoare triple {110036#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110061#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:56,238 INFO L290 TraceCheckUtils]: 58: Hoare triple {110061#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {110061#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:56,238 INFO L272 TraceCheckUtils]: 59: Hoare triple {110061#(<= ~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)); {110061#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:56,239 INFO L290 TraceCheckUtils]: 60: Hoare triple {110061#(<= ~counter~0 6)} ~cond := #in~cond; {110061#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:56,239 INFO L290 TraceCheckUtils]: 61: Hoare triple {110061#(<= ~counter~0 6)} assume !(0 == ~cond); {110061#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:56,239 INFO L290 TraceCheckUtils]: 62: Hoare triple {110061#(<= ~counter~0 6)} assume true; {110061#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:56,240 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {110061#(<= ~counter~0 6)} {110061#(<= ~counter~0 6)} #96#return; {110061#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:56,240 INFO L290 TraceCheckUtils]: 64: Hoare triple {110061#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110061#(<= ~counter~0 6)} is VALID [2022-04-28 06:07:56,241 INFO L290 TraceCheckUtils]: 65: Hoare triple {110061#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110086#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:56,241 INFO L290 TraceCheckUtils]: 66: Hoare triple {110086#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {110086#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:56,241 INFO L272 TraceCheckUtils]: 67: Hoare triple {110086#(<= ~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)); {110086#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:56,242 INFO L290 TraceCheckUtils]: 68: Hoare triple {110086#(<= ~counter~0 7)} ~cond := #in~cond; {110086#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:56,242 INFO L290 TraceCheckUtils]: 69: Hoare triple {110086#(<= ~counter~0 7)} assume !(0 == ~cond); {110086#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:56,242 INFO L290 TraceCheckUtils]: 70: Hoare triple {110086#(<= ~counter~0 7)} assume true; {110086#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:56,242 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {110086#(<= ~counter~0 7)} {110086#(<= ~counter~0 7)} #96#return; {110086#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:56,243 INFO L290 TraceCheckUtils]: 72: Hoare triple {110086#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110086#(<= ~counter~0 7)} is VALID [2022-04-28 06:07:56,243 INFO L290 TraceCheckUtils]: 73: Hoare triple {110086#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110111#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:56,244 INFO L290 TraceCheckUtils]: 74: Hoare triple {110111#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {110111#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:56,244 INFO L272 TraceCheckUtils]: 75: Hoare triple {110111#(<= ~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)); {110111#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:56,244 INFO L290 TraceCheckUtils]: 76: Hoare triple {110111#(<= ~counter~0 8)} ~cond := #in~cond; {110111#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:56,245 INFO L290 TraceCheckUtils]: 77: Hoare triple {110111#(<= ~counter~0 8)} assume !(0 == ~cond); {110111#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:56,245 INFO L290 TraceCheckUtils]: 78: Hoare triple {110111#(<= ~counter~0 8)} assume true; {110111#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:56,245 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {110111#(<= ~counter~0 8)} {110111#(<= ~counter~0 8)} #96#return; {110111#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:56,245 INFO L290 TraceCheckUtils]: 80: Hoare triple {110111#(<= ~counter~0 8)} assume !(~r~0 > 0); {110111#(<= ~counter~0 8)} is VALID [2022-04-28 06:07:56,246 INFO L290 TraceCheckUtils]: 81: Hoare triple {110111#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110136#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:56,247 INFO L290 TraceCheckUtils]: 82: Hoare triple {110136#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {110136#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:56,247 INFO L272 TraceCheckUtils]: 83: Hoare triple {110136#(<= ~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)); {110136#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:56,247 INFO L290 TraceCheckUtils]: 84: Hoare triple {110136#(<= ~counter~0 9)} ~cond := #in~cond; {110136#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:56,247 INFO L290 TraceCheckUtils]: 85: Hoare triple {110136#(<= ~counter~0 9)} assume !(0 == ~cond); {110136#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:56,248 INFO L290 TraceCheckUtils]: 86: Hoare triple {110136#(<= ~counter~0 9)} assume true; {110136#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:56,248 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {110136#(<= ~counter~0 9)} {110136#(<= ~counter~0 9)} #98#return; {110136#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:56,248 INFO L290 TraceCheckUtils]: 88: Hoare triple {110136#(<= ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {110136#(<= ~counter~0 9)} is VALID [2022-04-28 06:07:56,249 INFO L290 TraceCheckUtils]: 89: Hoare triple {110136#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110161#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:56,249 INFO L290 TraceCheckUtils]: 90: Hoare triple {110161#(<= ~counter~0 10)} assume !!(#t~post8 < 50);havoc #t~post8; {110161#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:56,250 INFO L272 TraceCheckUtils]: 91: Hoare triple {110161#(<= ~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)); {110161#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:56,250 INFO L290 TraceCheckUtils]: 92: Hoare triple {110161#(<= ~counter~0 10)} ~cond := #in~cond; {110161#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:56,250 INFO L290 TraceCheckUtils]: 93: Hoare triple {110161#(<= ~counter~0 10)} assume !(0 == ~cond); {110161#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:56,251 INFO L290 TraceCheckUtils]: 94: Hoare triple {110161#(<= ~counter~0 10)} assume true; {110161#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:56,251 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {110161#(<= ~counter~0 10)} {110161#(<= ~counter~0 10)} #98#return; {110161#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:56,251 INFO L290 TraceCheckUtils]: 96: Hoare triple {110161#(<= ~counter~0 10)} assume !(~r~0 < 0); {110161#(<= ~counter~0 10)} is VALID [2022-04-28 06:07:56,252 INFO L290 TraceCheckUtils]: 97: Hoare triple {110161#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110186#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:56,252 INFO L290 TraceCheckUtils]: 98: Hoare triple {110186#(<= ~counter~0 11)} assume !!(#t~post6 < 50);havoc #t~post6; {110186#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:56,253 INFO L272 TraceCheckUtils]: 99: Hoare triple {110186#(<= ~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)); {110186#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:56,253 INFO L290 TraceCheckUtils]: 100: Hoare triple {110186#(<= ~counter~0 11)} ~cond := #in~cond; {110186#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:56,253 INFO L290 TraceCheckUtils]: 101: Hoare triple {110186#(<= ~counter~0 11)} assume !(0 == ~cond); {110186#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:56,253 INFO L290 TraceCheckUtils]: 102: Hoare triple {110186#(<= ~counter~0 11)} assume true; {110186#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:56,254 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {110186#(<= ~counter~0 11)} {110186#(<= ~counter~0 11)} #94#return; {110186#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:56,254 INFO L290 TraceCheckUtils]: 104: Hoare triple {110186#(<= ~counter~0 11)} assume !!(0 != ~r~0); {110186#(<= ~counter~0 11)} is VALID [2022-04-28 06:07:56,255 INFO L290 TraceCheckUtils]: 105: Hoare triple {110186#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110211#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:56,255 INFO L290 TraceCheckUtils]: 106: Hoare triple {110211#(<= ~counter~0 12)} assume !!(#t~post7 < 50);havoc #t~post7; {110211#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:56,256 INFO L272 TraceCheckUtils]: 107: Hoare triple {110211#(<= ~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)); {110211#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:56,256 INFO L290 TraceCheckUtils]: 108: Hoare triple {110211#(<= ~counter~0 12)} ~cond := #in~cond; {110211#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:56,256 INFO L290 TraceCheckUtils]: 109: Hoare triple {110211#(<= ~counter~0 12)} assume !(0 == ~cond); {110211#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:56,256 INFO L290 TraceCheckUtils]: 110: Hoare triple {110211#(<= ~counter~0 12)} assume true; {110211#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:56,257 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {110211#(<= ~counter~0 12)} {110211#(<= ~counter~0 12)} #96#return; {110211#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:56,257 INFO L290 TraceCheckUtils]: 112: Hoare triple {110211#(<= ~counter~0 12)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110211#(<= ~counter~0 12)} is VALID [2022-04-28 06:07:56,258 INFO L290 TraceCheckUtils]: 113: Hoare triple {110211#(<= ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110236#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:56,258 INFO L290 TraceCheckUtils]: 114: Hoare triple {110236#(<= ~counter~0 13)} assume !!(#t~post7 < 50);havoc #t~post7; {110236#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:56,259 INFO L272 TraceCheckUtils]: 115: Hoare triple {110236#(<= ~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)); {110236#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:56,259 INFO L290 TraceCheckUtils]: 116: Hoare triple {110236#(<= ~counter~0 13)} ~cond := #in~cond; {110236#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:56,259 INFO L290 TraceCheckUtils]: 117: Hoare triple {110236#(<= ~counter~0 13)} assume !(0 == ~cond); {110236#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:56,259 INFO L290 TraceCheckUtils]: 118: Hoare triple {110236#(<= ~counter~0 13)} assume true; {110236#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:56,260 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {110236#(<= ~counter~0 13)} {110236#(<= ~counter~0 13)} #96#return; {110236#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:56,260 INFO L290 TraceCheckUtils]: 120: Hoare triple {110236#(<= ~counter~0 13)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110236#(<= ~counter~0 13)} is VALID [2022-04-28 06:07:56,260 INFO L290 TraceCheckUtils]: 121: Hoare triple {110236#(<= ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110261#(<= |main_#t~post7| 13)} is VALID [2022-04-28 06:07:56,261 INFO L290 TraceCheckUtils]: 122: Hoare triple {110261#(<= |main_#t~post7| 13)} assume !(#t~post7 < 50);havoc #t~post7; {109880#false} is VALID [2022-04-28 06:07:56,261 INFO L290 TraceCheckUtils]: 123: Hoare triple {109880#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {109880#false} is VALID [2022-04-28 06:07:56,261 INFO L290 TraceCheckUtils]: 124: Hoare triple {109880#false} assume !(#t~post8 < 50);havoc #t~post8; {109880#false} is VALID [2022-04-28 06:07:56,261 INFO L290 TraceCheckUtils]: 125: Hoare triple {109880#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {109880#false} is VALID [2022-04-28 06:07:56,261 INFO L290 TraceCheckUtils]: 126: Hoare triple {109880#false} assume !(#t~post6 < 50);havoc #t~post6; {109880#false} is VALID [2022-04-28 06:07:56,261 INFO L272 TraceCheckUtils]: 127: Hoare triple {109880#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)); {109880#false} is VALID [2022-04-28 06:07:56,261 INFO L290 TraceCheckUtils]: 128: Hoare triple {109880#false} ~cond := #in~cond; {109880#false} is VALID [2022-04-28 06:07:56,261 INFO L290 TraceCheckUtils]: 129: Hoare triple {109880#false} assume 0 == ~cond; {109880#false} is VALID [2022-04-28 06:07:56,261 INFO L290 TraceCheckUtils]: 130: Hoare triple {109880#false} assume !false; {109880#false} is VALID [2022-04-28 06:07:56,261 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-28 06:07:56,262 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:07:56,891 INFO L290 TraceCheckUtils]: 130: Hoare triple {109880#false} assume !false; {109880#false} is VALID [2022-04-28 06:07:56,891 INFO L290 TraceCheckUtils]: 129: Hoare triple {109880#false} assume 0 == ~cond; {109880#false} is VALID [2022-04-28 06:07:56,891 INFO L290 TraceCheckUtils]: 128: Hoare triple {109880#false} ~cond := #in~cond; {109880#false} is VALID [2022-04-28 06:07:56,891 INFO L272 TraceCheckUtils]: 127: Hoare triple {109880#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)); {109880#false} is VALID [2022-04-28 06:07:56,891 INFO L290 TraceCheckUtils]: 126: Hoare triple {109880#false} assume !(#t~post6 < 50);havoc #t~post6; {109880#false} is VALID [2022-04-28 06:07:56,891 INFO L290 TraceCheckUtils]: 125: Hoare triple {109880#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {109880#false} is VALID [2022-04-28 06:07:56,891 INFO L290 TraceCheckUtils]: 124: Hoare triple {109880#false} assume !(#t~post8 < 50);havoc #t~post8; {109880#false} is VALID [2022-04-28 06:07:56,891 INFO L290 TraceCheckUtils]: 123: Hoare triple {109880#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {109880#false} is VALID [2022-04-28 06:07:56,891 INFO L290 TraceCheckUtils]: 122: Hoare triple {110313#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {109880#false} is VALID [2022-04-28 06:07:56,892 INFO L290 TraceCheckUtils]: 121: Hoare triple {110317#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110313#(< |main_#t~post7| 50)} is VALID [2022-04-28 06:07:56,892 INFO L290 TraceCheckUtils]: 120: Hoare triple {110317#(< ~counter~0 50)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110317#(< ~counter~0 50)} is VALID [2022-04-28 06:07:56,892 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {109879#true} {110317#(< ~counter~0 50)} #96#return; {110317#(< ~counter~0 50)} is VALID [2022-04-28 06:07:56,893 INFO L290 TraceCheckUtils]: 118: Hoare triple {109879#true} assume true; {109879#true} is VALID [2022-04-28 06:07:56,893 INFO L290 TraceCheckUtils]: 117: Hoare triple {109879#true} assume !(0 == ~cond); {109879#true} is VALID [2022-04-28 06:07:56,893 INFO L290 TraceCheckUtils]: 116: Hoare triple {109879#true} ~cond := #in~cond; {109879#true} is VALID [2022-04-28 06:07:56,893 INFO L272 TraceCheckUtils]: 115: Hoare triple {110317#(< ~counter~0 50)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {109879#true} is VALID [2022-04-28 06:07:56,893 INFO L290 TraceCheckUtils]: 114: Hoare triple {110317#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {110317#(< ~counter~0 50)} is VALID [2022-04-28 06:07:56,895 INFO L290 TraceCheckUtils]: 113: Hoare triple {110342#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110317#(< ~counter~0 50)} is VALID [2022-04-28 06:07:56,895 INFO L290 TraceCheckUtils]: 112: Hoare triple {110342#(< ~counter~0 49)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110342#(< ~counter~0 49)} is VALID [2022-04-28 06:07:56,896 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {109879#true} {110342#(< ~counter~0 49)} #96#return; {110342#(< ~counter~0 49)} is VALID [2022-04-28 06:07:56,896 INFO L290 TraceCheckUtils]: 110: Hoare triple {109879#true} assume true; {109879#true} is VALID [2022-04-28 06:07:56,896 INFO L290 TraceCheckUtils]: 109: Hoare triple {109879#true} assume !(0 == ~cond); {109879#true} is VALID [2022-04-28 06:07:56,896 INFO L290 TraceCheckUtils]: 108: Hoare triple {109879#true} ~cond := #in~cond; {109879#true} is VALID [2022-04-28 06:07:56,896 INFO L272 TraceCheckUtils]: 107: Hoare triple {110342#(< ~counter~0 49)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {109879#true} is VALID [2022-04-28 06:07:56,896 INFO L290 TraceCheckUtils]: 106: Hoare triple {110342#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {110342#(< ~counter~0 49)} is VALID [2022-04-28 06:07:56,897 INFO L290 TraceCheckUtils]: 105: Hoare triple {110367#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110342#(< ~counter~0 49)} is VALID [2022-04-28 06:07:56,897 INFO L290 TraceCheckUtils]: 104: Hoare triple {110367#(< ~counter~0 48)} assume !!(0 != ~r~0); {110367#(< ~counter~0 48)} is VALID [2022-04-28 06:07:56,898 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {109879#true} {110367#(< ~counter~0 48)} #94#return; {110367#(< ~counter~0 48)} is VALID [2022-04-28 06:07:56,898 INFO L290 TraceCheckUtils]: 102: Hoare triple {109879#true} assume true; {109879#true} is VALID [2022-04-28 06:07:56,898 INFO L290 TraceCheckUtils]: 101: Hoare triple {109879#true} assume !(0 == ~cond); {109879#true} is VALID [2022-04-28 06:07:56,898 INFO L290 TraceCheckUtils]: 100: Hoare triple {109879#true} ~cond := #in~cond; {109879#true} is VALID [2022-04-28 06:07:56,898 INFO L272 TraceCheckUtils]: 99: Hoare triple {110367#(< ~counter~0 48)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {109879#true} is VALID [2022-04-28 06:07:56,898 INFO L290 TraceCheckUtils]: 98: Hoare triple {110367#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {110367#(< ~counter~0 48)} is VALID [2022-04-28 06:07:56,899 INFO L290 TraceCheckUtils]: 97: Hoare triple {110392#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110367#(< ~counter~0 48)} is VALID [2022-04-28 06:07:56,899 INFO L290 TraceCheckUtils]: 96: Hoare triple {110392#(< ~counter~0 47)} assume !(~r~0 < 0); {110392#(< ~counter~0 47)} is VALID [2022-04-28 06:07:56,900 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {109879#true} {110392#(< ~counter~0 47)} #98#return; {110392#(< ~counter~0 47)} is VALID [2022-04-28 06:07:56,900 INFO L290 TraceCheckUtils]: 94: Hoare triple {109879#true} assume true; {109879#true} is VALID [2022-04-28 06:07:56,900 INFO L290 TraceCheckUtils]: 93: Hoare triple {109879#true} assume !(0 == ~cond); {109879#true} is VALID [2022-04-28 06:07:56,900 INFO L290 TraceCheckUtils]: 92: Hoare triple {109879#true} ~cond := #in~cond; {109879#true} is VALID [2022-04-28 06:07:56,900 INFO L272 TraceCheckUtils]: 91: Hoare triple {110392#(< ~counter~0 47)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {109879#true} is VALID [2022-04-28 06:07:56,900 INFO L290 TraceCheckUtils]: 90: Hoare triple {110392#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {110392#(< ~counter~0 47)} is VALID [2022-04-28 06:07:56,901 INFO L290 TraceCheckUtils]: 89: Hoare triple {110417#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110392#(< ~counter~0 47)} is VALID [2022-04-28 06:07:56,901 INFO L290 TraceCheckUtils]: 88: Hoare triple {110417#(< ~counter~0 46)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {110417#(< ~counter~0 46)} is VALID [2022-04-28 06:07:56,902 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {109879#true} {110417#(< ~counter~0 46)} #98#return; {110417#(< ~counter~0 46)} is VALID [2022-04-28 06:07:56,902 INFO L290 TraceCheckUtils]: 86: Hoare triple {109879#true} assume true; {109879#true} is VALID [2022-04-28 06:07:56,902 INFO L290 TraceCheckUtils]: 85: Hoare triple {109879#true} assume !(0 == ~cond); {109879#true} is VALID [2022-04-28 06:07:56,902 INFO L290 TraceCheckUtils]: 84: Hoare triple {109879#true} ~cond := #in~cond; {109879#true} is VALID [2022-04-28 06:07:56,902 INFO L272 TraceCheckUtils]: 83: Hoare triple {110417#(< ~counter~0 46)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {109879#true} is VALID [2022-04-28 06:07:56,902 INFO L290 TraceCheckUtils]: 82: Hoare triple {110417#(< ~counter~0 46)} assume !!(#t~post8 < 50);havoc #t~post8; {110417#(< ~counter~0 46)} is VALID [2022-04-28 06:07:56,903 INFO L290 TraceCheckUtils]: 81: Hoare triple {110442#(< ~counter~0 45)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110417#(< ~counter~0 46)} is VALID [2022-04-28 06:07:56,903 INFO L290 TraceCheckUtils]: 80: Hoare triple {110442#(< ~counter~0 45)} assume !(~r~0 > 0); {110442#(< ~counter~0 45)} is VALID [2022-04-28 06:07:56,904 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {109879#true} {110442#(< ~counter~0 45)} #96#return; {110442#(< ~counter~0 45)} is VALID [2022-04-28 06:07:56,904 INFO L290 TraceCheckUtils]: 78: Hoare triple {109879#true} assume true; {109879#true} is VALID [2022-04-28 06:07:56,904 INFO L290 TraceCheckUtils]: 77: Hoare triple {109879#true} assume !(0 == ~cond); {109879#true} is VALID [2022-04-28 06:07:56,904 INFO L290 TraceCheckUtils]: 76: Hoare triple {109879#true} ~cond := #in~cond; {109879#true} is VALID [2022-04-28 06:07:56,904 INFO L272 TraceCheckUtils]: 75: Hoare triple {110442#(< ~counter~0 45)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {109879#true} is VALID [2022-04-28 06:07:56,904 INFO L290 TraceCheckUtils]: 74: Hoare triple {110442#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {110442#(< ~counter~0 45)} is VALID [2022-04-28 06:07:56,905 INFO L290 TraceCheckUtils]: 73: Hoare triple {110467#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110442#(< ~counter~0 45)} is VALID [2022-04-28 06:07:56,905 INFO L290 TraceCheckUtils]: 72: Hoare triple {110467#(< ~counter~0 44)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110467#(< ~counter~0 44)} is VALID [2022-04-28 06:07:56,906 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {109879#true} {110467#(< ~counter~0 44)} #96#return; {110467#(< ~counter~0 44)} is VALID [2022-04-28 06:07:56,906 INFO L290 TraceCheckUtils]: 70: Hoare triple {109879#true} assume true; {109879#true} is VALID [2022-04-28 06:07:56,906 INFO L290 TraceCheckUtils]: 69: Hoare triple {109879#true} assume !(0 == ~cond); {109879#true} is VALID [2022-04-28 06:07:56,906 INFO L290 TraceCheckUtils]: 68: Hoare triple {109879#true} ~cond := #in~cond; {109879#true} is VALID [2022-04-28 06:07:56,906 INFO L272 TraceCheckUtils]: 67: Hoare triple {110467#(< ~counter~0 44)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {109879#true} is VALID [2022-04-28 06:07:56,906 INFO L290 TraceCheckUtils]: 66: Hoare triple {110467#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {110467#(< ~counter~0 44)} is VALID [2022-04-28 06:07:56,907 INFO L290 TraceCheckUtils]: 65: Hoare triple {110492#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110467#(< ~counter~0 44)} is VALID [2022-04-28 06:07:56,907 INFO L290 TraceCheckUtils]: 64: Hoare triple {110492#(< ~counter~0 43)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {110492#(< ~counter~0 43)} is VALID [2022-04-28 06:07:56,908 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {109879#true} {110492#(< ~counter~0 43)} #96#return; {110492#(< ~counter~0 43)} is VALID [2022-04-28 06:07:56,908 INFO L290 TraceCheckUtils]: 62: Hoare triple {109879#true} assume true; {109879#true} is VALID [2022-04-28 06:07:56,908 INFO L290 TraceCheckUtils]: 61: Hoare triple {109879#true} assume !(0 == ~cond); {109879#true} is VALID [2022-04-28 06:07:56,908 INFO L290 TraceCheckUtils]: 60: Hoare triple {109879#true} ~cond := #in~cond; {109879#true} is VALID [2022-04-28 06:07:56,908 INFO L272 TraceCheckUtils]: 59: Hoare triple {110492#(< ~counter~0 43)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {109879#true} is VALID [2022-04-28 06:07:56,908 INFO L290 TraceCheckUtils]: 58: Hoare triple {110492#(< ~counter~0 43)} assume !!(#t~post7 < 50);havoc #t~post7; {110492#(< ~counter~0 43)} is VALID [2022-04-28 06:07:56,909 INFO L290 TraceCheckUtils]: 57: Hoare triple {110517#(< ~counter~0 42)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110492#(< ~counter~0 43)} is VALID [2022-04-28 06:07:56,910 INFO L290 TraceCheckUtils]: 56: Hoare triple {110517#(< ~counter~0 42)} assume !!(0 != ~r~0); {110517#(< ~counter~0 42)} is VALID [2022-04-28 06:07:56,910 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {109879#true} {110517#(< ~counter~0 42)} #94#return; {110517#(< ~counter~0 42)} is VALID [2022-04-28 06:07:56,910 INFO L290 TraceCheckUtils]: 54: Hoare triple {109879#true} assume true; {109879#true} is VALID [2022-04-28 06:07:56,910 INFO L290 TraceCheckUtils]: 53: Hoare triple {109879#true} assume !(0 == ~cond); {109879#true} is VALID [2022-04-28 06:07:56,910 INFO L290 TraceCheckUtils]: 52: Hoare triple {109879#true} ~cond := #in~cond; {109879#true} is VALID [2022-04-28 06:07:56,910 INFO L272 TraceCheckUtils]: 51: Hoare triple {110517#(< ~counter~0 42)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {109879#true} is VALID [2022-04-28 06:07:56,910 INFO L290 TraceCheckUtils]: 50: Hoare triple {110517#(< ~counter~0 42)} assume !!(#t~post6 < 50);havoc #t~post6; {110517#(< ~counter~0 42)} is VALID [2022-04-28 06:07:56,911 INFO L290 TraceCheckUtils]: 49: Hoare triple {110542#(< ~counter~0 41)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110517#(< ~counter~0 42)} is VALID [2022-04-28 06:07:56,912 INFO L290 TraceCheckUtils]: 48: Hoare triple {110542#(< ~counter~0 41)} assume !(~r~0 < 0); {110542#(< ~counter~0 41)} is VALID [2022-04-28 06:07:56,912 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {109879#true} {110542#(< ~counter~0 41)} #98#return; {110542#(< ~counter~0 41)} is VALID [2022-04-28 06:07:56,912 INFO L290 TraceCheckUtils]: 46: Hoare triple {109879#true} assume true; {109879#true} is VALID [2022-04-28 06:07:56,912 INFO L290 TraceCheckUtils]: 45: Hoare triple {109879#true} assume !(0 == ~cond); {109879#true} is VALID [2022-04-28 06:07:56,912 INFO L290 TraceCheckUtils]: 44: Hoare triple {109879#true} ~cond := #in~cond; {109879#true} is VALID [2022-04-28 06:07:56,912 INFO L272 TraceCheckUtils]: 43: Hoare triple {110542#(< ~counter~0 41)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {109879#true} is VALID [2022-04-28 06:07:56,912 INFO L290 TraceCheckUtils]: 42: Hoare triple {110542#(< ~counter~0 41)} assume !!(#t~post8 < 50);havoc #t~post8; {110542#(< ~counter~0 41)} is VALID [2022-04-28 06:07:56,913 INFO L290 TraceCheckUtils]: 41: Hoare triple {110567#(< ~counter~0 40)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110542#(< ~counter~0 41)} is VALID [2022-04-28 06:07:56,914 INFO L290 TraceCheckUtils]: 40: Hoare triple {110567#(< ~counter~0 40)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {110567#(< ~counter~0 40)} is VALID [2022-04-28 06:07:56,914 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {109879#true} {110567#(< ~counter~0 40)} #98#return; {110567#(< ~counter~0 40)} is VALID [2022-04-28 06:07:56,914 INFO L290 TraceCheckUtils]: 38: Hoare triple {109879#true} assume true; {109879#true} is VALID [2022-04-28 06:07:56,914 INFO L290 TraceCheckUtils]: 37: Hoare triple {109879#true} assume !(0 == ~cond); {109879#true} is VALID [2022-04-28 06:07:56,914 INFO L290 TraceCheckUtils]: 36: Hoare triple {109879#true} ~cond := #in~cond; {109879#true} is VALID [2022-04-28 06:07:56,914 INFO L272 TraceCheckUtils]: 35: Hoare triple {110567#(< ~counter~0 40)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {109879#true} is VALID [2022-04-28 06:07:56,915 INFO L290 TraceCheckUtils]: 34: Hoare triple {110567#(< ~counter~0 40)} assume !!(#t~post8 < 50);havoc #t~post8; {110567#(< ~counter~0 40)} is VALID [2022-04-28 06:07:56,915 INFO L290 TraceCheckUtils]: 33: Hoare triple {110592#(< ~counter~0 39)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110567#(< ~counter~0 40)} is VALID [2022-04-28 06:07:56,916 INFO L290 TraceCheckUtils]: 32: Hoare triple {110592#(< ~counter~0 39)} assume !(~r~0 > 0); {110592#(< ~counter~0 39)} is VALID [2022-04-28 06:07:56,916 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {109879#true} {110592#(< ~counter~0 39)} #96#return; {110592#(< ~counter~0 39)} is VALID [2022-04-28 06:07:56,916 INFO L290 TraceCheckUtils]: 30: Hoare triple {109879#true} assume true; {109879#true} is VALID [2022-04-28 06:07:56,916 INFO L290 TraceCheckUtils]: 29: Hoare triple {109879#true} assume !(0 == ~cond); {109879#true} is VALID [2022-04-28 06:07:56,916 INFO L290 TraceCheckUtils]: 28: Hoare triple {109879#true} ~cond := #in~cond; {109879#true} is VALID [2022-04-28 06:07:56,916 INFO L272 TraceCheckUtils]: 27: Hoare triple {110592#(< ~counter~0 39)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {109879#true} is VALID [2022-04-28 06:07:56,917 INFO L290 TraceCheckUtils]: 26: Hoare triple {110592#(< ~counter~0 39)} assume !!(#t~post7 < 50);havoc #t~post7; {110592#(< ~counter~0 39)} is VALID [2022-04-28 06:07:56,917 INFO L290 TraceCheckUtils]: 25: Hoare triple {110617#(< ~counter~0 38)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110592#(< ~counter~0 39)} is VALID [2022-04-28 06:07:56,918 INFO L290 TraceCheckUtils]: 24: Hoare triple {110617#(< ~counter~0 38)} assume !!(0 != ~r~0); {110617#(< ~counter~0 38)} is VALID [2022-04-28 06:07:56,918 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {109879#true} {110617#(< ~counter~0 38)} #94#return; {110617#(< ~counter~0 38)} is VALID [2022-04-28 06:07:56,918 INFO L290 TraceCheckUtils]: 22: Hoare triple {109879#true} assume true; {109879#true} is VALID [2022-04-28 06:07:56,918 INFO L290 TraceCheckUtils]: 21: Hoare triple {109879#true} assume !(0 == ~cond); {109879#true} is VALID [2022-04-28 06:07:56,918 INFO L290 TraceCheckUtils]: 20: Hoare triple {109879#true} ~cond := #in~cond; {109879#true} is VALID [2022-04-28 06:07:56,918 INFO L272 TraceCheckUtils]: 19: Hoare triple {110617#(< ~counter~0 38)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {109879#true} is VALID [2022-04-28 06:07:56,919 INFO L290 TraceCheckUtils]: 18: Hoare triple {110617#(< ~counter~0 38)} assume !!(#t~post6 < 50);havoc #t~post6; {110617#(< ~counter~0 38)} is VALID [2022-04-28 06:07:56,919 INFO L290 TraceCheckUtils]: 17: Hoare triple {110642#(< ~counter~0 37)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110617#(< ~counter~0 38)} is VALID [2022-04-28 06:07:56,920 INFO L290 TraceCheckUtils]: 16: Hoare triple {110642#(< ~counter~0 37)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {110642#(< ~counter~0 37)} is VALID [2022-04-28 06:07:56,920 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {109879#true} {110642#(< ~counter~0 37)} #92#return; {110642#(< ~counter~0 37)} is VALID [2022-04-28 06:07:56,920 INFO L290 TraceCheckUtils]: 14: Hoare triple {109879#true} assume true; {109879#true} is VALID [2022-04-28 06:07:56,920 INFO L290 TraceCheckUtils]: 13: Hoare triple {109879#true} assume !(0 == ~cond); {109879#true} is VALID [2022-04-28 06:07:56,920 INFO L290 TraceCheckUtils]: 12: Hoare triple {109879#true} ~cond := #in~cond; {109879#true} is VALID [2022-04-28 06:07:56,920 INFO L272 TraceCheckUtils]: 11: Hoare triple {110642#(< ~counter~0 37)} 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)); {109879#true} is VALID [2022-04-28 06:07:56,921 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {109879#true} {110642#(< ~counter~0 37)} #90#return; {110642#(< ~counter~0 37)} is VALID [2022-04-28 06:07:56,921 INFO L290 TraceCheckUtils]: 9: Hoare triple {109879#true} assume true; {109879#true} is VALID [2022-04-28 06:07:56,921 INFO L290 TraceCheckUtils]: 8: Hoare triple {109879#true} assume !(0 == ~cond); {109879#true} is VALID [2022-04-28 06:07:56,921 INFO L290 TraceCheckUtils]: 7: Hoare triple {109879#true} ~cond := #in~cond; {109879#true} is VALID [2022-04-28 06:07:56,921 INFO L272 TraceCheckUtils]: 6: Hoare triple {110642#(< ~counter~0 37)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {109879#true} is VALID [2022-04-28 06:07:56,921 INFO L290 TraceCheckUtils]: 5: Hoare triple {110642#(< ~counter~0 37)} 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; {110642#(< ~counter~0 37)} is VALID [2022-04-28 06:07:56,921 INFO L272 TraceCheckUtils]: 4: Hoare triple {110642#(< ~counter~0 37)} call #t~ret9 := main(); {110642#(< ~counter~0 37)} is VALID [2022-04-28 06:07:56,922 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {110642#(< ~counter~0 37)} {109879#true} #102#return; {110642#(< ~counter~0 37)} is VALID [2022-04-28 06:07:56,922 INFO L290 TraceCheckUtils]: 2: Hoare triple {110642#(< ~counter~0 37)} assume true; {110642#(< ~counter~0 37)} is VALID [2022-04-28 06:07:56,922 INFO L290 TraceCheckUtils]: 1: Hoare triple {109879#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {110642#(< ~counter~0 37)} is VALID [2022-04-28 06:07:56,922 INFO L272 TraceCheckUtils]: 0: Hoare triple {109879#true} call ULTIMATE.init(); {109879#true} is VALID [2022-04-28 06:07:56,923 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-28 06:07:56,923 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:07:56,923 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [915322471] [2022-04-28 06:07:56,923 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:07:56,923 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [102227212] [2022-04-28 06:07:56,923 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [102227212] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:07:56,923 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:07:56,923 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 32 [2022-04-28 06:07:56,923 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:07:56,923 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [21260574] [2022-04-28 06:07:56,923 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [21260574] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:07:56,924 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:07:56,924 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-28 06:07:56,924 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1457922566] [2022-04-28 06:07:56,924 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:07:56,924 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-28 06:07:56,927 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:07:56,927 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-28 06:07:57,036 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-28 06:07:57,037 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-28 06:07:57,037 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:07:57,037 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-28 06:07:57,037 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=440, Invalid=552, Unknown=0, NotChecked=0, Total=992 [2022-04-28 06:07:57,037 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-28 06:08:00,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:08:00,231 INFO L93 Difference]: Finished difference Result 947 states and 1293 transitions. [2022-04-28 06:08:00,231 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-04-28 06:08:00,231 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-28 06:08:00,231 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:08:00,231 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-28 06:08:00,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 296 transitions. [2022-04-28 06:08:00,233 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-28 06:08:00,235 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 296 transitions. [2022-04-28 06:08:00,235 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 296 transitions. [2022-04-28 06:08:00,432 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-28 06:08:00,453 INFO L225 Difference]: With dead ends: 947 [2022-04-28 06:08:00,453 INFO L226 Difference]: Without dead ends: 746 [2022-04-28 06:08:00,454 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 273 GetRequests, 231 SyntacticMatches, 0 SemanticMatches, 42 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 106 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=800, Invalid=1092, Unknown=0, NotChecked=0, Total=1892 [2022-04-28 06:08:00,454 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 192 mSDsluCounter, 256 mSDsCounter, 0 mSdLazyCounter, 242 mSolverCounterSat, 162 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 192 SdHoareTripleChecker+Valid, 325 SdHoareTripleChecker+Invalid, 404 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 162 IncrementalHoareTripleChecker+Valid, 242 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 06:08:00,455 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [192 Valid, 325 Invalid, 404 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [162 Valid, 242 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 06:08:00,455 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 746 states. [2022-04-28 06:08:01,952 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 746 to 746. [2022-04-28 06:08:01,952 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:08:01,953 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-28 06:08:01,954 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-28 06:08:01,954 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-28 06:08:01,971 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:08:01,971 INFO L93 Difference]: Finished difference Result 746 states and 982 transitions. [2022-04-28 06:08:01,971 INFO L276 IsEmpty]: Start isEmpty. Operand 746 states and 982 transitions. [2022-04-28 06:08:01,971 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:08:01,971 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:08:01,972 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-28 06:08:01,972 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-28 06:08:01,989 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:08:01,989 INFO L93 Difference]: Finished difference Result 746 states and 982 transitions. [2022-04-28 06:08:01,989 INFO L276 IsEmpty]: Start isEmpty. Operand 746 states and 982 transitions. [2022-04-28 06:08:01,990 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:08:01,990 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:08:01,990 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:08:01,990 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:08:01,990 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-28 06:08:02,013 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 746 states to 746 states and 982 transitions. [2022-04-28 06:08:02,013 INFO L78 Accepts]: Start accepts. Automaton has 746 states and 982 transitions. Word has length 131 [2022-04-28 06:08:02,013 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:08:02,014 INFO L495 AbstractCegarLoop]: Abstraction has 746 states and 982 transitions. [2022-04-28 06:08:02,014 INFO L496 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-28 06:08:02,014 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 746 states and 982 transitions. [2022-04-28 06:08:17,643 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 982 edges. 980 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 06:08:17,644 INFO L276 IsEmpty]: Start isEmpty. Operand 746 states and 982 transitions. [2022-04-28 06:08:17,645 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 136 [2022-04-28 06:08:17,645 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:08:17,645 INFO L195 NwaCegarLoop]: 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-28 06:08:17,659 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (45)] Forceful destruction successful, exit code 0 [2022-04-28 06:08:17,845 WARN L477 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-28 06:08:17,845 INFO L420 AbstractCegarLoop]: === Iteration 45 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:08:17,845 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:08:17,846 INFO L85 PathProgramCache]: Analyzing trace with hash 1252937077, now seen corresponding path program 11 times [2022-04-28 06:08:17,846 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:08:17,846 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [333079532] [2022-04-28 06:08:17,846 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:08:17,846 INFO L85 PathProgramCache]: Analyzing trace with hash 1252937077, now seen corresponding path program 12 times [2022-04-28 06:08:17,846 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:08:17,846 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1766757841] [2022-04-28 06:08:17,846 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:08:17,846 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:08:17,863 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:08:17,863 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [295029080] [2022-04-28 06:08:17,863 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 06:08:17,863 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:08:17,864 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:08:17,869 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-28 06:08:17,873 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-28 06:08:17,976 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 06:08:17,977 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:08:17,978 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-28 06:08:17,996 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:08:17,997 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:08:18,763 INFO L272 TraceCheckUtils]: 0: Hoare triple {115598#true} call ULTIMATE.init(); {115598#true} is VALID [2022-04-28 06:08:18,763 INFO L290 TraceCheckUtils]: 1: Hoare triple {115598#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {115598#true} is VALID [2022-04-28 06:08:18,763 INFO L290 TraceCheckUtils]: 2: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,763 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115598#true} {115598#true} #102#return; {115598#true} is VALID [2022-04-28 06:08:18,763 INFO L272 TraceCheckUtils]: 4: Hoare triple {115598#true} call #t~ret9 := main(); {115598#true} is VALID [2022-04-28 06:08:18,763 INFO L290 TraceCheckUtils]: 5: Hoare triple {115598#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; {115598#true} is VALID [2022-04-28 06:08:18,764 INFO L272 TraceCheckUtils]: 6: Hoare triple {115598#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {115598#true} is VALID [2022-04-28 06:08:18,764 INFO L290 TraceCheckUtils]: 7: Hoare triple {115598#true} ~cond := #in~cond; {115598#true} is VALID [2022-04-28 06:08:18,764 INFO L290 TraceCheckUtils]: 8: Hoare triple {115598#true} assume !(0 == ~cond); {115598#true} is VALID [2022-04-28 06:08:18,764 INFO L290 TraceCheckUtils]: 9: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,764 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {115598#true} {115598#true} #90#return; {115598#true} is VALID [2022-04-28 06:08:18,779 INFO L272 TraceCheckUtils]: 11: Hoare triple {115598#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)); {115598#true} is VALID [2022-04-28 06:08:18,779 INFO L290 TraceCheckUtils]: 12: Hoare triple {115598#true} ~cond := #in~cond; {115598#true} is VALID [2022-04-28 06:08:18,779 INFO L290 TraceCheckUtils]: 13: Hoare triple {115598#true} assume !(0 == ~cond); {115598#true} is VALID [2022-04-28 06:08:18,779 INFO L290 TraceCheckUtils]: 14: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,779 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {115598#true} {115598#true} #92#return; {115598#true} is VALID [2022-04-28 06:08:18,779 INFO L290 TraceCheckUtils]: 16: Hoare triple {115598#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {115598#true} is VALID [2022-04-28 06:08:18,779 INFO L290 TraceCheckUtils]: 17: Hoare triple {115598#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115598#true} is VALID [2022-04-28 06:08:18,779 INFO L290 TraceCheckUtils]: 18: Hoare triple {115598#true} assume !!(#t~post6 < 50);havoc #t~post6; {115598#true} is VALID [2022-04-28 06:08:18,779 INFO L272 TraceCheckUtils]: 19: Hoare triple {115598#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)); {115598#true} is VALID [2022-04-28 06:08:18,779 INFO L290 TraceCheckUtils]: 20: Hoare triple {115598#true} ~cond := #in~cond; {115598#true} is VALID [2022-04-28 06:08:18,779 INFO L290 TraceCheckUtils]: 21: Hoare triple {115598#true} assume !(0 == ~cond); {115598#true} is VALID [2022-04-28 06:08:18,780 INFO L290 TraceCheckUtils]: 22: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,780 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {115598#true} {115598#true} #94#return; {115598#true} is VALID [2022-04-28 06:08:18,780 INFO L290 TraceCheckUtils]: 24: Hoare triple {115598#true} assume !!(0 != ~r~0); {115598#true} is VALID [2022-04-28 06:08:18,780 INFO L290 TraceCheckUtils]: 25: Hoare triple {115598#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115598#true} is VALID [2022-04-28 06:08:18,780 INFO L290 TraceCheckUtils]: 26: Hoare triple {115598#true} assume !!(#t~post7 < 50);havoc #t~post7; {115598#true} is VALID [2022-04-28 06:08:18,780 INFO L272 TraceCheckUtils]: 27: Hoare triple {115598#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)); {115598#true} is VALID [2022-04-28 06:08:18,780 INFO L290 TraceCheckUtils]: 28: Hoare triple {115598#true} ~cond := #in~cond; {115598#true} is VALID [2022-04-28 06:08:18,780 INFO L290 TraceCheckUtils]: 29: Hoare triple {115598#true} assume !(0 == ~cond); {115598#true} is VALID [2022-04-28 06:08:18,780 INFO L290 TraceCheckUtils]: 30: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,780 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {115598#true} {115598#true} #96#return; {115598#true} is VALID [2022-04-28 06:08:18,780 INFO L290 TraceCheckUtils]: 32: Hoare triple {115598#true} assume !(~r~0 > 0); {115598#true} is VALID [2022-04-28 06:08:18,780 INFO L290 TraceCheckUtils]: 33: Hoare triple {115598#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115598#true} is VALID [2022-04-28 06:08:18,780 INFO L290 TraceCheckUtils]: 34: Hoare triple {115598#true} assume !!(#t~post8 < 50);havoc #t~post8; {115598#true} is VALID [2022-04-28 06:08:18,780 INFO L272 TraceCheckUtils]: 35: Hoare triple {115598#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)); {115598#true} is VALID [2022-04-28 06:08:18,780 INFO L290 TraceCheckUtils]: 36: Hoare triple {115598#true} ~cond := #in~cond; {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L290 TraceCheckUtils]: 37: Hoare triple {115598#true} assume !(0 == ~cond); {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L290 TraceCheckUtils]: 38: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {115598#true} {115598#true} #98#return; {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L290 TraceCheckUtils]: 40: Hoare triple {115598#true} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L290 TraceCheckUtils]: 41: Hoare triple {115598#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L290 TraceCheckUtils]: 42: Hoare triple {115598#true} assume !!(#t~post8 < 50);havoc #t~post8; {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L272 TraceCheckUtils]: 43: Hoare triple {115598#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)); {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L290 TraceCheckUtils]: 44: Hoare triple {115598#true} ~cond := #in~cond; {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L290 TraceCheckUtils]: 45: Hoare triple {115598#true} assume !(0 == ~cond); {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L290 TraceCheckUtils]: 46: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {115598#true} {115598#true} #98#return; {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L290 TraceCheckUtils]: 48: Hoare triple {115598#true} assume !(~r~0 < 0); {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L290 TraceCheckUtils]: 49: Hoare triple {115598#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L290 TraceCheckUtils]: 50: Hoare triple {115598#true} assume !!(#t~post6 < 50);havoc #t~post6; {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L272 TraceCheckUtils]: 51: Hoare triple {115598#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)); {115598#true} is VALID [2022-04-28 06:08:18,781 INFO L290 TraceCheckUtils]: 52: Hoare triple {115598#true} ~cond := #in~cond; {115598#true} is VALID [2022-04-28 06:08:18,782 INFO L290 TraceCheckUtils]: 53: Hoare triple {115598#true} assume !(0 == ~cond); {115598#true} is VALID [2022-04-28 06:08:18,782 INFO L290 TraceCheckUtils]: 54: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,782 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {115598#true} {115598#true} #94#return; {115598#true} is VALID [2022-04-28 06:08:18,782 INFO L290 TraceCheckUtils]: 56: Hoare triple {115598#true} assume !!(0 != ~r~0); {115598#true} is VALID [2022-04-28 06:08:18,782 INFO L290 TraceCheckUtils]: 57: Hoare triple {115598#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115598#true} is VALID [2022-04-28 06:08:18,782 INFO L290 TraceCheckUtils]: 58: Hoare triple {115598#true} assume !!(#t~post7 < 50);havoc #t~post7; {115598#true} is VALID [2022-04-28 06:08:18,782 INFO L272 TraceCheckUtils]: 59: Hoare triple {115598#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)); {115598#true} is VALID [2022-04-28 06:08:18,782 INFO L290 TraceCheckUtils]: 60: Hoare triple {115598#true} ~cond := #in~cond; {115598#true} is VALID [2022-04-28 06:08:18,782 INFO L290 TraceCheckUtils]: 61: Hoare triple {115598#true} assume !(0 == ~cond); {115598#true} is VALID [2022-04-28 06:08:18,782 INFO L290 TraceCheckUtils]: 62: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,782 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {115598#true} {115598#true} #96#return; {115598#true} is VALID [2022-04-28 06:08:18,782 INFO L290 TraceCheckUtils]: 64: Hoare triple {115598#true} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {115598#true} is VALID [2022-04-28 06:08:18,782 INFO L290 TraceCheckUtils]: 65: Hoare triple {115598#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115598#true} is VALID [2022-04-28 06:08:18,782 INFO L290 TraceCheckUtils]: 66: Hoare triple {115598#true} assume !!(#t~post7 < 50);havoc #t~post7; {115598#true} is VALID [2022-04-28 06:08:18,782 INFO L272 TraceCheckUtils]: 67: Hoare triple {115598#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)); {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L290 TraceCheckUtils]: 68: Hoare triple {115598#true} ~cond := #in~cond; {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L290 TraceCheckUtils]: 69: Hoare triple {115598#true} assume !(0 == ~cond); {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L290 TraceCheckUtils]: 70: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {115598#true} {115598#true} #96#return; {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L290 TraceCheckUtils]: 72: Hoare triple {115598#true} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L290 TraceCheckUtils]: 73: Hoare triple {115598#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L290 TraceCheckUtils]: 74: Hoare triple {115598#true} assume !!(#t~post7 < 50);havoc #t~post7; {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L272 TraceCheckUtils]: 75: Hoare triple {115598#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)); {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L290 TraceCheckUtils]: 76: Hoare triple {115598#true} ~cond := #in~cond; {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L290 TraceCheckUtils]: 77: Hoare triple {115598#true} assume !(0 == ~cond); {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L290 TraceCheckUtils]: 78: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {115598#true} {115598#true} #96#return; {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L290 TraceCheckUtils]: 80: Hoare triple {115598#true} assume !(~r~0 > 0); {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L290 TraceCheckUtils]: 81: Hoare triple {115598#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L290 TraceCheckUtils]: 82: Hoare triple {115598#true} assume !!(#t~post8 < 50);havoc #t~post8; {115598#true} is VALID [2022-04-28 06:08:18,783 INFO L272 TraceCheckUtils]: 83: Hoare triple {115598#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)); {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L290 TraceCheckUtils]: 84: Hoare triple {115598#true} ~cond := #in~cond; {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L290 TraceCheckUtils]: 85: Hoare triple {115598#true} assume !(0 == ~cond); {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L290 TraceCheckUtils]: 86: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {115598#true} {115598#true} #98#return; {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L290 TraceCheckUtils]: 88: Hoare triple {115598#true} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L290 TraceCheckUtils]: 89: Hoare triple {115598#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L290 TraceCheckUtils]: 90: Hoare triple {115598#true} assume !!(#t~post8 < 50);havoc #t~post8; {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L272 TraceCheckUtils]: 91: Hoare triple {115598#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)); {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L290 TraceCheckUtils]: 92: Hoare triple {115598#true} ~cond := #in~cond; {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L290 TraceCheckUtils]: 93: Hoare triple {115598#true} assume !(0 == ~cond); {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L290 TraceCheckUtils]: 94: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {115598#true} {115598#true} #98#return; {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L290 TraceCheckUtils]: 96: Hoare triple {115598#true} assume !(~r~0 < 0); {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L290 TraceCheckUtils]: 97: Hoare triple {115598#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L290 TraceCheckUtils]: 98: Hoare triple {115598#true} assume !!(#t~post6 < 50);havoc #t~post6; {115598#true} is VALID [2022-04-28 06:08:18,784 INFO L272 TraceCheckUtils]: 99: Hoare triple {115598#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)); {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L290 TraceCheckUtils]: 100: Hoare triple {115598#true} ~cond := #in~cond; {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L290 TraceCheckUtils]: 101: Hoare triple {115598#true} assume !(0 == ~cond); {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L290 TraceCheckUtils]: 102: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {115598#true} {115598#true} #94#return; {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L290 TraceCheckUtils]: 104: Hoare triple {115598#true} assume !!(0 != ~r~0); {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L290 TraceCheckUtils]: 105: Hoare triple {115598#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L290 TraceCheckUtils]: 106: Hoare triple {115598#true} assume !!(#t~post7 < 50);havoc #t~post7; {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L272 TraceCheckUtils]: 107: Hoare triple {115598#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)); {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L290 TraceCheckUtils]: 108: Hoare triple {115598#true} ~cond := #in~cond; {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L290 TraceCheckUtils]: 109: Hoare triple {115598#true} assume !(0 == ~cond); {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L290 TraceCheckUtils]: 110: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {115598#true} {115598#true} #96#return; {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L290 TraceCheckUtils]: 112: Hoare triple {115598#true} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L290 TraceCheckUtils]: 113: Hoare triple {115598#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L290 TraceCheckUtils]: 114: Hoare triple {115598#true} assume !!(#t~post7 < 50);havoc #t~post7; {115598#true} is VALID [2022-04-28 06:08:18,785 INFO L272 TraceCheckUtils]: 115: Hoare triple {115598#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)); {115598#true} is VALID [2022-04-28 06:08:18,786 INFO L290 TraceCheckUtils]: 116: Hoare triple {115598#true} ~cond := #in~cond; {115598#true} is VALID [2022-04-28 06:08:18,786 INFO L290 TraceCheckUtils]: 117: Hoare triple {115598#true} assume !(0 == ~cond); {115598#true} is VALID [2022-04-28 06:08:18,786 INFO L290 TraceCheckUtils]: 118: Hoare triple {115598#true} assume true; {115598#true} is VALID [2022-04-28 06:08:18,786 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {115598#true} {115598#true} #96#return; {115598#true} is VALID [2022-04-28 06:08:18,786 INFO L290 TraceCheckUtils]: 120: Hoare triple {115598#true} assume !(~r~0 > 0); {115963#(not (< 0 main_~r~0))} is VALID [2022-04-28 06:08:18,786 INFO L290 TraceCheckUtils]: 121: Hoare triple {115963#(not (< 0 main_~r~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115963#(not (< 0 main_~r~0))} is VALID [2022-04-28 06:08:18,787 INFO L290 TraceCheckUtils]: 122: Hoare triple {115963#(not (< 0 main_~r~0))} assume !!(#t~post8 < 50);havoc #t~post8; {115963#(not (< 0 main_~r~0))} is VALID [2022-04-28 06:08:18,787 INFO L272 TraceCheckUtils]: 123: Hoare triple {115963#(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)); {115598#true} is VALID [2022-04-28 06:08:18,787 INFO L290 TraceCheckUtils]: 124: Hoare triple {115598#true} ~cond := #in~cond; {115976#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:08:18,787 INFO L290 TraceCheckUtils]: 125: Hoare triple {115976#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {115980#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:08:18,787 INFO L290 TraceCheckUtils]: 126: Hoare triple {115980#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {115980#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:08:18,788 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {115980#(not (= |__VERIFIER_assert_#in~cond| 0))} {115963#(not (< 0 main_~r~0))} #98#return; {115987#(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-28 06:08:18,791 INFO L290 TraceCheckUtils]: 128: Hoare triple {115987#(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); {115991#(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-28 06:08:18,791 INFO L290 TraceCheckUtils]: 129: Hoare triple {115991#(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; {115991#(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-28 06:08:18,792 INFO L290 TraceCheckUtils]: 130: Hoare triple {115991#(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 < 50);havoc #t~post6; {115991#(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-28 06:08:18,793 INFO L272 TraceCheckUtils]: 131: Hoare triple {115991#(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)); {116001#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:08:18,793 INFO L290 TraceCheckUtils]: 132: Hoare triple {116001#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {116005#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:08:18,794 INFO L290 TraceCheckUtils]: 133: Hoare triple {116005#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {115599#false} is VALID [2022-04-28 06:08:18,794 INFO L290 TraceCheckUtils]: 134: Hoare triple {115599#false} assume !false; {115599#false} is VALID [2022-04-28 06:08:18,794 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-28 06:08:18,794 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:08:21,414 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:08:21,415 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1766757841] [2022-04-28 06:08:21,415 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:08:21,415 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [295029080] [2022-04-28 06:08:21,415 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [295029080] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 06:08:21,415 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 06:08:21,415 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2022-04-28 06:08:21,415 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:08:21,415 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [333079532] [2022-04-28 06:08:21,415 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [333079532] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:08:21,415 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:08:21,415 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 06:08:21,415 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1866379004] [2022-04-28 06:08:21,415 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:08:21,416 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-28 06:08:21,416 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:08:21,416 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-28 06:08:21,469 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:08:21,469 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 06:08:21,469 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:08:21,469 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 06:08:21,469 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=84, Unknown=1, NotChecked=0, Total=110 [2022-04-28 06:08:21,469 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-28 06:08:24,914 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:08:24,915 INFO L93 Difference]: Finished difference Result 802 states and 1061 transitions. [2022-04-28 06:08:24,915 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 06:08:24,915 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-28 06:08:24,915 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:08:24,915 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-28 06:08:24,916 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 79 transitions. [2022-04-28 06:08:24,916 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-28 06:08:24,916 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 79 transitions. [2022-04-28 06:08:24,918 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 79 transitions. [2022-04-28 06:08:25,016 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:08:25,042 INFO L225 Difference]: With dead ends: 802 [2022-04-28 06:08:25,042 INFO L226 Difference]: Without dead ends: 790 [2022-04-28 06:08:25,042 INFO L412 NwaCegarLoop]: 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-28 06:08:25,042 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 28 mSDsluCounter, 213 mSDsCounter, 0 mSdLazyCounter, 155 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 264 SdHoareTripleChecker+Invalid, 164 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 155 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 06:08:25,043 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [31 Valid, 264 Invalid, 164 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 155 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 06:08:25,043 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 790 states. [2022-04-28 06:08:27,594 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 790 to 727. [2022-04-28 06:08:27,595 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:08:27,596 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-28 06:08:27,597 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-28 06:08:27,597 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-28 06:08:27,617 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:08:27,617 INFO L93 Difference]: Finished difference Result 790 states and 1043 transitions. [2022-04-28 06:08:27,617 INFO L276 IsEmpty]: Start isEmpty. Operand 790 states and 1043 transitions. [2022-04-28 06:08:27,618 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:08:27,618 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:08:27,627 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-28 06:08:27,627 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-28 06:08:27,647 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:08:27,648 INFO L93 Difference]: Finished difference Result 790 states and 1043 transitions. [2022-04-28 06:08:27,648 INFO L276 IsEmpty]: Start isEmpty. Operand 790 states and 1043 transitions. [2022-04-28 06:08:27,648 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:08:27,648 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:08:27,649 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:08:27,649 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:08:27,649 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-28 06:08:27,671 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 727 states to 727 states and 945 transitions. [2022-04-28 06:08:27,671 INFO L78 Accepts]: Start accepts. Automaton has 727 states and 945 transitions. Word has length 135 [2022-04-28 06:08:27,671 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:08:27,671 INFO L495 AbstractCegarLoop]: Abstraction has 727 states and 945 transitions. [2022-04-28 06:08:27,672 INFO L496 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-28 06:08:27,672 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 727 states and 945 transitions. [2022-04-28 06:08:49,665 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 945 edges. 940 inductive. 0 not inductive. 5 times theorem prover too weak to decide inductivity. [2022-04-28 06:08:49,665 INFO L276 IsEmpty]: Start isEmpty. Operand 727 states and 945 transitions. [2022-04-28 06:08:49,667 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 136 [2022-04-28 06:08:49,667 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:08:49,667 INFO L195 NwaCegarLoop]: 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-28 06:08:49,677 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-28 06:08:49,867 WARN L477 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-28 06:08:49,867 INFO L420 AbstractCegarLoop]: === Iteration 46 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:08:49,867 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:08:49,868 INFO L85 PathProgramCache]: Analyzing trace with hash 200539575, now seen corresponding path program 13 times [2022-04-28 06:08:49,868 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:08:49,868 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1637762005] [2022-04-28 06:08:49,868 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:08:49,868 INFO L85 PathProgramCache]: Analyzing trace with hash 200539575, now seen corresponding path program 14 times [2022-04-28 06:08:49,868 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:08:49,868 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1674261491] [2022-04-28 06:08:49,868 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:08:49,868 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:08:49,886 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:08:49,886 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1461345800] [2022-04-28 06:08:49,886 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:08:49,886 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:08:49,886 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:08:49,887 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-28 06:08:49,891 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-28 06:08:49,960 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:08:49,960 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:08:49,961 INFO L263 TraceCheckSpWp]: Trace formula consists of 335 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-28 06:08:49,983 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:08:49,985 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:08:50,711 INFO L272 TraceCheckUtils]: 0: Hoare triple {120682#true} call ULTIMATE.init(); {120682#true} is VALID [2022-04-28 06:08:50,712 INFO L290 TraceCheckUtils]: 1: Hoare triple {120682#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,712 INFO L290 TraceCheckUtils]: 2: Hoare triple {120690#(<= ~counter~0 0)} assume true; {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,712 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {120690#(<= ~counter~0 0)} {120682#true} #102#return; {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,713 INFO L272 TraceCheckUtils]: 4: Hoare triple {120690#(<= ~counter~0 0)} call #t~ret9 := main(); {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,713 INFO L290 TraceCheckUtils]: 5: Hoare triple {120690#(<= ~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; {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,713 INFO L272 TraceCheckUtils]: 6: Hoare triple {120690#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,714 INFO L290 TraceCheckUtils]: 7: Hoare triple {120690#(<= ~counter~0 0)} ~cond := #in~cond; {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,714 INFO L290 TraceCheckUtils]: 8: Hoare triple {120690#(<= ~counter~0 0)} assume !(0 == ~cond); {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,714 INFO L290 TraceCheckUtils]: 9: Hoare triple {120690#(<= ~counter~0 0)} assume true; {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,714 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {120690#(<= ~counter~0 0)} {120690#(<= ~counter~0 0)} #90#return; {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,715 INFO L272 TraceCheckUtils]: 11: Hoare triple {120690#(<= ~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)); {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,715 INFO L290 TraceCheckUtils]: 12: Hoare triple {120690#(<= ~counter~0 0)} ~cond := #in~cond; {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,715 INFO L290 TraceCheckUtils]: 13: Hoare triple {120690#(<= ~counter~0 0)} assume !(0 == ~cond); {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,716 INFO L290 TraceCheckUtils]: 14: Hoare triple {120690#(<= ~counter~0 0)} assume true; {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,716 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {120690#(<= ~counter~0 0)} {120690#(<= ~counter~0 0)} #92#return; {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,716 INFO L290 TraceCheckUtils]: 16: Hoare triple {120690#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {120690#(<= ~counter~0 0)} is VALID [2022-04-28 06:08:50,719 INFO L290 TraceCheckUtils]: 17: Hoare triple {120690#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {120739#(<= ~counter~0 1)} is VALID [2022-04-28 06:08:50,719 INFO L290 TraceCheckUtils]: 18: Hoare triple {120739#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {120739#(<= ~counter~0 1)} is VALID [2022-04-28 06:08:50,720 INFO L272 TraceCheckUtils]: 19: Hoare triple {120739#(<= ~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)); {120739#(<= ~counter~0 1)} is VALID [2022-04-28 06:08:50,720 INFO L290 TraceCheckUtils]: 20: Hoare triple {120739#(<= ~counter~0 1)} ~cond := #in~cond; {120739#(<= ~counter~0 1)} is VALID [2022-04-28 06:08:50,720 INFO L290 TraceCheckUtils]: 21: Hoare triple {120739#(<= ~counter~0 1)} assume !(0 == ~cond); {120739#(<= ~counter~0 1)} is VALID [2022-04-28 06:08:50,721 INFO L290 TraceCheckUtils]: 22: Hoare triple {120739#(<= ~counter~0 1)} assume true; {120739#(<= ~counter~0 1)} is VALID [2022-04-28 06:08:50,721 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {120739#(<= ~counter~0 1)} {120739#(<= ~counter~0 1)} #94#return; {120739#(<= ~counter~0 1)} is VALID [2022-04-28 06:08:50,721 INFO L290 TraceCheckUtils]: 24: Hoare triple {120739#(<= ~counter~0 1)} assume !!(0 != ~r~0); {120739#(<= ~counter~0 1)} is VALID [2022-04-28 06:08:50,723 INFO L290 TraceCheckUtils]: 25: Hoare triple {120739#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120764#(<= ~counter~0 2)} is VALID [2022-04-28 06:08:50,724 INFO L290 TraceCheckUtils]: 26: Hoare triple {120764#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {120764#(<= ~counter~0 2)} is VALID [2022-04-28 06:08:50,724 INFO L272 TraceCheckUtils]: 27: Hoare triple {120764#(<= ~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)); {120764#(<= ~counter~0 2)} is VALID [2022-04-28 06:08:50,724 INFO L290 TraceCheckUtils]: 28: Hoare triple {120764#(<= ~counter~0 2)} ~cond := #in~cond; {120764#(<= ~counter~0 2)} is VALID [2022-04-28 06:08:50,725 INFO L290 TraceCheckUtils]: 29: Hoare triple {120764#(<= ~counter~0 2)} assume !(0 == ~cond); {120764#(<= ~counter~0 2)} is VALID [2022-04-28 06:08:50,725 INFO L290 TraceCheckUtils]: 30: Hoare triple {120764#(<= ~counter~0 2)} assume true; {120764#(<= ~counter~0 2)} is VALID [2022-04-28 06:08:50,725 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {120764#(<= ~counter~0 2)} {120764#(<= ~counter~0 2)} #96#return; {120764#(<= ~counter~0 2)} is VALID [2022-04-28 06:08:50,726 INFO L290 TraceCheckUtils]: 32: Hoare triple {120764#(<= ~counter~0 2)} assume !(~r~0 > 0); {120764#(<= ~counter~0 2)} is VALID [2022-04-28 06:08:50,727 INFO L290 TraceCheckUtils]: 33: Hoare triple {120764#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {120789#(<= ~counter~0 3)} is VALID [2022-04-28 06:08:50,728 INFO L290 TraceCheckUtils]: 34: Hoare triple {120789#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {120789#(<= ~counter~0 3)} is VALID [2022-04-28 06:08:50,728 INFO L272 TraceCheckUtils]: 35: Hoare triple {120789#(<= ~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)); {120789#(<= ~counter~0 3)} is VALID [2022-04-28 06:08:50,728 INFO L290 TraceCheckUtils]: 36: Hoare triple {120789#(<= ~counter~0 3)} ~cond := #in~cond; {120789#(<= ~counter~0 3)} is VALID [2022-04-28 06:08:50,729 INFO L290 TraceCheckUtils]: 37: Hoare triple {120789#(<= ~counter~0 3)} assume !(0 == ~cond); {120789#(<= ~counter~0 3)} is VALID [2022-04-28 06:08:50,729 INFO L290 TraceCheckUtils]: 38: Hoare triple {120789#(<= ~counter~0 3)} assume true; {120789#(<= ~counter~0 3)} is VALID [2022-04-28 06:08:50,729 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {120789#(<= ~counter~0 3)} {120789#(<= ~counter~0 3)} #98#return; {120789#(<= ~counter~0 3)} is VALID [2022-04-28 06:08:50,730 INFO L290 TraceCheckUtils]: 40: Hoare triple {120789#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {120789#(<= ~counter~0 3)} is VALID [2022-04-28 06:08:50,731 INFO L290 TraceCheckUtils]: 41: Hoare triple {120789#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {120814#(<= ~counter~0 4)} is VALID [2022-04-28 06:08:50,732 INFO L290 TraceCheckUtils]: 42: Hoare triple {120814#(<= ~counter~0 4)} assume !!(#t~post8 < 50);havoc #t~post8; {120814#(<= ~counter~0 4)} is VALID [2022-04-28 06:08:50,732 INFO L272 TraceCheckUtils]: 43: Hoare triple {120814#(<= ~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)); {120814#(<= ~counter~0 4)} is VALID [2022-04-28 06:08:50,733 INFO L290 TraceCheckUtils]: 44: Hoare triple {120814#(<= ~counter~0 4)} ~cond := #in~cond; {120814#(<= ~counter~0 4)} is VALID [2022-04-28 06:08:50,733 INFO L290 TraceCheckUtils]: 45: Hoare triple {120814#(<= ~counter~0 4)} assume !(0 == ~cond); {120814#(<= ~counter~0 4)} is VALID [2022-04-28 06:08:50,733 INFO L290 TraceCheckUtils]: 46: Hoare triple {120814#(<= ~counter~0 4)} assume true; {120814#(<= ~counter~0 4)} is VALID [2022-04-28 06:08:50,734 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {120814#(<= ~counter~0 4)} {120814#(<= ~counter~0 4)} #98#return; {120814#(<= ~counter~0 4)} is VALID [2022-04-28 06:08:50,734 INFO L290 TraceCheckUtils]: 48: Hoare triple {120814#(<= ~counter~0 4)} assume !(~r~0 < 0); {120814#(<= ~counter~0 4)} is VALID [2022-04-28 06:08:50,735 INFO L290 TraceCheckUtils]: 49: Hoare triple {120814#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {120839#(<= ~counter~0 5)} is VALID [2022-04-28 06:08:50,736 INFO L290 TraceCheckUtils]: 50: Hoare triple {120839#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {120839#(<= ~counter~0 5)} is VALID [2022-04-28 06:08:50,736 INFO L272 TraceCheckUtils]: 51: Hoare triple {120839#(<= ~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)); {120839#(<= ~counter~0 5)} is VALID [2022-04-28 06:08:50,737 INFO L290 TraceCheckUtils]: 52: Hoare triple {120839#(<= ~counter~0 5)} ~cond := #in~cond; {120839#(<= ~counter~0 5)} is VALID [2022-04-28 06:08:50,737 INFO L290 TraceCheckUtils]: 53: Hoare triple {120839#(<= ~counter~0 5)} assume !(0 == ~cond); {120839#(<= ~counter~0 5)} is VALID [2022-04-28 06:08:50,737 INFO L290 TraceCheckUtils]: 54: Hoare triple {120839#(<= ~counter~0 5)} assume true; {120839#(<= ~counter~0 5)} is VALID [2022-04-28 06:08:50,738 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {120839#(<= ~counter~0 5)} {120839#(<= ~counter~0 5)} #94#return; {120839#(<= ~counter~0 5)} is VALID [2022-04-28 06:08:50,738 INFO L290 TraceCheckUtils]: 56: Hoare triple {120839#(<= ~counter~0 5)} assume !!(0 != ~r~0); {120839#(<= ~counter~0 5)} is VALID [2022-04-28 06:08:50,740 INFO L290 TraceCheckUtils]: 57: Hoare triple {120839#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120864#(<= ~counter~0 6)} is VALID [2022-04-28 06:08:50,740 INFO L290 TraceCheckUtils]: 58: Hoare triple {120864#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {120864#(<= ~counter~0 6)} is VALID [2022-04-28 06:08:50,740 INFO L272 TraceCheckUtils]: 59: Hoare triple {120864#(<= ~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)); {120864#(<= ~counter~0 6)} is VALID [2022-04-28 06:08:50,741 INFO L290 TraceCheckUtils]: 60: Hoare triple {120864#(<= ~counter~0 6)} ~cond := #in~cond; {120864#(<= ~counter~0 6)} is VALID [2022-04-28 06:08:50,741 INFO L290 TraceCheckUtils]: 61: Hoare triple {120864#(<= ~counter~0 6)} assume !(0 == ~cond); {120864#(<= ~counter~0 6)} is VALID [2022-04-28 06:08:50,741 INFO L290 TraceCheckUtils]: 62: Hoare triple {120864#(<= ~counter~0 6)} assume true; {120864#(<= ~counter~0 6)} is VALID [2022-04-28 06:08:50,742 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {120864#(<= ~counter~0 6)} {120864#(<= ~counter~0 6)} #96#return; {120864#(<= ~counter~0 6)} is VALID [2022-04-28 06:08:50,742 INFO L290 TraceCheckUtils]: 64: Hoare triple {120864#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {120864#(<= ~counter~0 6)} is VALID [2022-04-28 06:08:50,743 INFO L290 TraceCheckUtils]: 65: Hoare triple {120864#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120889#(<= ~counter~0 7)} is VALID [2022-04-28 06:08:50,743 INFO L290 TraceCheckUtils]: 66: Hoare triple {120889#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {120889#(<= ~counter~0 7)} is VALID [2022-04-28 06:08:50,744 INFO L272 TraceCheckUtils]: 67: Hoare triple {120889#(<= ~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)); {120889#(<= ~counter~0 7)} is VALID [2022-04-28 06:08:50,744 INFO L290 TraceCheckUtils]: 68: Hoare triple {120889#(<= ~counter~0 7)} ~cond := #in~cond; {120889#(<= ~counter~0 7)} is VALID [2022-04-28 06:08:50,744 INFO L290 TraceCheckUtils]: 69: Hoare triple {120889#(<= ~counter~0 7)} assume !(0 == ~cond); {120889#(<= ~counter~0 7)} is VALID [2022-04-28 06:08:50,745 INFO L290 TraceCheckUtils]: 70: Hoare triple {120889#(<= ~counter~0 7)} assume true; {120889#(<= ~counter~0 7)} is VALID [2022-04-28 06:08:50,745 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {120889#(<= ~counter~0 7)} {120889#(<= ~counter~0 7)} #96#return; {120889#(<= ~counter~0 7)} is VALID [2022-04-28 06:08:50,745 INFO L290 TraceCheckUtils]: 72: Hoare triple {120889#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {120889#(<= ~counter~0 7)} is VALID [2022-04-28 06:08:50,747 INFO L290 TraceCheckUtils]: 73: Hoare triple {120889#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120914#(<= ~counter~0 8)} is VALID [2022-04-28 06:08:50,747 INFO L290 TraceCheckUtils]: 74: Hoare triple {120914#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {120914#(<= ~counter~0 8)} is VALID [2022-04-28 06:08:50,747 INFO L272 TraceCheckUtils]: 75: Hoare triple {120914#(<= ~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)); {120914#(<= ~counter~0 8)} is VALID [2022-04-28 06:08:50,748 INFO L290 TraceCheckUtils]: 76: Hoare triple {120914#(<= ~counter~0 8)} ~cond := #in~cond; {120914#(<= ~counter~0 8)} is VALID [2022-04-28 06:08:50,748 INFO L290 TraceCheckUtils]: 77: Hoare triple {120914#(<= ~counter~0 8)} assume !(0 == ~cond); {120914#(<= ~counter~0 8)} is VALID [2022-04-28 06:08:50,748 INFO L290 TraceCheckUtils]: 78: Hoare triple {120914#(<= ~counter~0 8)} assume true; {120914#(<= ~counter~0 8)} is VALID [2022-04-28 06:08:50,749 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {120914#(<= ~counter~0 8)} {120914#(<= ~counter~0 8)} #96#return; {120914#(<= ~counter~0 8)} is VALID [2022-04-28 06:08:50,749 INFO L290 TraceCheckUtils]: 80: Hoare triple {120914#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {120914#(<= ~counter~0 8)} is VALID [2022-04-28 06:08:50,750 INFO L290 TraceCheckUtils]: 81: Hoare triple {120914#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120939#(<= ~counter~0 9)} is VALID [2022-04-28 06:08:50,750 INFO L290 TraceCheckUtils]: 82: Hoare triple {120939#(<= ~counter~0 9)} assume !!(#t~post7 < 50);havoc #t~post7; {120939#(<= ~counter~0 9)} is VALID [2022-04-28 06:08:50,751 INFO L272 TraceCheckUtils]: 83: Hoare triple {120939#(<= ~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)); {120939#(<= ~counter~0 9)} is VALID [2022-04-28 06:08:50,751 INFO L290 TraceCheckUtils]: 84: Hoare triple {120939#(<= ~counter~0 9)} ~cond := #in~cond; {120939#(<= ~counter~0 9)} is VALID [2022-04-28 06:08:50,751 INFO L290 TraceCheckUtils]: 85: Hoare triple {120939#(<= ~counter~0 9)} assume !(0 == ~cond); {120939#(<= ~counter~0 9)} is VALID [2022-04-28 06:08:50,752 INFO L290 TraceCheckUtils]: 86: Hoare triple {120939#(<= ~counter~0 9)} assume true; {120939#(<= ~counter~0 9)} is VALID [2022-04-28 06:08:50,752 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {120939#(<= ~counter~0 9)} {120939#(<= ~counter~0 9)} #96#return; {120939#(<= ~counter~0 9)} is VALID [2022-04-28 06:08:50,752 INFO L290 TraceCheckUtils]: 88: Hoare triple {120939#(<= ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {120939#(<= ~counter~0 9)} is VALID [2022-04-28 06:08:50,754 INFO L290 TraceCheckUtils]: 89: Hoare triple {120939#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120964#(<= ~counter~0 10)} is VALID [2022-04-28 06:08:50,755 INFO L290 TraceCheckUtils]: 90: Hoare triple {120964#(<= ~counter~0 10)} assume !!(#t~post7 < 50);havoc #t~post7; {120964#(<= ~counter~0 10)} is VALID [2022-04-28 06:08:50,755 INFO L272 TraceCheckUtils]: 91: Hoare triple {120964#(<= ~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)); {120964#(<= ~counter~0 10)} is VALID [2022-04-28 06:08:50,755 INFO L290 TraceCheckUtils]: 92: Hoare triple {120964#(<= ~counter~0 10)} ~cond := #in~cond; {120964#(<= ~counter~0 10)} is VALID [2022-04-28 06:08:50,756 INFO L290 TraceCheckUtils]: 93: Hoare triple {120964#(<= ~counter~0 10)} assume !(0 == ~cond); {120964#(<= ~counter~0 10)} is VALID [2022-04-28 06:08:50,756 INFO L290 TraceCheckUtils]: 94: Hoare triple {120964#(<= ~counter~0 10)} assume true; {120964#(<= ~counter~0 10)} is VALID [2022-04-28 06:08:50,756 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {120964#(<= ~counter~0 10)} {120964#(<= ~counter~0 10)} #96#return; {120964#(<= ~counter~0 10)} is VALID [2022-04-28 06:08:50,757 INFO L290 TraceCheckUtils]: 96: Hoare triple {120964#(<= ~counter~0 10)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {120964#(<= ~counter~0 10)} is VALID [2022-04-28 06:08:50,759 INFO L290 TraceCheckUtils]: 97: Hoare triple {120964#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {120989#(<= ~counter~0 11)} is VALID [2022-04-28 06:08:50,759 INFO L290 TraceCheckUtils]: 98: Hoare triple {120989#(<= ~counter~0 11)} assume !!(#t~post7 < 50);havoc #t~post7; {120989#(<= ~counter~0 11)} is VALID [2022-04-28 06:08:50,760 INFO L272 TraceCheckUtils]: 99: Hoare triple {120989#(<= ~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)); {120989#(<= ~counter~0 11)} is VALID [2022-04-28 06:08:50,760 INFO L290 TraceCheckUtils]: 100: Hoare triple {120989#(<= ~counter~0 11)} ~cond := #in~cond; {120989#(<= ~counter~0 11)} is VALID [2022-04-28 06:08:50,760 INFO L290 TraceCheckUtils]: 101: Hoare triple {120989#(<= ~counter~0 11)} assume !(0 == ~cond); {120989#(<= ~counter~0 11)} is VALID [2022-04-28 06:08:50,760 INFO L290 TraceCheckUtils]: 102: Hoare triple {120989#(<= ~counter~0 11)} assume true; {120989#(<= ~counter~0 11)} is VALID [2022-04-28 06:08:50,761 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {120989#(<= ~counter~0 11)} {120989#(<= ~counter~0 11)} #96#return; {120989#(<= ~counter~0 11)} is VALID [2022-04-28 06:08:50,761 INFO L290 TraceCheckUtils]: 104: Hoare triple {120989#(<= ~counter~0 11)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {120989#(<= ~counter~0 11)} is VALID [2022-04-28 06:08:50,763 INFO L290 TraceCheckUtils]: 105: Hoare triple {120989#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {121014#(<= ~counter~0 12)} is VALID [2022-04-28 06:08:50,764 INFO L290 TraceCheckUtils]: 106: Hoare triple {121014#(<= ~counter~0 12)} assume !!(#t~post7 < 50);havoc #t~post7; {121014#(<= ~counter~0 12)} is VALID [2022-04-28 06:08:50,764 INFO L272 TraceCheckUtils]: 107: Hoare triple {121014#(<= ~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)); {121014#(<= ~counter~0 12)} is VALID [2022-04-28 06:08:50,764 INFO L290 TraceCheckUtils]: 108: Hoare triple {121014#(<= ~counter~0 12)} ~cond := #in~cond; {121014#(<= ~counter~0 12)} is VALID [2022-04-28 06:08:50,765 INFO L290 TraceCheckUtils]: 109: Hoare triple {121014#(<= ~counter~0 12)} assume !(0 == ~cond); {121014#(<= ~counter~0 12)} is VALID [2022-04-28 06:08:50,765 INFO L290 TraceCheckUtils]: 110: Hoare triple {121014#(<= ~counter~0 12)} assume true; {121014#(<= ~counter~0 12)} is VALID [2022-04-28 06:08:50,765 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {121014#(<= ~counter~0 12)} {121014#(<= ~counter~0 12)} #96#return; {121014#(<= ~counter~0 12)} is VALID [2022-04-28 06:08:50,766 INFO L290 TraceCheckUtils]: 112: Hoare triple {121014#(<= ~counter~0 12)} assume !(~r~0 > 0); {121014#(<= ~counter~0 12)} is VALID [2022-04-28 06:08:50,768 INFO L290 TraceCheckUtils]: 113: Hoare triple {121014#(<= ~counter~0 12)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {121039#(<= ~counter~0 13)} is VALID [2022-04-28 06:08:50,768 INFO L290 TraceCheckUtils]: 114: Hoare triple {121039#(<= ~counter~0 13)} assume !!(#t~post8 < 50);havoc #t~post8; {121039#(<= ~counter~0 13)} is VALID [2022-04-28 06:08:50,768 INFO L272 TraceCheckUtils]: 115: Hoare triple {121039#(<= ~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)); {121039#(<= ~counter~0 13)} is VALID [2022-04-28 06:08:50,769 INFO L290 TraceCheckUtils]: 116: Hoare triple {121039#(<= ~counter~0 13)} ~cond := #in~cond; {121039#(<= ~counter~0 13)} is VALID [2022-04-28 06:08:50,769 INFO L290 TraceCheckUtils]: 117: Hoare triple {121039#(<= ~counter~0 13)} assume !(0 == ~cond); {121039#(<= ~counter~0 13)} is VALID [2022-04-28 06:08:50,769 INFO L290 TraceCheckUtils]: 118: Hoare triple {121039#(<= ~counter~0 13)} assume true; {121039#(<= ~counter~0 13)} is VALID [2022-04-28 06:08:50,770 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {121039#(<= ~counter~0 13)} {121039#(<= ~counter~0 13)} #98#return; {121039#(<= ~counter~0 13)} is VALID [2022-04-28 06:08:50,770 INFO L290 TraceCheckUtils]: 120: Hoare triple {121039#(<= ~counter~0 13)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {121039#(<= ~counter~0 13)} is VALID [2022-04-28 06:08:50,772 INFO L290 TraceCheckUtils]: 121: Hoare triple {121039#(<= ~counter~0 13)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {121064#(<= ~counter~0 14)} is VALID [2022-04-28 06:08:50,772 INFO L290 TraceCheckUtils]: 122: Hoare triple {121064#(<= ~counter~0 14)} assume !!(#t~post8 < 50);havoc #t~post8; {121064#(<= ~counter~0 14)} is VALID [2022-04-28 06:08:50,773 INFO L272 TraceCheckUtils]: 123: Hoare triple {121064#(<= ~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)); {121064#(<= ~counter~0 14)} is VALID [2022-04-28 06:08:50,773 INFO L290 TraceCheckUtils]: 124: Hoare triple {121064#(<= ~counter~0 14)} ~cond := #in~cond; {121064#(<= ~counter~0 14)} is VALID [2022-04-28 06:08:50,773 INFO L290 TraceCheckUtils]: 125: Hoare triple {121064#(<= ~counter~0 14)} assume !(0 == ~cond); {121064#(<= ~counter~0 14)} is VALID [2022-04-28 06:08:50,774 INFO L290 TraceCheckUtils]: 126: Hoare triple {121064#(<= ~counter~0 14)} assume true; {121064#(<= ~counter~0 14)} is VALID [2022-04-28 06:08:50,774 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {121064#(<= ~counter~0 14)} {121064#(<= ~counter~0 14)} #98#return; {121064#(<= ~counter~0 14)} is VALID [2022-04-28 06:08:50,774 INFO L290 TraceCheckUtils]: 128: Hoare triple {121064#(<= ~counter~0 14)} assume !(~r~0 < 0); {121064#(<= ~counter~0 14)} is VALID [2022-04-28 06:08:50,775 INFO L290 TraceCheckUtils]: 129: Hoare triple {121064#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {121089#(<= |main_#t~post6| 14)} is VALID [2022-04-28 06:08:50,775 INFO L290 TraceCheckUtils]: 130: Hoare triple {121089#(<= |main_#t~post6| 14)} assume !(#t~post6 < 50);havoc #t~post6; {120683#false} is VALID [2022-04-28 06:08:50,775 INFO L272 TraceCheckUtils]: 131: Hoare triple {120683#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)); {120683#false} is VALID [2022-04-28 06:08:50,775 INFO L290 TraceCheckUtils]: 132: Hoare triple {120683#false} ~cond := #in~cond; {120683#false} is VALID [2022-04-28 06:08:50,775 INFO L290 TraceCheckUtils]: 133: Hoare triple {120683#false} assume 0 == ~cond; {120683#false} is VALID [2022-04-28 06:08:50,775 INFO L290 TraceCheckUtils]: 134: Hoare triple {120683#false} assume !false; {120683#false} is VALID [2022-04-28 06:08:50,776 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-28 06:08:50,776 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:08:51,698 INFO L290 TraceCheckUtils]: 134: Hoare triple {120683#false} assume !false; {120683#false} is VALID [2022-04-28 06:08:51,698 INFO L290 TraceCheckUtils]: 133: Hoare triple {120683#false} assume 0 == ~cond; {120683#false} is VALID [2022-04-28 06:08:51,698 INFO L290 TraceCheckUtils]: 132: Hoare triple {120683#false} ~cond := #in~cond; {120683#false} is VALID [2022-04-28 06:08:51,698 INFO L272 TraceCheckUtils]: 131: Hoare triple {120683#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)); {120683#false} is VALID [2022-04-28 06:08:51,699 INFO L290 TraceCheckUtils]: 130: Hoare triple {121117#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {120683#false} is VALID [2022-04-28 06:08:51,699 INFO L290 TraceCheckUtils]: 129: Hoare triple {121121#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {121117#(< |main_#t~post6| 50)} is VALID [2022-04-28 06:08:51,699 INFO L290 TraceCheckUtils]: 128: Hoare triple {121121#(< ~counter~0 50)} assume !(~r~0 < 0); {121121#(< ~counter~0 50)} is VALID [2022-04-28 06:08:51,700 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {120682#true} {121121#(< ~counter~0 50)} #98#return; {121121#(< ~counter~0 50)} is VALID [2022-04-28 06:08:51,700 INFO L290 TraceCheckUtils]: 126: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,700 INFO L290 TraceCheckUtils]: 125: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,700 INFO L290 TraceCheckUtils]: 124: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,700 INFO L272 TraceCheckUtils]: 123: Hoare triple {121121#(< ~counter~0 50)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {120682#true} is VALID [2022-04-28 06:08:51,700 INFO L290 TraceCheckUtils]: 122: Hoare triple {121121#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {121121#(< ~counter~0 50)} is VALID [2022-04-28 06:08:51,703 INFO L290 TraceCheckUtils]: 121: Hoare triple {121146#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {121121#(< ~counter~0 50)} is VALID [2022-04-28 06:08:51,703 INFO L290 TraceCheckUtils]: 120: Hoare triple {121146#(< ~counter~0 49)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {121146#(< ~counter~0 49)} is VALID [2022-04-28 06:08:51,704 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {120682#true} {121146#(< ~counter~0 49)} #98#return; {121146#(< ~counter~0 49)} is VALID [2022-04-28 06:08:51,704 INFO L290 TraceCheckUtils]: 118: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,704 INFO L290 TraceCheckUtils]: 117: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,704 INFO L290 TraceCheckUtils]: 116: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,704 INFO L272 TraceCheckUtils]: 115: Hoare triple {121146#(< ~counter~0 49)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {120682#true} is VALID [2022-04-28 06:08:51,704 INFO L290 TraceCheckUtils]: 114: Hoare triple {121146#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {121146#(< ~counter~0 49)} is VALID [2022-04-28 06:08:51,705 INFO L290 TraceCheckUtils]: 113: Hoare triple {121171#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {121146#(< ~counter~0 49)} is VALID [2022-04-28 06:08:51,706 INFO L290 TraceCheckUtils]: 112: Hoare triple {121171#(< ~counter~0 48)} assume !(~r~0 > 0); {121171#(< ~counter~0 48)} is VALID [2022-04-28 06:08:51,706 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {120682#true} {121171#(< ~counter~0 48)} #96#return; {121171#(< ~counter~0 48)} is VALID [2022-04-28 06:08:51,706 INFO L290 TraceCheckUtils]: 110: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,706 INFO L290 TraceCheckUtils]: 109: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,706 INFO L290 TraceCheckUtils]: 108: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,706 INFO L272 TraceCheckUtils]: 107: Hoare triple {121171#(< ~counter~0 48)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {120682#true} is VALID [2022-04-28 06:08:51,707 INFO L290 TraceCheckUtils]: 106: Hoare triple {121171#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {121171#(< ~counter~0 48)} is VALID [2022-04-28 06:08:51,708 INFO L290 TraceCheckUtils]: 105: Hoare triple {121196#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {121171#(< ~counter~0 48)} is VALID [2022-04-28 06:08:51,708 INFO L290 TraceCheckUtils]: 104: Hoare triple {121196#(< ~counter~0 47)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {121196#(< ~counter~0 47)} is VALID [2022-04-28 06:08:51,708 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {120682#true} {121196#(< ~counter~0 47)} #96#return; {121196#(< ~counter~0 47)} is VALID [2022-04-28 06:08:51,709 INFO L290 TraceCheckUtils]: 102: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,709 INFO L290 TraceCheckUtils]: 101: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,709 INFO L290 TraceCheckUtils]: 100: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,709 INFO L272 TraceCheckUtils]: 99: Hoare triple {121196#(< ~counter~0 47)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {120682#true} is VALID [2022-04-28 06:08:51,709 INFO L290 TraceCheckUtils]: 98: Hoare triple {121196#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {121196#(< ~counter~0 47)} is VALID [2022-04-28 06:08:51,710 INFO L290 TraceCheckUtils]: 97: Hoare triple {121221#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {121196#(< ~counter~0 47)} is VALID [2022-04-28 06:08:51,710 INFO L290 TraceCheckUtils]: 96: Hoare triple {121221#(< ~counter~0 46)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {121221#(< ~counter~0 46)} is VALID [2022-04-28 06:08:51,711 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {120682#true} {121221#(< ~counter~0 46)} #96#return; {121221#(< ~counter~0 46)} is VALID [2022-04-28 06:08:51,711 INFO L290 TraceCheckUtils]: 94: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,711 INFO L290 TraceCheckUtils]: 93: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,711 INFO L290 TraceCheckUtils]: 92: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,711 INFO L272 TraceCheckUtils]: 91: Hoare triple {121221#(< ~counter~0 46)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {120682#true} is VALID [2022-04-28 06:08:51,712 INFO L290 TraceCheckUtils]: 90: Hoare triple {121221#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {121221#(< ~counter~0 46)} is VALID [2022-04-28 06:08:51,713 INFO L290 TraceCheckUtils]: 89: Hoare triple {121246#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {121221#(< ~counter~0 46)} is VALID [2022-04-28 06:08:51,713 INFO L290 TraceCheckUtils]: 88: Hoare triple {121246#(< ~counter~0 45)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {121246#(< ~counter~0 45)} is VALID [2022-04-28 06:08:51,714 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {120682#true} {121246#(< ~counter~0 45)} #96#return; {121246#(< ~counter~0 45)} is VALID [2022-04-28 06:08:51,714 INFO L290 TraceCheckUtils]: 86: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,714 INFO L290 TraceCheckUtils]: 85: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,714 INFO L290 TraceCheckUtils]: 84: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,714 INFO L272 TraceCheckUtils]: 83: Hoare triple {121246#(< ~counter~0 45)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {120682#true} is VALID [2022-04-28 06:08:51,714 INFO L290 TraceCheckUtils]: 82: Hoare triple {121246#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {121246#(< ~counter~0 45)} is VALID [2022-04-28 06:08:51,716 INFO L290 TraceCheckUtils]: 81: Hoare triple {121271#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {121246#(< ~counter~0 45)} is VALID [2022-04-28 06:08:51,716 INFO L290 TraceCheckUtils]: 80: Hoare triple {121271#(< ~counter~0 44)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {121271#(< ~counter~0 44)} is VALID [2022-04-28 06:08:51,716 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {120682#true} {121271#(< ~counter~0 44)} #96#return; {121271#(< ~counter~0 44)} is VALID [2022-04-28 06:08:51,716 INFO L290 TraceCheckUtils]: 78: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,717 INFO L290 TraceCheckUtils]: 77: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,717 INFO L290 TraceCheckUtils]: 76: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,717 INFO L272 TraceCheckUtils]: 75: Hoare triple {121271#(< ~counter~0 44)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {120682#true} is VALID [2022-04-28 06:08:51,717 INFO L290 TraceCheckUtils]: 74: Hoare triple {121271#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {121271#(< ~counter~0 44)} is VALID [2022-04-28 06:08:51,718 INFO L290 TraceCheckUtils]: 73: Hoare triple {121296#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {121271#(< ~counter~0 44)} is VALID [2022-04-28 06:08:51,718 INFO L290 TraceCheckUtils]: 72: Hoare triple {121296#(< ~counter~0 43)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {121296#(< ~counter~0 43)} is VALID [2022-04-28 06:08:51,719 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {120682#true} {121296#(< ~counter~0 43)} #96#return; {121296#(< ~counter~0 43)} is VALID [2022-04-28 06:08:51,719 INFO L290 TraceCheckUtils]: 70: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,719 INFO L290 TraceCheckUtils]: 69: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,719 INFO L290 TraceCheckUtils]: 68: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,719 INFO L272 TraceCheckUtils]: 67: Hoare triple {121296#(< ~counter~0 43)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {120682#true} is VALID [2022-04-28 06:08:51,719 INFO L290 TraceCheckUtils]: 66: Hoare triple {121296#(< ~counter~0 43)} assume !!(#t~post7 < 50);havoc #t~post7; {121296#(< ~counter~0 43)} is VALID [2022-04-28 06:08:51,721 INFO L290 TraceCheckUtils]: 65: Hoare triple {121321#(< ~counter~0 42)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {121296#(< ~counter~0 43)} is VALID [2022-04-28 06:08:51,721 INFO L290 TraceCheckUtils]: 64: Hoare triple {121321#(< ~counter~0 42)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {121321#(< ~counter~0 42)} is VALID [2022-04-28 06:08:51,722 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {120682#true} {121321#(< ~counter~0 42)} #96#return; {121321#(< ~counter~0 42)} is VALID [2022-04-28 06:08:51,722 INFO L290 TraceCheckUtils]: 62: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,722 INFO L290 TraceCheckUtils]: 61: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,722 INFO L290 TraceCheckUtils]: 60: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,722 INFO L272 TraceCheckUtils]: 59: Hoare triple {121321#(< ~counter~0 42)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {120682#true} is VALID [2022-04-28 06:08:51,722 INFO L290 TraceCheckUtils]: 58: Hoare triple {121321#(< ~counter~0 42)} assume !!(#t~post7 < 50);havoc #t~post7; {121321#(< ~counter~0 42)} is VALID [2022-04-28 06:08:51,724 INFO L290 TraceCheckUtils]: 57: Hoare triple {121346#(< ~counter~0 41)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {121321#(< ~counter~0 42)} is VALID [2022-04-28 06:08:51,724 INFO L290 TraceCheckUtils]: 56: Hoare triple {121346#(< ~counter~0 41)} assume !!(0 != ~r~0); {121346#(< ~counter~0 41)} is VALID [2022-04-28 06:08:51,724 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {120682#true} {121346#(< ~counter~0 41)} #94#return; {121346#(< ~counter~0 41)} is VALID [2022-04-28 06:08:51,724 INFO L290 TraceCheckUtils]: 54: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,724 INFO L290 TraceCheckUtils]: 53: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,725 INFO L290 TraceCheckUtils]: 52: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,725 INFO L272 TraceCheckUtils]: 51: Hoare triple {121346#(< ~counter~0 41)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {120682#true} is VALID [2022-04-28 06:08:51,725 INFO L290 TraceCheckUtils]: 50: Hoare triple {121346#(< ~counter~0 41)} assume !!(#t~post6 < 50);havoc #t~post6; {121346#(< ~counter~0 41)} is VALID [2022-04-28 06:08:51,726 INFO L290 TraceCheckUtils]: 49: Hoare triple {121371#(< ~counter~0 40)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {121346#(< ~counter~0 41)} is VALID [2022-04-28 06:08:51,727 INFO L290 TraceCheckUtils]: 48: Hoare triple {121371#(< ~counter~0 40)} assume !(~r~0 < 0); {121371#(< ~counter~0 40)} is VALID [2022-04-28 06:08:51,727 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {120682#true} {121371#(< ~counter~0 40)} #98#return; {121371#(< ~counter~0 40)} is VALID [2022-04-28 06:08:51,727 INFO L290 TraceCheckUtils]: 46: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,727 INFO L290 TraceCheckUtils]: 45: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,727 INFO L290 TraceCheckUtils]: 44: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,727 INFO L272 TraceCheckUtils]: 43: Hoare triple {121371#(< ~counter~0 40)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {120682#true} is VALID [2022-04-28 06:08:51,728 INFO L290 TraceCheckUtils]: 42: Hoare triple {121371#(< ~counter~0 40)} assume !!(#t~post8 < 50);havoc #t~post8; {121371#(< ~counter~0 40)} is VALID [2022-04-28 06:08:51,730 INFO L290 TraceCheckUtils]: 41: Hoare triple {121396#(< ~counter~0 39)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {121371#(< ~counter~0 40)} is VALID [2022-04-28 06:08:51,730 INFO L290 TraceCheckUtils]: 40: Hoare triple {121396#(< ~counter~0 39)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {121396#(< ~counter~0 39)} is VALID [2022-04-28 06:08:51,731 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {120682#true} {121396#(< ~counter~0 39)} #98#return; {121396#(< ~counter~0 39)} is VALID [2022-04-28 06:08:51,731 INFO L290 TraceCheckUtils]: 38: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,731 INFO L290 TraceCheckUtils]: 37: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,731 INFO L290 TraceCheckUtils]: 36: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,731 INFO L272 TraceCheckUtils]: 35: Hoare triple {121396#(< ~counter~0 39)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {120682#true} is VALID [2022-04-28 06:08:51,731 INFO L290 TraceCheckUtils]: 34: Hoare triple {121396#(< ~counter~0 39)} assume !!(#t~post8 < 50);havoc #t~post8; {121396#(< ~counter~0 39)} is VALID [2022-04-28 06:08:51,733 INFO L290 TraceCheckUtils]: 33: Hoare triple {121421#(< ~counter~0 38)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {121396#(< ~counter~0 39)} is VALID [2022-04-28 06:08:51,734 INFO L290 TraceCheckUtils]: 32: Hoare triple {121421#(< ~counter~0 38)} assume !(~r~0 > 0); {121421#(< ~counter~0 38)} is VALID [2022-04-28 06:08:51,734 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {120682#true} {121421#(< ~counter~0 38)} #96#return; {121421#(< ~counter~0 38)} is VALID [2022-04-28 06:08:51,734 INFO L290 TraceCheckUtils]: 30: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,734 INFO L290 TraceCheckUtils]: 29: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,734 INFO L290 TraceCheckUtils]: 28: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,734 INFO L272 TraceCheckUtils]: 27: Hoare triple {121421#(< ~counter~0 38)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {120682#true} is VALID [2022-04-28 06:08:51,735 INFO L290 TraceCheckUtils]: 26: Hoare triple {121421#(< ~counter~0 38)} assume !!(#t~post7 < 50);havoc #t~post7; {121421#(< ~counter~0 38)} is VALID [2022-04-28 06:08:51,736 INFO L290 TraceCheckUtils]: 25: Hoare triple {121446#(< ~counter~0 37)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {121421#(< ~counter~0 38)} is VALID [2022-04-28 06:08:51,736 INFO L290 TraceCheckUtils]: 24: Hoare triple {121446#(< ~counter~0 37)} assume !!(0 != ~r~0); {121446#(< ~counter~0 37)} is VALID [2022-04-28 06:08:51,737 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {120682#true} {121446#(< ~counter~0 37)} #94#return; {121446#(< ~counter~0 37)} is VALID [2022-04-28 06:08:51,737 INFO L290 TraceCheckUtils]: 22: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,737 INFO L290 TraceCheckUtils]: 21: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,737 INFO L290 TraceCheckUtils]: 20: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,737 INFO L272 TraceCheckUtils]: 19: Hoare triple {121446#(< ~counter~0 37)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {120682#true} is VALID [2022-04-28 06:08:51,737 INFO L290 TraceCheckUtils]: 18: Hoare triple {121446#(< ~counter~0 37)} assume !!(#t~post6 < 50);havoc #t~post6; {121446#(< ~counter~0 37)} is VALID [2022-04-28 06:08:51,738 INFO L290 TraceCheckUtils]: 17: Hoare triple {121471#(< ~counter~0 36)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {121446#(< ~counter~0 37)} is VALID [2022-04-28 06:08:51,739 INFO L290 TraceCheckUtils]: 16: Hoare triple {121471#(< ~counter~0 36)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {121471#(< ~counter~0 36)} is VALID [2022-04-28 06:08:51,739 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {120682#true} {121471#(< ~counter~0 36)} #92#return; {121471#(< ~counter~0 36)} is VALID [2022-04-28 06:08:51,739 INFO L290 TraceCheckUtils]: 14: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,739 INFO L290 TraceCheckUtils]: 13: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,739 INFO L290 TraceCheckUtils]: 12: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,739 INFO L272 TraceCheckUtils]: 11: Hoare triple {121471#(< ~counter~0 36)} 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)); {120682#true} is VALID [2022-04-28 06:08:51,740 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {120682#true} {121471#(< ~counter~0 36)} #90#return; {121471#(< ~counter~0 36)} is VALID [2022-04-28 06:08:51,740 INFO L290 TraceCheckUtils]: 9: Hoare triple {120682#true} assume true; {120682#true} is VALID [2022-04-28 06:08:51,740 INFO L290 TraceCheckUtils]: 8: Hoare triple {120682#true} assume !(0 == ~cond); {120682#true} is VALID [2022-04-28 06:08:51,740 INFO L290 TraceCheckUtils]: 7: Hoare triple {120682#true} ~cond := #in~cond; {120682#true} is VALID [2022-04-28 06:08:51,740 INFO L272 TraceCheckUtils]: 6: Hoare triple {121471#(< ~counter~0 36)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {120682#true} is VALID [2022-04-28 06:08:51,740 INFO L290 TraceCheckUtils]: 5: Hoare triple {121471#(< ~counter~0 36)} 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; {121471#(< ~counter~0 36)} is VALID [2022-04-28 06:08:51,741 INFO L272 TraceCheckUtils]: 4: Hoare triple {121471#(< ~counter~0 36)} call #t~ret9 := main(); {121471#(< ~counter~0 36)} is VALID [2022-04-28 06:08:51,741 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {121471#(< ~counter~0 36)} {120682#true} #102#return; {121471#(< ~counter~0 36)} is VALID [2022-04-28 06:08:51,741 INFO L290 TraceCheckUtils]: 2: Hoare triple {121471#(< ~counter~0 36)} assume true; {121471#(< ~counter~0 36)} is VALID [2022-04-28 06:08:51,742 INFO L290 TraceCheckUtils]: 1: Hoare triple {120682#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {121471#(< ~counter~0 36)} is VALID [2022-04-28 06:08:51,742 INFO L272 TraceCheckUtils]: 0: Hoare triple {120682#true} call ULTIMATE.init(); {120682#true} is VALID [2022-04-28 06:08:51,742 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-28 06:08:51,742 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:08:51,742 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1674261491] [2022-04-28 06:08:51,742 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:08:51,743 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1461345800] [2022-04-28 06:08:51,743 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1461345800] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:08:51,743 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:08:51,743 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18] total 34 [2022-04-28 06:08:51,743 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:08:51,743 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1637762005] [2022-04-28 06:08:51,743 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1637762005] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:08:51,743 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:08:51,743 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-28 06:08:51,743 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1127547625] [2022-04-28 06:08:51,743 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:08:51,744 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-28 06:08:51,744 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:08:51,744 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-28 06:08:51,908 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:08:51,908 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-28 06:08:51,908 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:08:51,908 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-28 06:08:51,909 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=501, Invalid=621, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 06:08:51,909 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-28 06:08:56,007 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:08:56,007 INFO L93 Difference]: Finished difference Result 782 states and 1018 transitions. [2022-04-28 06:08:56,007 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-04-28 06:08:56,007 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-28 06:08:56,007 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:08:56,007 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-28 06:08:56,009 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 294 transitions. [2022-04-28 06:08:56,009 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-28 06:08:56,011 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 294 transitions. [2022-04-28 06:08:56,011 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 294 transitions. [2022-04-28 06:08:56,419 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-28 06:08:56,444 INFO L225 Difference]: With dead ends: 782 [2022-04-28 06:08:56,444 INFO L226 Difference]: Without dead ends: 777 [2022-04-28 06:08:56,445 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 280 GetRequests, 237 SyntacticMatches, 0 SemanticMatches, 43 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 98 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=834, Invalid=1146, Unknown=0, NotChecked=0, Total=1980 [2022-04-28 06:08:56,445 INFO L413 NwaCegarLoop]: 72 mSDtfsCounter, 196 mSDsluCounter, 254 mSDsCounter, 0 mSdLazyCounter, 189 mSolverCounterSat, 150 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 196 SdHoareTripleChecker+Valid, 326 SdHoareTripleChecker+Invalid, 339 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 150 IncrementalHoareTripleChecker+Valid, 189 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 06:08:56,445 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [196 Valid, 326 Invalid, 339 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [150 Valid, 189 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 06:08:56,448 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 777 states. [2022-04-28 06:08:59,147 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 777 to 755. [2022-04-28 06:08:59,147 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:08:59,148 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-28 06:08:59,148 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-28 06:08:59,149 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-28 06:08:59,168 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:08:59,168 INFO L93 Difference]: Finished difference Result 777 states and 1012 transitions. [2022-04-28 06:08:59,168 INFO L276 IsEmpty]: Start isEmpty. Operand 777 states and 1012 transitions. [2022-04-28 06:08:59,169 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:08:59,169 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:08:59,169 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-28 06:08:59,170 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-28 06:08:59,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:08:59,189 INFO L93 Difference]: Finished difference Result 777 states and 1012 transitions. [2022-04-28 06:08:59,189 INFO L276 IsEmpty]: Start isEmpty. Operand 777 states and 1012 transitions. [2022-04-28 06:08:59,190 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:08:59,190 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:08:59,190 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:08:59,190 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:08:59,191 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-28 06:08:59,214 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 755 states to 755 states and 986 transitions. [2022-04-28 06:08:59,215 INFO L78 Accepts]: Start accepts. Automaton has 755 states and 986 transitions. Word has length 135 [2022-04-28 06:08:59,215 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:08:59,215 INFO L495 AbstractCegarLoop]: Abstraction has 755 states and 986 transitions. [2022-04-28 06:08:59,215 INFO L496 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-28 06:08:59,215 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 755 states and 986 transitions. [2022-04-28 06:09:21,935 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 986 edges. 982 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-28 06:09:21,935 INFO L276 IsEmpty]: Start isEmpty. Operand 755 states and 986 transitions. [2022-04-28 06:09:21,936 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 138 [2022-04-28 06:09:21,936 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:09:21,937 INFO L195 NwaCegarLoop]: 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-28 06:09:21,966 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-28 06:09:22,137 WARN L477 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-28 06:09:22,137 INFO L420 AbstractCegarLoop]: === Iteration 47 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:09:22,137 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:09:22,137 INFO L85 PathProgramCache]: Analyzing trace with hash -972958086, now seen corresponding path program 21 times [2022-04-28 06:09:22,137 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:09:22,137 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1973753071] [2022-04-28 06:09:22,138 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:09:22,138 INFO L85 PathProgramCache]: Analyzing trace with hash -972958086, now seen corresponding path program 22 times [2022-04-28 06:09:22,138 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:09:22,138 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2066297537] [2022-04-28 06:09:22,138 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:09:22,138 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:09:22,153 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:09:22,153 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1023430396] [2022-04-28 06:09:22,154 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 06:09:22,154 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:09:22,154 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:09:22,154 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-28 06:09:22,196 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-28 06:09:22,218 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 06:09:22,218 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:09:22,219 INFO L263 TraceCheckSpWp]: Trace formula consists of 283 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-28 06:09:22,237 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:09:22,239 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:11:32,617 INFO L272 TraceCheckUtils]: 0: Hoare triple {126175#true} call ULTIMATE.init(); {126175#true} is VALID [2022-04-28 06:11:32,617 INFO L290 TraceCheckUtils]: 1: Hoare triple {126175#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {126175#true} is VALID [2022-04-28 06:11:32,617 INFO L290 TraceCheckUtils]: 2: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:32,617 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {126175#true} {126175#true} #102#return; {126175#true} is VALID [2022-04-28 06:11:32,617 INFO L272 TraceCheckUtils]: 4: Hoare triple {126175#true} call #t~ret9 := main(); {126175#true} is VALID [2022-04-28 06:11:32,618 INFO L290 TraceCheckUtils]: 5: Hoare triple {126175#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; {126175#true} is VALID [2022-04-28 06:11:32,618 INFO L272 TraceCheckUtils]: 6: Hoare triple {126175#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {126175#true} is VALID [2022-04-28 06:11:32,618 INFO L290 TraceCheckUtils]: 7: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:32,618 INFO L290 TraceCheckUtils]: 8: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:32,618 INFO L290 TraceCheckUtils]: 9: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:32,618 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {126175#true} {126175#true} #90#return; {126175#true} is VALID [2022-04-28 06:11:32,618 INFO L272 TraceCheckUtils]: 11: Hoare triple {126175#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)); {126175#true} is VALID [2022-04-28 06:11:32,618 INFO L290 TraceCheckUtils]: 12: Hoare triple {126175#true} ~cond := #in~cond; {126216#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 06:11:32,618 INFO L290 TraceCheckUtils]: 13: Hoare triple {126216#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {126220#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 06:11:32,619 INFO L290 TraceCheckUtils]: 14: Hoare triple {126220#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {126220#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 06:11:32,619 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {126220#(not (= |assume_abort_if_not_#in~cond| 0))} {126175#true} #92#return; {126227#(and (<= 0 main_~A~0) (= (mod main_~A~0 2) 1))} is VALID [2022-04-28 06:11:34,628 WARN L290 TraceCheckUtils]: 16: Hoare triple {126227#(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; {126231#(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-28 06:11:34,629 INFO L290 TraceCheckUtils]: 17: Hoare triple {126231#(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; {126231#(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-28 06:11:34,629 INFO L290 TraceCheckUtils]: 18: Hoare triple {126231#(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 < 50);havoc #t~post6; {126231#(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-28 06:11:34,630 INFO L272 TraceCheckUtils]: 19: Hoare triple {126231#(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)); {126175#true} is VALID [2022-04-28 06:11:34,630 INFO L290 TraceCheckUtils]: 20: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:34,630 INFO L290 TraceCheckUtils]: 21: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:34,630 INFO L290 TraceCheckUtils]: 22: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:34,630 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {126175#true} {126231#(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; {126231#(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-28 06:11:34,631 INFO L290 TraceCheckUtils]: 24: Hoare triple {126231#(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); {126231#(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-28 06:11:34,631 INFO L290 TraceCheckUtils]: 25: Hoare triple {126231#(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; {126231#(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-28 06:11:34,632 INFO L290 TraceCheckUtils]: 26: Hoare triple {126231#(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 < 50);havoc #t~post7; {126231#(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-28 06:11:34,632 INFO L272 TraceCheckUtils]: 27: Hoare triple {126231#(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)); {126175#true} is VALID [2022-04-28 06:11:34,632 INFO L290 TraceCheckUtils]: 28: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:34,632 INFO L290 TraceCheckUtils]: 29: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:34,632 INFO L290 TraceCheckUtils]: 30: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:34,632 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {126175#true} {126231#(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; {126231#(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-28 06:11:34,633 INFO L290 TraceCheckUtils]: 32: Hoare triple {126231#(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); {126231#(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-28 06:11:34,633 INFO L290 TraceCheckUtils]: 33: Hoare triple {126231#(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; {126231#(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-28 06:11:34,634 INFO L290 TraceCheckUtils]: 34: Hoare triple {126231#(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 < 50);havoc #t~post8; {126231#(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-28 06:11:34,634 INFO L272 TraceCheckUtils]: 35: Hoare triple {126231#(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)); {126175#true} is VALID [2022-04-28 06:11:34,634 INFO L290 TraceCheckUtils]: 36: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:34,634 INFO L290 TraceCheckUtils]: 37: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:34,634 INFO L290 TraceCheckUtils]: 38: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:34,634 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {126175#true} {126231#(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; {126231#(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-28 06:11:35,276 INFO L290 TraceCheckUtils]: 40: Hoare triple {126231#(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; {126304#(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-28 06:11:35,284 INFO L290 TraceCheckUtils]: 41: Hoare triple {126304#(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; {126304#(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-28 06:11:35,285 INFO L290 TraceCheckUtils]: 42: Hoare triple {126304#(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 < 50);havoc #t~post8; {126304#(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-28 06:11:35,285 INFO L272 TraceCheckUtils]: 43: Hoare triple {126304#(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)); {126175#true} is VALID [2022-04-28 06:11:35,285 INFO L290 TraceCheckUtils]: 44: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:35,285 INFO L290 TraceCheckUtils]: 45: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:35,285 INFO L290 TraceCheckUtils]: 46: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:35,286 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {126175#true} {126304#(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; {126304#(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-28 06:11:35,286 INFO L290 TraceCheckUtils]: 48: Hoare triple {126304#(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); {126304#(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-28 06:11:35,289 INFO L290 TraceCheckUtils]: 49: Hoare triple {126304#(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; {126304#(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-28 06:11:35,289 INFO L290 TraceCheckUtils]: 50: Hoare triple {126304#(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 < 50);havoc #t~post6; {126304#(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-28 06:11:35,290 INFO L272 TraceCheckUtils]: 51: Hoare triple {126304#(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)); {126175#true} is VALID [2022-04-28 06:11:35,302 INFO L290 TraceCheckUtils]: 52: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:35,303 INFO L290 TraceCheckUtils]: 53: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:35,303 INFO L290 TraceCheckUtils]: 54: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:35,308 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {126175#true} {126304#(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; {126304#(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-28 06:11:35,310 INFO L290 TraceCheckUtils]: 56: Hoare triple {126304#(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); {126304#(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-28 06:11:35,316 INFO L290 TraceCheckUtils]: 57: Hoare triple {126304#(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; {126304#(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-28 06:11:35,319 INFO L290 TraceCheckUtils]: 58: Hoare triple {126304#(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 < 50);havoc #t~post7; {126304#(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-28 06:11:35,319 INFO L272 TraceCheckUtils]: 59: Hoare triple {126304#(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)); {126175#true} is VALID [2022-04-28 06:11:35,319 INFO L290 TraceCheckUtils]: 60: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:35,319 INFO L290 TraceCheckUtils]: 61: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:35,319 INFO L290 TraceCheckUtils]: 62: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:35,320 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {126175#true} {126304#(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; {126304#(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-28 06:11:35,335 INFO L290 TraceCheckUtils]: 64: Hoare triple {126304#(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; {126377#(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-28 06:11:35,345 INFO L290 TraceCheckUtils]: 65: Hoare triple {126377#(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; {126377#(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-28 06:11:35,349 INFO L290 TraceCheckUtils]: 66: Hoare triple {126377#(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 < 50);havoc #t~post7; {126377#(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-28 06:11:35,349 INFO L272 TraceCheckUtils]: 67: Hoare triple {126377#(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)); {126175#true} is VALID [2022-04-28 06:11:35,349 INFO L290 TraceCheckUtils]: 68: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:35,349 INFO L290 TraceCheckUtils]: 69: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:35,350 INFO L290 TraceCheckUtils]: 70: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:35,350 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {126175#true} {126377#(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; {126377#(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-28 06:11:35,396 INFO L290 TraceCheckUtils]: 72: Hoare triple {126377#(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; {126402#(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-28 06:11:35,397 INFO L290 TraceCheckUtils]: 73: Hoare triple {126402#(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; {126402#(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-28 06:11:35,403 INFO L290 TraceCheckUtils]: 74: Hoare triple {126402#(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 < 50);havoc #t~post7; {126402#(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-28 06:11:35,403 INFO L272 TraceCheckUtils]: 75: Hoare triple {126402#(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)); {126175#true} is VALID [2022-04-28 06:11:35,403 INFO L290 TraceCheckUtils]: 76: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:35,403 INFO L290 TraceCheckUtils]: 77: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:35,403 INFO L290 TraceCheckUtils]: 78: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:35,404 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {126175#true} {126402#(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; {126402#(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-28 06:11:35,405 INFO L290 TraceCheckUtils]: 80: Hoare triple {126402#(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); {126402#(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-28 06:11:35,406 INFO L290 TraceCheckUtils]: 81: Hoare triple {126402#(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; {126402#(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-28 06:11:35,406 INFO L290 TraceCheckUtils]: 82: Hoare triple {126402#(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 < 50);havoc #t~post8; {126402#(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-28 06:11:35,406 INFO L272 TraceCheckUtils]: 83: Hoare triple {126402#(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)); {126175#true} is VALID [2022-04-28 06:11:35,406 INFO L290 TraceCheckUtils]: 84: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:35,407 INFO L290 TraceCheckUtils]: 85: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:35,407 INFO L290 TraceCheckUtils]: 86: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:35,407 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {126175#true} {126402#(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; {126402#(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-28 06:11:35,410 INFO L290 TraceCheckUtils]: 88: Hoare triple {126402#(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; {126451#(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-28 06:11:35,431 INFO L290 TraceCheckUtils]: 89: Hoare triple {126451#(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; {126451#(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-28 06:11:35,437 INFO L290 TraceCheckUtils]: 90: Hoare triple {126451#(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 < 50);havoc #t~post8; {126451#(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-28 06:11:35,437 INFO L272 TraceCheckUtils]: 91: Hoare triple {126451#(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)); {126175#true} is VALID [2022-04-28 06:11:35,437 INFO L290 TraceCheckUtils]: 92: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:35,438 INFO L290 TraceCheckUtils]: 93: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:35,438 INFO L290 TraceCheckUtils]: 94: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:35,438 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {126175#true} {126451#(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; {126451#(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-28 06:11:35,439 INFO L290 TraceCheckUtils]: 96: Hoare triple {126451#(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); {126451#(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-28 06:11:36,903 WARN L290 TraceCheckUtils]: 97: Hoare triple {126451#(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; {126451#(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 UNKNOWN [2022-04-28 06:11:36,904 INFO L290 TraceCheckUtils]: 98: Hoare triple {126451#(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 < 50);havoc #t~post6; {126451#(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-28 06:11:36,904 INFO L272 TraceCheckUtils]: 99: Hoare triple {126451#(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)); {126175#true} is VALID [2022-04-28 06:11:36,904 INFO L290 TraceCheckUtils]: 100: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:36,904 INFO L290 TraceCheckUtils]: 101: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:36,904 INFO L290 TraceCheckUtils]: 102: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:36,905 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {126175#true} {126451#(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; {126451#(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-28 06:11:36,908 INFO L290 TraceCheckUtils]: 104: Hoare triple {126451#(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); {126451#(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-28 06:11:36,909 INFO L290 TraceCheckUtils]: 105: Hoare triple {126451#(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; {126451#(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-28 06:11:36,912 INFO L290 TraceCheckUtils]: 106: Hoare triple {126451#(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 < 50);havoc #t~post7; {126451#(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-28 06:11:36,913 INFO L272 TraceCheckUtils]: 107: Hoare triple {126451#(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)); {126175#true} is VALID [2022-04-28 06:11:36,913 INFO L290 TraceCheckUtils]: 108: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:36,913 INFO L290 TraceCheckUtils]: 109: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:36,913 INFO L290 TraceCheckUtils]: 110: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:36,913 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {126175#true} {126451#(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; {126451#(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-28 06:11:37,127 INFO L290 TraceCheckUtils]: 112: Hoare triple {126451#(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; {126524#(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-28 06:11:37,129 INFO L290 TraceCheckUtils]: 113: Hoare triple {126524#(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; {126524#(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-28 06:11:37,130 INFO L290 TraceCheckUtils]: 114: Hoare triple {126524#(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 < 50);havoc #t~post7; {126524#(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-28 06:11:37,130 INFO L272 TraceCheckUtils]: 115: Hoare triple {126524#(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)); {126175#true} is VALID [2022-04-28 06:11:37,130 INFO L290 TraceCheckUtils]: 116: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:37,130 INFO L290 TraceCheckUtils]: 117: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:37,130 INFO L290 TraceCheckUtils]: 118: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:37,131 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {126175#true} {126524#(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; {126524#(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-28 06:11:37,134 INFO L290 TraceCheckUtils]: 120: Hoare triple {126524#(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); {126524#(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-28 06:11:37,135 INFO L290 TraceCheckUtils]: 121: Hoare triple {126524#(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; {126524#(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-28 06:11:37,135 INFO L290 TraceCheckUtils]: 122: Hoare triple {126524#(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 < 50);havoc #t~post8; {126524#(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-28 06:11:37,136 INFO L272 TraceCheckUtils]: 123: Hoare triple {126524#(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)); {126175#true} is VALID [2022-04-28 06:11:37,136 INFO L290 TraceCheckUtils]: 124: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:37,136 INFO L290 TraceCheckUtils]: 125: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:37,136 INFO L290 TraceCheckUtils]: 126: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:37,136 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {126175#true} {126524#(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; {126524#(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-28 06:11:37,142 INFO L290 TraceCheckUtils]: 128: Hoare triple {126524#(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; {126176#false} is VALID [2022-04-28 06:11:37,142 INFO L290 TraceCheckUtils]: 129: Hoare triple {126176#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126176#false} is VALID [2022-04-28 06:11:37,142 INFO L290 TraceCheckUtils]: 130: Hoare triple {126176#false} assume !(#t~post8 < 50);havoc #t~post8; {126176#false} is VALID [2022-04-28 06:11:37,142 INFO L290 TraceCheckUtils]: 131: Hoare triple {126176#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {126176#false} is VALID [2022-04-28 06:11:37,142 INFO L290 TraceCheckUtils]: 132: Hoare triple {126176#false} assume !(#t~post6 < 50);havoc #t~post6; {126176#false} is VALID [2022-04-28 06:11:37,142 INFO L272 TraceCheckUtils]: 133: Hoare triple {126176#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)); {126176#false} is VALID [2022-04-28 06:11:37,142 INFO L290 TraceCheckUtils]: 134: Hoare triple {126176#false} ~cond := #in~cond; {126176#false} is VALID [2022-04-28 06:11:37,142 INFO L290 TraceCheckUtils]: 135: Hoare triple {126176#false} assume 0 == ~cond; {126176#false} is VALID [2022-04-28 06:11:37,143 INFO L290 TraceCheckUtils]: 136: Hoare triple {126176#false} assume !false; {126176#false} is VALID [2022-04-28 06:11:37,155 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-28 06:11:37,156 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:11:41,496 INFO L290 TraceCheckUtils]: 136: Hoare triple {126176#false} assume !false; {126176#false} is VALID [2022-04-28 06:11:41,497 INFO L290 TraceCheckUtils]: 135: Hoare triple {126176#false} assume 0 == ~cond; {126176#false} is VALID [2022-04-28 06:11:41,497 INFO L290 TraceCheckUtils]: 134: Hoare triple {126176#false} ~cond := #in~cond; {126176#false} is VALID [2022-04-28 06:11:41,497 INFO L272 TraceCheckUtils]: 133: Hoare triple {126176#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)); {126176#false} is VALID [2022-04-28 06:11:41,497 INFO L290 TraceCheckUtils]: 132: Hoare triple {126176#false} assume !(#t~post6 < 50);havoc #t~post6; {126176#false} is VALID [2022-04-28 06:11:41,497 INFO L290 TraceCheckUtils]: 131: Hoare triple {126176#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {126176#false} is VALID [2022-04-28 06:11:41,497 INFO L290 TraceCheckUtils]: 130: Hoare triple {126176#false} assume !(#t~post8 < 50);havoc #t~post8; {126176#false} is VALID [2022-04-28 06:11:41,497 INFO L290 TraceCheckUtils]: 129: Hoare triple {126176#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126176#false} is VALID [2022-04-28 06:11:41,513 INFO L290 TraceCheckUtils]: 128: Hoare triple {126621#(not (< main_~r~0 0))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {126176#false} is VALID [2022-04-28 06:11:41,514 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {126175#true} {126621#(not (< main_~r~0 0))} #98#return; {126621#(not (< main_~r~0 0))} is VALID [2022-04-28 06:11:41,514 INFO L290 TraceCheckUtils]: 126: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,514 INFO L290 TraceCheckUtils]: 125: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:41,514 INFO L290 TraceCheckUtils]: 124: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:41,514 INFO L272 TraceCheckUtils]: 123: Hoare triple {126621#(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)); {126175#true} is VALID [2022-04-28 06:11:41,514 INFO L290 TraceCheckUtils]: 122: Hoare triple {126621#(not (< main_~r~0 0))} assume !!(#t~post8 < 50);havoc #t~post8; {126621#(not (< main_~r~0 0))} is VALID [2022-04-28 06:11:41,514 INFO L290 TraceCheckUtils]: 121: Hoare triple {126621#(not (< main_~r~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126621#(not (< main_~r~0 0))} is VALID [2022-04-28 06:11:41,515 INFO L290 TraceCheckUtils]: 120: Hoare triple {126621#(not (< main_~r~0 0))} assume !(~r~0 > 0); {126621#(not (< main_~r~0 0))} is VALID [2022-04-28 06:11:41,515 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {126175#true} {126621#(not (< main_~r~0 0))} #96#return; {126621#(not (< main_~r~0 0))} is VALID [2022-04-28 06:11:41,515 INFO L290 TraceCheckUtils]: 118: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,515 INFO L290 TraceCheckUtils]: 117: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:41,515 INFO L290 TraceCheckUtils]: 116: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:41,515 INFO L272 TraceCheckUtils]: 115: Hoare triple {126621#(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)); {126175#true} is VALID [2022-04-28 06:11:41,516 INFO L290 TraceCheckUtils]: 114: Hoare triple {126621#(not (< main_~r~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {126621#(not (< main_~r~0 0))} is VALID [2022-04-28 06:11:41,516 INFO L290 TraceCheckUtils]: 113: Hoare triple {126621#(not (< main_~r~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {126621#(not (< main_~r~0 0))} is VALID [2022-04-28 06:11:41,518 INFO L290 TraceCheckUtils]: 112: Hoare triple {126670#(<= main_~v~0 main_~r~0)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {126621#(not (< main_~r~0 0))} is VALID [2022-04-28 06:11:41,518 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {126175#true} {126670#(<= main_~v~0 main_~r~0)} #96#return; {126670#(<= main_~v~0 main_~r~0)} is VALID [2022-04-28 06:11:41,518 INFO L290 TraceCheckUtils]: 110: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,518 INFO L290 TraceCheckUtils]: 109: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:41,518 INFO L290 TraceCheckUtils]: 108: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:41,518 INFO L272 TraceCheckUtils]: 107: Hoare triple {126670#(<= 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)); {126175#true} is VALID [2022-04-28 06:11:41,519 INFO L290 TraceCheckUtils]: 106: Hoare triple {126670#(<= main_~v~0 main_~r~0)} assume !!(#t~post7 < 50);havoc #t~post7; {126670#(<= main_~v~0 main_~r~0)} is VALID [2022-04-28 06:11:41,519 INFO L290 TraceCheckUtils]: 105: Hoare triple {126670#(<= main_~v~0 main_~r~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {126670#(<= main_~v~0 main_~r~0)} is VALID [2022-04-28 06:11:41,519 INFO L290 TraceCheckUtils]: 104: Hoare triple {126670#(<= main_~v~0 main_~r~0)} assume !!(0 != ~r~0); {126670#(<= main_~v~0 main_~r~0)} is VALID [2022-04-28 06:11:41,520 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {126175#true} {126670#(<= main_~v~0 main_~r~0)} #94#return; {126670#(<= main_~v~0 main_~r~0)} is VALID [2022-04-28 06:11:41,520 INFO L290 TraceCheckUtils]: 102: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,520 INFO L290 TraceCheckUtils]: 101: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:41,520 INFO L290 TraceCheckUtils]: 100: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:41,520 INFO L272 TraceCheckUtils]: 99: Hoare triple {126670#(<= 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)); {126175#true} is VALID [2022-04-28 06:11:41,520 INFO L290 TraceCheckUtils]: 98: Hoare triple {126670#(<= main_~v~0 main_~r~0)} assume !!(#t~post6 < 50);havoc #t~post6; {126670#(<= main_~v~0 main_~r~0)} is VALID [2022-04-28 06:11:41,521 INFO L290 TraceCheckUtils]: 97: Hoare triple {126670#(<= main_~v~0 main_~r~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {126670#(<= main_~v~0 main_~r~0)} is VALID [2022-04-28 06:11:41,521 INFO L290 TraceCheckUtils]: 96: Hoare triple {126670#(<= main_~v~0 main_~r~0)} assume !(~r~0 < 0); {126670#(<= main_~v~0 main_~r~0)} is VALID [2022-04-28 06:11:41,521 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {126175#true} {126670#(<= main_~v~0 main_~r~0)} #98#return; {126670#(<= main_~v~0 main_~r~0)} is VALID [2022-04-28 06:11:41,521 INFO L290 TraceCheckUtils]: 94: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,521 INFO L290 TraceCheckUtils]: 93: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:41,521 INFO L290 TraceCheckUtils]: 92: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:41,522 INFO L272 TraceCheckUtils]: 91: Hoare triple {126670#(<= 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)); {126175#true} is VALID [2022-04-28 06:11:41,522 INFO L290 TraceCheckUtils]: 90: Hoare triple {126670#(<= main_~v~0 main_~r~0)} assume !!(#t~post8 < 50);havoc #t~post8; {126670#(<= main_~v~0 main_~r~0)} is VALID [2022-04-28 06:11:41,522 INFO L290 TraceCheckUtils]: 89: Hoare triple {126670#(<= main_~v~0 main_~r~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126670#(<= main_~v~0 main_~r~0)} is VALID [2022-04-28 06:11:41,541 INFO L290 TraceCheckUtils]: 88: Hoare triple {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {126670#(<= main_~v~0 main_~r~0)} is VALID [2022-04-28 06:11:41,542 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {126175#true} {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} #98#return; {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:11:41,542 INFO L290 TraceCheckUtils]: 86: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,542 INFO L290 TraceCheckUtils]: 85: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:41,542 INFO L290 TraceCheckUtils]: 84: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:41,542 INFO L272 TraceCheckUtils]: 83: Hoare triple {126743#(<= 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)); {126175#true} is VALID [2022-04-28 06:11:41,543 INFO L290 TraceCheckUtils]: 82: Hoare triple {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} assume !!(#t~post8 < 50);havoc #t~post8; {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:11:41,543 INFO L290 TraceCheckUtils]: 81: Hoare triple {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:11:41,543 INFO L290 TraceCheckUtils]: 80: Hoare triple {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} assume !(~r~0 > 0); {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:11:41,544 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {126175#true} {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} #96#return; {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:11:41,544 INFO L290 TraceCheckUtils]: 78: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,544 INFO L290 TraceCheckUtils]: 77: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:41,544 INFO L290 TraceCheckUtils]: 76: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:41,544 INFO L272 TraceCheckUtils]: 75: Hoare triple {126743#(<= 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)); {126175#true} is VALID [2022-04-28 06:11:41,544 INFO L290 TraceCheckUtils]: 74: Hoare triple {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} assume !!(#t~post7 < 50);havoc #t~post7; {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:11:41,544 INFO L290 TraceCheckUtils]: 73: Hoare triple {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:11:41,545 INFO L290 TraceCheckUtils]: 72: Hoare triple {126792#(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; {126743#(<= main_~v~0 (+ main_~u~0 main_~r~0))} is VALID [2022-04-28 06:11:41,546 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {126175#true} {126792#(or (not (< 0 main_~r~0)) (<= (+ (* main_~v~0 2) 2) (+ main_~u~0 main_~r~0)))} #96#return; {126792#(or (not (< 0 main_~r~0)) (<= (+ (* main_~v~0 2) 2) (+ main_~u~0 main_~r~0)))} is VALID [2022-04-28 06:11:41,546 INFO L290 TraceCheckUtils]: 70: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,546 INFO L290 TraceCheckUtils]: 69: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:41,546 INFO L290 TraceCheckUtils]: 68: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:41,546 INFO L272 TraceCheckUtils]: 67: Hoare triple {126792#(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)); {126175#true} is VALID [2022-04-28 06:11:41,547 INFO L290 TraceCheckUtils]: 66: Hoare triple {126792#(or (not (< 0 main_~r~0)) (<= (+ (* main_~v~0 2) 2) (+ main_~u~0 main_~r~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {126792#(or (not (< 0 main_~r~0)) (<= (+ (* main_~v~0 2) 2) (+ main_~u~0 main_~r~0)))} is VALID [2022-04-28 06:11:41,547 INFO L290 TraceCheckUtils]: 65: Hoare triple {126792#(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; {126792#(or (not (< 0 main_~r~0)) (<= (+ (* main_~v~0 2) 2) (+ main_~u~0 main_~r~0)))} is VALID [2022-04-28 06:11:41,548 INFO L290 TraceCheckUtils]: 64: Hoare triple {126817#(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; {126792#(or (not (< 0 main_~r~0)) (<= (+ (* main_~v~0 2) 2) (+ main_~u~0 main_~r~0)))} is VALID [2022-04-28 06:11:41,548 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {126175#true} {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} #96#return; {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-28 06:11:41,549 INFO L290 TraceCheckUtils]: 62: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,549 INFO L290 TraceCheckUtils]: 61: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:41,549 INFO L290 TraceCheckUtils]: 60: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:41,549 INFO L272 TraceCheckUtils]: 59: Hoare triple {126817#(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)); {126175#true} is VALID [2022-04-28 06:11:41,549 INFO L290 TraceCheckUtils]: 58: Hoare triple {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} assume !!(#t~post7 < 50);havoc #t~post7; {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-28 06:11:41,550 INFO L290 TraceCheckUtils]: 57: Hoare triple {126817#(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; {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-28 06:11:41,550 INFO L290 TraceCheckUtils]: 56: Hoare triple {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} assume !!(0 != ~r~0); {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-28 06:11:41,550 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {126175#true} {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} #94#return; {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-28 06:11:41,550 INFO L290 TraceCheckUtils]: 54: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,550 INFO L290 TraceCheckUtils]: 53: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:41,551 INFO L290 TraceCheckUtils]: 52: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:41,551 INFO L272 TraceCheckUtils]: 51: Hoare triple {126817#(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)); {126175#true} is VALID [2022-04-28 06:11:41,551 INFO L290 TraceCheckUtils]: 50: Hoare triple {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} assume !!(#t~post6 < 50);havoc #t~post6; {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-28 06:11:41,551 INFO L290 TraceCheckUtils]: 49: Hoare triple {126817#(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; {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-28 06:11:41,552 INFO L290 TraceCheckUtils]: 48: Hoare triple {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} assume !(~r~0 < 0); {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-28 06:11:41,552 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {126175#true} {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} #98#return; {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-28 06:11:41,552 INFO L290 TraceCheckUtils]: 46: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,552 INFO L290 TraceCheckUtils]: 45: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:41,552 INFO L290 TraceCheckUtils]: 44: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:41,552 INFO L272 TraceCheckUtils]: 43: Hoare triple {126817#(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)); {126175#true} is VALID [2022-04-28 06:11:41,553 INFO L290 TraceCheckUtils]: 42: Hoare triple {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} assume !!(#t~post8 < 50);havoc #t~post8; {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-28 06:11:41,553 INFO L290 TraceCheckUtils]: 41: Hoare triple {126817#(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; {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-28 06:11:41,556 INFO L290 TraceCheckUtils]: 40: Hoare triple {126890#(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; {126817#(or (<= main_~r~0 main_~v~0) (<= (+ main_~v~0 2) (div (+ (- 1) main_~u~0) 2)))} is VALID [2022-04-28 06:11:41,557 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {126175#true} {126890#(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; {126890#(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-28 06:11:41,557 INFO L290 TraceCheckUtils]: 38: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,557 INFO L290 TraceCheckUtils]: 37: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:41,557 INFO L290 TraceCheckUtils]: 36: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:41,557 INFO L272 TraceCheckUtils]: 35: Hoare triple {126890#(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)); {126175#true} is VALID [2022-04-28 06:11:41,557 INFO L290 TraceCheckUtils]: 34: Hoare triple {126890#(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 < 50);havoc #t~post8; {126890#(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-28 06:11:41,558 INFO L290 TraceCheckUtils]: 33: Hoare triple {126890#(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; {126890#(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-28 06:11:41,558 INFO L290 TraceCheckUtils]: 32: Hoare triple {126890#(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); {126890#(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-28 06:11:41,558 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {126175#true} {126890#(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; {126890#(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-28 06:11:41,558 INFO L290 TraceCheckUtils]: 30: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,559 INFO L290 TraceCheckUtils]: 29: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:41,559 INFO L290 TraceCheckUtils]: 28: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:41,559 INFO L272 TraceCheckUtils]: 27: Hoare triple {126890#(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)); {126175#true} is VALID [2022-04-28 06:11:41,559 INFO L290 TraceCheckUtils]: 26: Hoare triple {126890#(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 < 50);havoc #t~post7; {126890#(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-28 06:11:41,559 INFO L290 TraceCheckUtils]: 25: Hoare triple {126890#(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; {126890#(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-28 06:11:41,560 INFO L290 TraceCheckUtils]: 24: Hoare triple {126890#(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); {126890#(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-28 06:11:41,560 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {126175#true} {126890#(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; {126890#(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-28 06:11:41,560 INFO L290 TraceCheckUtils]: 22: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,560 INFO L290 TraceCheckUtils]: 21: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:41,560 INFO L290 TraceCheckUtils]: 20: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:41,561 INFO L272 TraceCheckUtils]: 19: Hoare triple {126890#(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)); {126175#true} is VALID [2022-04-28 06:11:41,561 INFO L290 TraceCheckUtils]: 18: Hoare triple {126890#(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 < 50);havoc #t~post6; {126890#(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-28 06:11:41,561 INFO L290 TraceCheckUtils]: 17: Hoare triple {126890#(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; {126890#(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-28 06:11:41,562 INFO L290 TraceCheckUtils]: 16: Hoare triple {126963#(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; {126890#(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-28 06:11:41,564 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {126220#(not (= |assume_abort_if_not_#in~cond| 0))} {126175#true} #92#return; {126963#(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-28 06:11:41,564 INFO L290 TraceCheckUtils]: 14: Hoare triple {126220#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {126220#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 06:11:41,564 INFO L290 TraceCheckUtils]: 13: Hoare triple {126976#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {126220#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 06:11:41,565 INFO L290 TraceCheckUtils]: 12: Hoare triple {126175#true} ~cond := #in~cond; {126976#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 06:11:41,565 INFO L272 TraceCheckUtils]: 11: Hoare triple {126175#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)); {126175#true} is VALID [2022-04-28 06:11:41,565 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {126175#true} {126175#true} #90#return; {126175#true} is VALID [2022-04-28 06:11:41,565 INFO L290 TraceCheckUtils]: 9: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,565 INFO L290 TraceCheckUtils]: 8: Hoare triple {126175#true} assume !(0 == ~cond); {126175#true} is VALID [2022-04-28 06:11:41,565 INFO L290 TraceCheckUtils]: 7: Hoare triple {126175#true} ~cond := #in~cond; {126175#true} is VALID [2022-04-28 06:11:41,565 INFO L272 TraceCheckUtils]: 6: Hoare triple {126175#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {126175#true} is VALID [2022-04-28 06:11:41,565 INFO L290 TraceCheckUtils]: 5: Hoare triple {126175#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; {126175#true} is VALID [2022-04-28 06:11:41,565 INFO L272 TraceCheckUtils]: 4: Hoare triple {126175#true} call #t~ret9 := main(); {126175#true} is VALID [2022-04-28 06:11:41,565 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {126175#true} {126175#true} #102#return; {126175#true} is VALID [2022-04-28 06:11:41,565 INFO L290 TraceCheckUtils]: 2: Hoare triple {126175#true} assume true; {126175#true} is VALID [2022-04-28 06:11:41,565 INFO L290 TraceCheckUtils]: 1: Hoare triple {126175#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;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; {126175#true} is VALID [2022-04-28 06:11:41,565 INFO L272 TraceCheckUtils]: 0: Hoare triple {126175#true} call ULTIMATE.init(); {126175#true} is VALID [2022-04-28 06:11:41,566 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-28 06:11:41,566 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:11:41,566 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2066297537] [2022-04-28 06:11:41,566 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:11:41,566 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1023430396] [2022-04-28 06:11:41,566 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1023430396] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:11:41,566 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:11:41,566 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 19 [2022-04-28 06:11:41,567 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:11:41,567 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1973753071] [2022-04-28 06:11:41,567 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1973753071] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:11:41,567 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:11:41,567 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 06:11:41,567 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2072857393] [2022-04-28 06:11:41,567 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:11:41,567 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-28 06:11:41,567 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:11:41,567 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-28 06:11:50,079 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 94 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-04-28 06:11:50,079 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 06:11:50,079 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:11:50,079 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 06:11:50,080 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=52, Invalid=290, Unknown=0, NotChecked=0, Total=342 [2022-04-28 06:11:50,080 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) [2022-04-28 06:12:00,241 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 06:12:09,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:12:09,259 INFO L93 Difference]: Finished difference Result 1012 states and 1372 transitions. [2022-04-28 06:12:09,259 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 06:12:09,259 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-28 06:12:09,259 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:12:09,259 INFO L82 GeneralOperation]: Start removeUnreachable. 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) [2022-04-28 06:12:09,260 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 161 transitions. [2022-04-28 06:12:09,260 INFO L82 GeneralOperation]: Start removeUnreachable. 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) [2022-04-28 06:12:09,261 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 161 transitions. [2022-04-28 06:12:09,261 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 161 transitions. [2022-04-28 06:12:15,828 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 161 edges. 158 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-28 06:12:15,891 INFO L225 Difference]: With dead ends: 1012 [2022-04-28 06:12:15,891 INFO L226 Difference]: Without dead ends: 899 [2022-04-28 06:12:15,892 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 276 GetRequests, 256 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 45 ImplicationChecksByTransitivity, 4.0s TimeCoverageRelationStatistics Valid=70, Invalid=392, Unknown=0, NotChecked=0, Total=462 [2022-04-28 06:12:15,892 INFO L413 NwaCegarLoop]: 76 mSDtfsCounter, 28 mSDsluCounter, 391 mSDsCounter, 0 mSdLazyCounter, 56 mSolverCounterSat, 5 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 467 SdHoareTripleChecker+Invalid, 259 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 56 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 197 IncrementalHoareTripleChecker+Unchecked, 2.8s IncrementalHoareTripleChecker+Time [2022-04-28 06:12:15,904 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [31 Valid, 467 Invalid, 259 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 56 Invalid, 1 Unknown, 197 Unchecked, 2.8s Time] [2022-04-28 06:12:15,904 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 899 states. [2022-04-28 06:12:18,856 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 899 to 762. [2022-04-28 06:12:18,856 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:12:18,857 INFO L82 GeneralOperation]: Start isEquivalent. First operand 899 states. Second operand has 762 states, 566 states have (on average 1.1784452296819787) internal successors, (667), 584 states have internal predecessors, (667), 165 states have call successors, (165), 32 states have call predecessors, (165), 30 states have return successors, (163), 145 states have call predecessors, (163), 163 states have call successors, (163) [2022-04-28 06:12:18,857 INFO L74 IsIncluded]: Start isIncluded. First operand 899 states. Second operand has 762 states, 566 states have (on average 1.1784452296819787) internal successors, (667), 584 states have internal predecessors, (667), 165 states have call successors, (165), 32 states have call predecessors, (165), 30 states have return successors, (163), 145 states have call predecessors, (163), 163 states have call successors, (163) [2022-04-28 06:12:18,858 INFO L87 Difference]: Start difference. First operand 899 states. Second operand has 762 states, 566 states have (on average 1.1784452296819787) internal successors, (667), 584 states have internal predecessors, (667), 165 states have call successors, (165), 32 states have call predecessors, (165), 30 states have return successors, (163), 145 states have call predecessors, (163), 163 states have call successors, (163) [2022-04-28 06:12:18,886 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:12:18,886 INFO L93 Difference]: Finished difference Result 899 states and 1204 transitions. [2022-04-28 06:12:18,886 INFO L276 IsEmpty]: Start isEmpty. Operand 899 states and 1204 transitions. [2022-04-28 06:12:18,887 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:12:18,887 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:12:18,887 INFO L74 IsIncluded]: Start isIncluded. First operand has 762 states, 566 states have (on average 1.1784452296819787) internal successors, (667), 584 states have internal predecessors, (667), 165 states have call successors, (165), 32 states have call predecessors, (165), 30 states have return successors, (163), 145 states have call predecessors, (163), 163 states have call successors, (163) Second operand 899 states. [2022-04-28 06:12:18,888 INFO L87 Difference]: Start difference. First operand has 762 states, 566 states have (on average 1.1784452296819787) internal successors, (667), 584 states have internal predecessors, (667), 165 states have call successors, (165), 32 states have call predecessors, (165), 30 states have return successors, (163), 145 states have call predecessors, (163), 163 states have call successors, (163) Second operand 899 states. [2022-04-28 06:12:18,913 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:12:18,913 INFO L93 Difference]: Finished difference Result 899 states and 1204 transitions. [2022-04-28 06:12:18,913 INFO L276 IsEmpty]: Start isEmpty. Operand 899 states and 1204 transitions. [2022-04-28 06:12:18,914 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:12:18,914 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:12:18,914 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:12:18,914 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:12:18,914 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 762 states, 566 states have (on average 1.1784452296819787) internal successors, (667), 584 states have internal predecessors, (667), 165 states have call successors, (165), 32 states have call predecessors, (165), 30 states have return successors, (163), 145 states have call predecessors, (163), 163 states have call successors, (163) [2022-04-28 06:12:18,937 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 762 states to 762 states and 995 transitions. [2022-04-28 06:12:18,938 INFO L78 Accepts]: Start accepts. Automaton has 762 states and 995 transitions. Word has length 137 [2022-04-28 06:12:18,938 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:12:18,938 INFO L495 AbstractCegarLoop]: Abstraction has 762 states and 995 transitions. [2022-04-28 06:12:18,938 INFO L496 AbstractCegarLoop]: INTERPOLANT 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) [2022-04-28 06:12:18,938 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 762 states and 995 transitions.