{"certification":{"candidate":{"gauge":{"kind":"none"},"index_shift":0,"operator":{"schedule":{"first_degree":0,"first_index":0,"step":1},"shape":"reversal"},"parent":{"first_index":0,"initial_polynomials":[["1"],["1","1"]],"recurrence":{"terms":[{"coeff":{"coeffs":[["1","1"]]},"deriv_order":0,"offset":1,"sign":"none"},{"coeff":{"coeffs":[["0","6"]]},"deriv_order":0,"offset":2,"sign":"none"}]},"schema":"polytool.recurrence.v1"},"parent_name":"Pascal-(1,6,1) array."},"identifying_rows":1,"identity":{"certificate":{"certificate":{"dividend_relation":{"terms":[{"coeff":{"coeffs":[["-1","-1"],["5","1"],["-7","0"]]},"deriv_order":0,"shift":0},{"coeff":{"coeffs":[["0","-39","-3"],["1","26","1"]]},"deriv_order":1,"shift":0},{"coeff":{"coeffs":[["0","-1","-26","-1"]]},"deriv_order":2,"shift":0},{"coeff":{"coeffs":[["1"],["1"]]},"deriv_order":0,"shift":1}]},"exceptional_bases":[],"gauge":{"kind":"none"},"identifying_indices":[0],"index_shift":0,"input":{"first_index":0,"initial_polynomials":[["1"]],"recurrence":{"denominator":{"coeffs":[["0"],["1"]]},"terms":[{"coeff":{"coeffs":[["0","0","1"],["1","-6","-1"],["0","7","0"]]},"deriv_order":0,"offset":1,"sign":"none"},{"coeff":{"coeffs":[["0","0","39","3"],["0","-1","-26","-1"]]},"deriv_order":1,"offset":1,"sign":"none"},{"coeff":{"coeffs":[["0","0","1","26","1"]]},"deriv_order":2,"offset":1,"sign":"none"}]},"schema":"polytool.recurrence.v1"},"input_valid_from_base":0,"multiplier":["1","1"],"operator":{"schedule":{"first_degree":0,"first_index":0,"step":1},"shape":"reversal"},"parent":{"first_index":0,"initial_polynomials":[["1"],["1","1"]],"recurrence":{"terms":[{"coeff":{"coeffs":[["1","1"]]},"deriv_order":0,"offset":1,"sign":"none"},{"coeff":{"coeffs":[["0","6"]]},"deriv_order":0,"offset":2,"sign":"none"}]},"schema":"polytool.recurrence.v1"},"parent_leader_shift":2,"parent_valid_from_base":0,"quotients":[],"row_annihilation":{"kind":"system","system":{"generators":[{"annihilator":{"terms":[{"coeff":{"coeffs":[["-1","-1"],["5","1"],["-7","0"]]},"deriv_order":0,"shift":0},{"coeff":{"coeffs":[["0","-39","-3"],["1","26","1"]]},"deriv_order":1,"shift":0},{"coeff":{"coeffs":[["0","-1","-26","-1"]]},"deriv_order":2,"shift":0},{"coeff":{"coeffs":[["1"],["1"]]},"deriv_order":0,"shift":1}]},"quotient":[{"coeff":{"coeffs":[["1"],["1"]]},"deriv_order":0}],"step_multiplier":{"coeffs":[["0","0","0","-1","-75","-1800","-11872","45150","-45150","11872","1800","75","1"],["0","0","0","-3","-225","-5400","-35616","135450","-135450","35616","5400","225","3"],["0","0","0","-3","-225","-5400","-35616","135450","-135450","35616","5400","225","3"],["0","0","0","-1","-75","-1800","-11872","45150","-45150","11872","1800","75","1"]]},"step_quotients":[[{"coeff":{"coeffs":[["0","0","0","1","73","1650","8272","-68894","135450","-102172","21944","3525","149","2"],["0","0","0","10","744","17550","107920","-522732","722400","-389620","53232","10050","440","6"],["0","0","0","24","1794","42750","274128","-1154832","1354500","-555828","28032","9000","426","6"],["0","0","0","22","1648","39450","257584","-1017044","1083600","-351484","-15856","1950","128","2"],["0","0","0","7","525","12600","83104","-316050","316050","-83104","-12600","-525","-7","0"]]},"deriv_order":0},{"coeff":{"coeffs":[["0","0","0","-1","-62","-823","11678","203086","-608356","508522","-62236","-47069","-4574","-163","-2"],["0","0","0","-3","-225","-5397","-35391","140850","-99834","-99834","140850","-35391","-5397","-225","-3"],["0","0","0","-3","-264","-8325","-105816","-327558","1625400","-1725234","468408","70425","2928","39","0"],["0","0","0","-1","-101","-3751","-58747","-265322","1116878","-1116878","265322","58747","3751","101","1"]]},"deriv_order":1},{"coeff":{"coeffs":[["0","0","0","0","1","101","3751","58747","265322","-1116878","1116878","-265322","-58747","-3751","-101","-1"],["0","0","0","0","2","202","7502","117494","530644","-2233756","2233756","-530644","-117494","-7502","-202","-2"],["0","0","0","0","1","101","3751","58747","265322","-1116878","1116878","-265322","-58747","-3751","-101","-1"]]},"deriv_order":2}],[{"coeff":{"coeffs":[["0","0","0","-1","-61","-722","15470","264964","-264964","-15470","722","61","1"],["0","0","0","-10","-715","-15298","-49826","1014706","-891128","-59542","1634","176","3"],["0","0","0","-24","-1779","-41562","-242298","1454334","-1083600","-85806","570","162","3"],["0","0","0","-22","-1657","-40118","-273238","924406","-553672","-54866","-874","40","1"],["0","0","0","-7","-532","-13132","-96236","219814","-96236","-13132","-532","-7","0"]]},"deriv_order":0},{"coeff":{"coeffs":[["0","0","0","1","62","783","-14748","-280434","0","280434","14748","-783","-62","-1"],["0","0","0","3","226","5419","33104","-232946","-788956","888790","92096","2287","-22","-1"],["0","0","0","3","266","8489","110452","375410","-1577912","936278","139948","6923","142","1"],["0","0","0","1","102","3853","62600","327922","-788956","327922","62600","3853","102","1"]]},"deriv_order":1},{"coeff":{"coeffs":[["0","0","0","0","-1","-102","-3853","-62600","-327922","788956","-327922","-62600","-3853","-102","-1"],["0","0","0","0","-2","-204","-7706","-125200","-655844","1577912","-655844","-125200","-7706","-204","-2"],["0","0","0","0","-1","-102","-3853","-62600","-327922","788956","-327922","-62600","-3853","-102","-1"]]},"deriv_order":2}]]},{"annihilator":{"terms":[{"coeff":{"coeffs":[["0","0","0"],["6","9","-1"],["-7","7","0"]]},"deriv_order":0,"shift":0},{"coeff":{"coeffs":[["0","-40","10","2"],["1","25","-25","-1"]]},"deriv_order":1,"shift":0},{"coeff":{"coeffs":[["0","-1","-25","25","1"]]},"deriv_order":2,"shift":0}]},"quotient":[],"step_multiplier":{"coeffs":[["0","0","0","-1","-75","-1800","-11872","45150","-45150","11872","1800","75","1"],["0","0","0","-3","-225","-5400","-35616","135450","-135450","35616","5400","225","3"],["0","0","0","-3","-225","-5400","-35616","135450","-135450","35616","5400","225","3"],["0","0","0","-1","-75","-1800","-11872","45150","-45150","11872","1800","75","1"]]},"step_quotients":[[{"coeff":{"coeffs":[["0","0","0","1","59","601","-16853","-233302","779422","-779422","233302","16853","-601","-59","-1"],["0","0","0","10","695","13878","19945","-1099060","2970366","-2737420","770410","62634","-1285","-170","-3"],["0","0","0","24","1731","38028","160953","-1897368","4234566","-3535728","911418","86784","-249","-156","-3"],["0","0","0","22","1613","36826","194659","-1430764","2675722","-1976884","444814","53078","953","-38","-1"],["0","0","0","7","518","12075","70504","-399154","632100","-399154","70504","12075","518","7","0"]]},"deriv_order":0},{"coeff":{"coeffs":[["0","0","0","-1","-60","-660","16252","250155","-546120","0","546120","-250155","-16252","660","60","1"],["0","0","0","-3","-220","-4970","-22492","293735","289960","-2233756","2474440","-706885","-87500","-2330","20","1"],["0","0","0","-3","-260","-7960","-93740","-162995","2218280","-4467512","3310520","-663305","-126244","-6640","-140","-1"],["0","0","0","-1","-100","-3650","-54996","-206575","1382200","-2233756","1382200","-206575","-54996","-3650","-100","-1"]]},"deriv_order":1},{"coeff":{"coeffs":[["0","0","0","0","1","100","3650","54996","206575","-1382200","2233756","-1382200","206575","54996","3650","100","1"],["0","0","0","0","2","200","7300","109992","413150","-2764400","4467512","-2764400","413150","109992","7300","200","2"],["0","0","0","0","1","100","3650","54996","206575","-1382200","2233756","-1382200","206575","54996","3650","100","1"]]},"deriv_order":2}],[{"coeff":{"coeffs":[["0","0","0","-1","-47","328","40656","430094","-924406","396816","54328","2203","29"],["0","0","0","-10","-666","-11616","38864","1606332","-3089268","1273552","175584","7134","94"],["0","0","0","-24","-1716","-36816","-127344","2238432","-3721368","1439760","200784","8184","108"],["0","0","0","-22","-1622","-37472","-208656","1378244","-1872556","646128","92128","3778","50"],["0","0","0","-7","-525","-12600","-83104","316050","-316050","83104","12600","525","7"]]},"deriv_order":0},{"coeff":{"coeffs":[["0","0","0","1","60","619","-19384","-328286","-47488","1069390","-593608","-78131","-3132","-41","0"],["0","0","0","3","221","4989","19979","-391250","-1211854","3255658","-1452538","-215009","-10015","-183","-1"],["0","0","0","3","262","8121","98110","202358","-2281244","3303146","-1124252","-195625","-10634","-243","-2"],["0","0","0","1","101","3751","58747","265322","-1116878","1116878","-265322","-58747","-3751","-101","-1"]]},"deriv_order":1},{"coeff":{"coeffs":[["0","0","0","0","-1","-101","-3751","-58747","-265322","1116878","-1116878","265322","58747","3751","101","1"],["0","0","0","0","-2","-202","-7502","-117494","-530644","2233756","-2233756","530644","117494","7502","202","2"],["0","0","0","0","-1","-101","-3751","-58747","-265322","1116878","-1116878","265322","58747","3751","101","1"]]},"deriv_order":2}]]}],"restart_bases":[],"row_multiplier":{"coeffs":[["1"]]},"start_base":0}},"shifted_parent_relation":{"terms":[{"coeff":{"coeffs":[["0","-6"]]},"deriv_order":0,"shift":0},{"coeff":{"coeffs":[["-1","-1"]]},"deriv_order":0,"shift":1},{"coeff":{"coeffs":[["1"]]},"deriv_order":0,"shift":2}]},"statement":"w(n) E = sum_nu H_nu S^nu L' (with any remainder removed by row annihilators of the parent), where L' is the parent rule at P'_n = P_(n+0) (valid from base 0) and E the input rule gauged by lambda(n)/delta(n) and composed with (or conjugated through) T = x^(d_n) P(1/x), d_n = 0 + 1 (n - 0); so the candidate rows satisfy the input rule at every base n >= 0 (the exceptional bases checked exactly), and agreement on the 1 identifying rows gives Q_n = lambda(n) T_n(P_(n+0)) for every n >= 0"},"method":"operator_division"},"status":"certified"},"input_first_index":0,"interlacing":{"reason":"the schedule d_n depends on n","status":"none"},"lean_declarations":["RealRooted.X_pow_mul_reverse_eq_zero_or_splits","RealRooted.reflect_eq_zero_or_splits"],"lean_route":"reversed","lift_summary":{"hypotheses":[{"evidence":"lambda(n) = 1","name":"gauge_finite_nonzero","statement":"lambda(n) is finite and nonzero for every n >= n0","status":{"kind":"verified"}}],"identity":{"method":"forward_division","status":"certified"},"input_first_index":0,"input_interlacing":{"reason":"the schedule d_n depends on n","status":"not_proved"},"lean_replay":"not_attempted","operation":{"description":"x^(d_n) P(1/x), d_n = 0 + 1 (n - 0)","kind":"preserver_image","operator":{"schedule":{"first_degree":0,"first_index":0,"step":1},"shape":"reversal"}},"parent":{"gauge":{"kind":"none"},"index_shift":0,"recurrence":{"first_index":0,"initial_polynomials":[["1"],["1","1"]],"recurrence":{"terms":[{"coeff":{"coeffs":[["1","1"]]},"deriv_order":0,"offset":1,"sign":"none"},{"coeff":{"coeffs":[["0","6"]]},"deriv_order":0,"offset":2,"sign":"none"}]},"schema":"polytool.recurrence.v1"},"relation":"Q_n = lambda(n) T_n(P_(n+0)) with T = x^(d_n) P(1/x), d_n = 0 + 1 (n - 0), for every n >= 0"},"parent_proof":{"route":"liu_wang_derivative_lag","statement":"every parent row P_n, n >= 0, is zero or real-rooted with coefficients of one sign","status":"proved"},"root_transfer":{"input_conclusion":"every Q_n, n >= 0, is zero or real-rooted with roots in (-inf, 0]","input_root_region":{"upper":{"closed":true,"value":"0"}},"parent_hypothesis":"every parent row used is zero or real-rooted with all roots in (-inf, 0] (coefficients of one sign)","parent_root_region":{"upper":{"closed":true,"value":"0"}},"theorem":"a real affine substitution x -> a x + b (a != 0), the reversal x^d p(1/x) (d >= deg p) and a real Mobius map (c x + e)^d p((a x + b)/(c x + e)) (a e - b c != 0, d >= deg p) map real roots to real roots: a root r of p gives the root (r - b)/a, 1/r (and 0) or (e r - b)/(a - c r) (and -e/c); for an input row that is a polynomial the degree condition holds automatically"},"verdict":"proved"},"notes":["the division remainder is removed by row annihilators of the shifted parent"],"parent_interlacing_report":{"conclusion":{"first_index":0,"interlacing":"strict","interlacing_from":1,"root_region":{"upper":{"closed":false,"value":"0"}},"simple_roots":true,"statement":"every P_n, n >= 0, is nonzero and real-rooted with every root in (-inf, 0) (so its coefficients have one sign); for n >= 1, P_n has simple roots and P_(n-1) strictly interlaces P_n (no common root), and deg P_n = deg P_(n-1) + 1 for n >= 2"},"hypotheses":[{"evidence":"checked exactly","name":"seed_roots_negative","statement":"P_0 and P_1 are nonzero and real-rooted with every root < 0","status":{"kind":"verified"}},{"evidence":"degrees 0 and 1, leading coefficients of one sign","name":"seed_degree_step","statement":"deg P_1 = deg P_0 + 1, with leading coefficients of one sign","status":{"kind":"verified"}},{"evidence":"Bezout test, exact","name":"seed_strict_interlacing","statement":"P_0 strictly interlaces P_1 (simple real roots, no common root)","status":{"kind":"verified"}},{"evidence":"lambda_n = 1 > 0 for every integer n in [2, +inf) (exact; Taylor shift: the coefficients of lambda_n = 1 at n = 2 + u have one sign)","name":"degree_step_positive","sign_decision":{"certificate":{"condition":"positive","denominator":["1"],"method":{"kind":"taylor_shift","shifted_denominator":["1"],"shifted_numerator":["1"]},"numerator":["1"],"range":{"first":"2","last":null}},"decision":"holds"},"statement":"lambda_n = [x^1] A_n + (deg P_(n-1)) [x^2] V_n > 0 for every n >= 2 (deg P_n = deg P_(n-1) + 1 with leading coefficients of one sign)","status":{"kind":"verified"}},{"evidence":"[x^0] c_1 and [x^0] c_2 are zero polynomials","name":"multipliers_vanish_at_zero","statement":"V_n(0) = 0 and W_n(0) = 0 for every n >= 2","status":{"kind":"verified"}},{"evidence":"A_n(0) = 1 > 0 for every integer n in [2, +inf) (exact; Taylor shift: the coefficients of A_n(0) = 1 at n = 2 + u have one sign)","name":"constant_term_positive","sign_decision":{"certificate":{"condition":"positive","denominator":["1"],"method":{"kind":"taylor_shift","shifted_denominator":["1"],"shifted_numerator":["1"]},"numerator":["1"],"range":{"first":"2","last":null}},"decision":"holds"},"statement":"A_n(0) > 0 for every n >= 2","status":{"kind":"verified"}},{"evidence":"V_n = 0","name":"derivative_coefficient_nonpositive","statement":"V_n(x) <= 0 for every x < 0 and every n >= 2","status":{"kind":"verified"}},{"evidence":"W_n(x) = gamma(n) w(x) / f(n) with w(x) = 6 x, which is negative on (-inf, 0) (no root there, exact): gamma(n)/f(n) = 1 >= 0 for every integer n in [2, +inf) (exact; Taylor shift: the coefficients of gamma(n)/f(n) = 1 at n = 2 + u have one sign)","name":"lag_coefficient_nonpositive","sign_decision":{"certificate":{"condition":"nonnegative","denominator":["1"],"method":{"kind":"taylor_shift","shifted_denominator":["1"],"shifted_numerator":["1"]},"numerator":["1"],"range":{"first":"2","last":null}},"decision":"holds"},"statement":"W_n(x) <= 0 for every x < 0 and every n >= 2","status":{"kind":"verified"}},{"evidence":"W_n(x) = gamma(n) w(x) / f(n) with w(x) = 6 x, which is negative on (-inf, 0) (no root there, exact): gamma(n)/f(n) = 1 > 0 for every integer n in [2, +inf) (exact; Taylor shift: the coefficients of gamma(n)/f(n) = 1 at n = 2 + u have one sign)","name":"derivative_or_lag_coefficient_negative","sign_decision":{"certificate":{"condition":"positive","denominator":["1"],"method":{"kind":"taylor_shift","shifted_denominator":["1"],"shifted_numerator":["1"]},"numerator":["1"],"range":{"first":"2","last":null}},"decision":"holds"},"statement":"for every n >= 2 and x < 0, V_n(x) < 0 or W_n(x) < 0 (V_n < 0 on (-inf, 0) for every n, or W_n < 0 there for every n)","status":{"kind":"verified"}}],"lean_declarations":["RealRooted.threeTerm_interlaces_of_nonnegCoeffs","RealRooted.LiuWang.strictInterl_nonpos_lag_sequence"],"lean_replay":"not_attempted","lean_route":"sign","normal_form":"P_n = A_n(x) P_(n-1) + V_n(x) P'_(n-1) + W_n(x) P_(n-2) for n >= 2, with A_n(x) = (1) + (1) x, V_n(x) = 0, W_n(x) = (6) x","recurrence":{"first_index":0,"initial_polynomials":[["1"],["1","1"]],"recurrence":{"terms":[{"coeff":{"coeffs":[["1","1"]]},"deriv_order":0,"offset":1,"sign":"none"},{"coeff":{"coeffs":[["0","6"]]},"deriv_order":0,"offset":2,"sign":"none"}]},"schema":"polytool.recurrence.v1"},"reference":"L. L. Liu and Y. Wang, A unified approach to polynomial sequences with only real zeros, Adv. in Appl. Math. 38 (2007) 542-560, Theorem 2.1 with the interlacers f' and the lag row (strict form, as in the derivative-lag theorems of the RealRooted library, https://github.com/PerAlexandersson/RealRooted), with nonnegativity of the coefficients replaced by an exact induction keeping every root in (-inf, 0)","schema":"polytool.recurrence-real-rootedness-theorem.v1","status":"proved","theorem":"liu_wang_derivative_lag"},"parent_proof":{"attempts":[{"detail":"the rule is not P_(n+k) = c(x) P_n with c free of n","route":"periodic_product","success":false,"variant":"P_(n+k) = c(x) P_n"},{"detail":"no theorem matched (weighted_renewal_window: support must satisfy offset = 1 + ell * t_degree; fixed_delay_predecessor_window: more than one weighted lag)","route":"paper_theorem","success":false,"variant":"match_recurrence_theorems"},{"detail":"not applicable: c_2(n, x) = gamma(n) w(x) with w neither constant nor a constant times a square (x + v_0)^2","route":"three_term_recurrence","success":false,"variant":"three_term_recurrence"},{"detail":"not applicable: the rule is not f(n) P_n = c_0(n, x) P_(n-1) + c_1(n, x) P'_(n-1)","route":"liu_wang","success":false,"variant":"liu_wang"},{"detail":"P_n = A_n(x) P_(n-1) + V_n(x) P'_(n-1) + W_n(x) P_(n-2) for n >= 2, with A_n(x) = (1) + (1) x, V_n(x) = 0, W_n(x) = (6) x: every P_n, n >= 0, is nonzero and real-rooted with every root in (-inf, 0) (so its coefficients have one sign); for n >= 1, P_n has simple roots and P_(n-1) strictly interlaces P_n (no common root), and deg P_n = deg P_(n-1) + 1 for n >= 2","route":"liu_wang_derivative_lag","success":true,"variant":"liu_wang_derivative_lag"}],"conditional_on":[],"interlacing":{"from_index":1,"justification":{"premises":["every hypothesis of the theorem is verified exactly for every index: P_n = A_n(x) P_(n-1) + V_n(x) P'_(n-1) + W_n(x) P_(n-2) for n >= 2, with A_n(x) = (1) + (1) x, V_n(x) = 0, W_n(x) = (6) x","every P_n, n >= 0, is nonzero and real-rooted with every root in (-inf, 0) (so its coefficients have one sign); for n >= 1, P_n has simple roots and P_(n-1) strictly interlaces P_n (no common root), and deg P_n = deg P_(n-1) + 1 for n >= 2"],"theorem":"liu_wang_derivative_lag: L. L. Liu and Y. Wang, A unified approach to polynomial sequences with only real zeros, Adv. in Appl. Math. 38 (2007) 542-560, Theorem 2.1 with the interlacers f' and the lag row (strict form, as in the derivative-lag theorems of the RealRooted library, https://github.com/PerAlexandersson/RealRooted), with nonnegativity of the coefficients replaced by an exact induction keeping every root in (-inf, 0)"},"kind":"strict","orientation":"previous_interlaces_next"},"route":"liu_wang_derivative_lag","rows_checked":10,"statement":"every parent row P_n, n >= 0, is zero or real-rooted with coefficients of one sign","status":"proved"},"rows_compared":16,"schema":"polytool.recurrence-preserver-image.v1","statement":"proved: Q_n = lambda(n) T_n(P_(n+0)) with T = x^(d_n) P(1/x), d_n = 0 + 1 (n - 0) for every n >= 0, the side conditions hold for every n, and every parent row P_n, n >= 0, is zero or real-rooted with coefficients of one sign; so every Q_n, n >= 0, is zero or real-rooted with roots in (-inf, 0]"},"kind":"preserver_image"}
