{"chains":[{"edge":{"id":"e-f92254fe3f61e8aa","operation":{"map":"A007318","operation":"basis_map"},"operation_detail":"A007318","conclusion_id":"n-24757ab977a41ca8","premise_count":1,"theorem":"geometric family P_k = g(t) (a + d t)^k: T(p) = g(t) p(a + d t), so the roots of T(p) are those of g and the points (r - a)/d for the roots r of p (elementary)","lean_route":null,"lean_declarations":[],"certificate_hash":"2ad3085142660e21e9d22ab45c6ddb5bf94a8bc142c352d19a975d833db67406","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"weak","orientation":"unordered"}],"premises":[{"position":0,"node_id":"n-4f8c7533ab8b37bb","role":"sequence","name":"basis_map_A007318 of Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"premises":[{"premise":{"position":0,"node_id":"n-4f8c7533ab8b37bb","role":"sequence","name":"basis_map_A007318 of Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"},"chains":[{"edge":{"id":"e-1ae1e4b2be227437","operation":{"map":"A007318","operation":"basis_map"},"operation_detail":"A007318","conclusion_id":"n-4f8c7533ab8b37bb","premise_count":1,"theorem":"geometric family P_k = g(t) (a + d t)^k: T(p) = g(t) p(a + d t), so the roots of T(p) are those of g and the points (r - a)/d for the roots r of p (elementary)","lean_route":null,"lean_declarations":[],"certificate_hash":"afdad1850c3ebfd313833a7316aeac66c207bb418f0215f53eebdc51455bd9e0","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"weak","orientation":"unordered"}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"premises":[{"premise":{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"},"chains":[{"edge":{"id":"e-307703197d4a988b","operation":{"operation":"theorem_check","theorem":"liu_wang_derivative_lag"},"operation_detail":"liu_wang_derivative_lag","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":0,"theorem":"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)","lean_route":"sign","lean_declarations":["RealRooted.threeTerm_interlaces_of_nonnegCoeffs","RealRooted.LiuWang.strictInterl_nonpos_lag_sequence"],"certificate_hash":"934efed5107066369cea5644e559423adcb1475eb235ba79a66a7cfd70fd2ef4","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":false,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"strict","orientation":"previous_interlaces_next"}],"premises":[]},"premises":[]},{"edge":{"id":"e-8652a6bf90f4730b","operation":{"operation":"theorem_check","theorem":"liu_wang_three_term"},"operation_detail":"liu_wang_three_term","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":0,"theorem":"L. L. Liu and Y. Wang, Adv. Appl. Math. 38 (2007) 542-560, Theorem 2.1 and Corollary 2.4 (A unified approach to polynomial sequences with only real zeros; the lag row as the interlacer, b_n = 0), weak interlacing of consecutive rows, with nonnegativity of the coefficients replaced, where a root region is certified, by an exact root-location induction","lean_route":"sign","lean_declarations":["RealRooted.threeTerm_interlaces_of_nonnegCoeffs","RealRooted.threeTerm_interlaces"],"certificate_hash":"8fac782ee65769302d2e8a20aca568372be5d130373b8d8d233e41b0b3f27de3","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":false,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"weak","orientation":"previous_interlaces_next"}],"premises":[]},"premises":[]},{"edge":{"id":"e-bcf0630a68142965","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"reversal\",\"schedule\":{\"first_index\":0,\"first_degree\":0,\"step\":1}}"},"operation_detail":"reversal, shift 0","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":1,"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","lean_route":"reversed","lean_declarations":["RealRooted.X_pow_mul_reverse_eq_zero_or_splits","RealRooted.reflect_eq_zero_or_splits"],"certificate_hash":"22ce1f5d2c2cc3257a7c27778e3fd1a9de72b277fc829b4b6011030ad373b57e","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"premises":[{"premise":{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"},"chains":[{"edge":{"id":"e-307703197d4a988b","operation":{"operation":"theorem_check","theorem":"liu_wang_derivative_lag"},"operation_detail":"liu_wang_derivative_lag","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":0,"theorem":"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)","lean_route":"sign","lean_declarations":["RealRooted.threeTerm_interlaces_of_nonnegCoeffs","RealRooted.LiuWang.strictInterl_nonpos_lag_sequence"],"certificate_hash":"934efed5107066369cea5644e559423adcb1475eb235ba79a66a7cfd70fd2ef4","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":false,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"strict","orientation":"previous_interlaces_next"}],"premises":[]},"repeat":true,"premises":[]},{"edge":{"id":"e-8652a6bf90f4730b","operation":{"operation":"theorem_check","theorem":"liu_wang_three_term"},"operation_detail":"liu_wang_three_term","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":0,"theorem":"L. L. Liu and Y. Wang, Adv. Appl. Math. 38 (2007) 542-560, Theorem 2.1 and Corollary 2.4 (A unified approach to polynomial sequences with only real zeros; the lag row as the interlacer, b_n = 0), weak interlacing of consecutive rows, with nonnegativity of the coefficients replaced, where a root region is certified, by an exact root-location induction","lean_route":"sign","lean_declarations":["RealRooted.threeTerm_interlaces_of_nonnegCoeffs","RealRooted.threeTerm_interlaces"],"certificate_hash":"8fac782ee65769302d2e8a20aca568372be5d130373b8d8d233e41b0b3f27de3","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":false,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"weak","orientation":"previous_interlaces_next"}],"premises":[]},"repeat":true,"premises":[]},{"edge":{"id":"e-bf7624d7e60440c3","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"reversal\",\"schedule\":{\"first_index\":0,\"first_degree\":0,\"step\":1}}"},"operation_detail":"reversal, shift 0","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":1,"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","lean_route":"reversed","lean_declarations":["RealRooted.X_pow_mul_reverse_eq_zero_or_splits","RealRooted.reflect_eq_zero_or_splits"],"certificate_hash":"9f02dc4fcb35b4d190721369610318fbe11c0777b072bcab007ccff976b84e9b","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"premises":[{"premise":{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"},"chains":[{"edge":{"id":"e-307703197d4a988b","operation":{"operation":"theorem_check","theorem":"liu_wang_derivative_lag"},"operation_detail":"liu_wang_derivative_lag","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":0,"theorem":"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)","lean_route":"sign","lean_declarations":["RealRooted.threeTerm_interlaces_of_nonnegCoeffs","RealRooted.LiuWang.strictInterl_nonpos_lag_sequence"],"certificate_hash":"934efed5107066369cea5644e559423adcb1475eb235ba79a66a7cfd70fd2ef4","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":false,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"strict","orientation":"previous_interlaces_next"}],"premises":[]},"repeat":true,"premises":[]},{"edge":{"id":"e-8652a6bf90f4730b","operation":{"operation":"theorem_check","theorem":"liu_wang_three_term"},"operation_detail":"liu_wang_three_term","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":0,"theorem":"L. L. Liu and Y. Wang, Adv. Appl. Math. 38 (2007) 542-560, Theorem 2.1 and Corollary 2.4 (A unified approach to polynomial sequences with only real zeros; the lag row as the interlacer, b_n = 0), weak interlacing of consecutive rows, with nonnegativity of the coefficients replaced, where a root region is certified, by an exact root-location induction","lean_route":"sign","lean_declarations":["RealRooted.threeTerm_interlaces_of_nonnegCoeffs","RealRooted.threeTerm_interlaces"],"certificate_hash":"8fac782ee65769302d2e8a20aca568372be5d130373b8d8d233e41b0b3f27de3","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":false,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"weak","orientation":"previous_interlaces_next"}],"premises":[]},"repeat":true,"premises":[]}]}]}]}]},{"edge":{"id":"e-bf7624d7e60440c3","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"reversal\",\"schedule\":{\"first_index\":0,\"first_degree\":0,\"step\":1}}"},"operation_detail":"reversal, shift 0","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":1,"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","lean_route":"reversed","lean_declarations":["RealRooted.X_pow_mul_reverse_eq_zero_or_splits","RealRooted.reflect_eq_zero_or_splits"],"certificate_hash":"9f02dc4fcb35b4d190721369610318fbe11c0777b072bcab007ccff976b84e9b","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"repeat":true,"premises":[]}]}]},{"edge":{"id":"e-fb92e65ff20ec7e5","operation":{"map":"A007318","operation":"basis_map"},"operation_detail":"A007318","conclusion_id":"n-4f8c7533ab8b37bb","premise_count":1,"theorem":"geometric family P_k = g(t) (a + d t)^k: T(p) = g(t) p(a + d t), so the roots of T(p) are those of g and the points (r - a)/d for the roots r of p (elementary)","lean_route":null,"lean_declarations":[],"certificate_hash":"91a197a9a61c9d28633d8062ac2ca6382fe92322121a23af126d042dce9d24bb","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"weak","orientation":"unordered"}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"premises":[{"premise":{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"},"chains":[{"edge":{"id":"e-307703197d4a988b","operation":{"operation":"theorem_check","theorem":"liu_wang_derivative_lag"},"operation_detail":"liu_wang_derivative_lag","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":0,"theorem":"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)","lean_route":"sign","lean_declarations":["RealRooted.threeTerm_interlaces_of_nonnegCoeffs","RealRooted.LiuWang.strictInterl_nonpos_lag_sequence"],"certificate_hash":"934efed5107066369cea5644e559423adcb1475eb235ba79a66a7cfd70fd2ef4","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":false,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"strict","orientation":"previous_interlaces_next"}],"premises":[]},"repeat":true,"premises":[]},{"edge":{"id":"e-8652a6bf90f4730b","operation":{"operation":"theorem_check","theorem":"liu_wang_three_term"},"operation_detail":"liu_wang_three_term","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":0,"theorem":"L. L. Liu and Y. Wang, Adv. Appl. Math. 38 (2007) 542-560, Theorem 2.1 and Corollary 2.4 (A unified approach to polynomial sequences with only real zeros; the lag row as the interlacer, b_n = 0), weak interlacing of consecutive rows, with nonnegativity of the coefficients replaced, where a root region is certified, by an exact root-location induction","lean_route":"sign","lean_declarations":["RealRooted.threeTerm_interlaces_of_nonnegCoeffs","RealRooted.threeTerm_interlaces"],"certificate_hash":"8fac782ee65769302d2e8a20aca568372be5d130373b8d8d233e41b0b3f27de3","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":false,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"weak","orientation":"previous_interlaces_next"}],"premises":[]},"repeat":true,"premises":[]},{"edge":{"id":"e-bcf0630a68142965","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"reversal\",\"schedule\":{\"first_index\":0,\"first_degree\":0,\"step\":1}}"},"operation_detail":"reversal, shift 0","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":1,"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","lean_route":"reversed","lean_declarations":["RealRooted.X_pow_mul_reverse_eq_zero_or_splits","RealRooted.reflect_eq_zero_or_splits"],"certificate_hash":"22ce1f5d2c2cc3257a7c27778e3fd1a9de72b277fc829b4b6011030ad373b57e","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"repeat":true,"premises":[]},{"edge":{"id":"e-bf7624d7e60440c3","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"reversal\",\"schedule\":{\"first_index\":0,\"first_degree\":0,\"step\":1}}"},"operation_detail":"reversal, shift 0","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":1,"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","lean_route":"reversed","lean_declarations":["RealRooted.X_pow_mul_reverse_eq_zero_or_splits","RealRooted.reflect_eq_zero_or_splits"],"certificate_hash":"9f02dc4fcb35b4d190721369610318fbe11c0777b072bcab007ccff976b84e9b","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"repeat":true,"premises":[]}]}]},{"edge":{"id":"e-dd36dc372b4d6491","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"affine\",\"slope\":\"1\",\"intercept\":\"1\"}"},"operation_detail":"affine, shift 0","conclusion_id":"n-4f8c7533ab8b37bb","premise_count":1,"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","lean_route":null,"lean_declarations":["Polynomial.Splits.comp_of_degree_le_one"],"certificate_hash":"3fd040531d01bb8bf9b472950e9bf5a67875776d0c7ccc6268049709c3a67c07","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"-1"}}},{"claim":"interlacing","from_index":1,"kind":"weak","orientation":"unordered"}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"premises":[{"premise":{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"},"chains":[{"edge":{"id":"e-307703197d4a988b","operation":{"operation":"theorem_check","theorem":"liu_wang_derivative_lag"},"operation_detail":"liu_wang_derivative_lag","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":0,"theorem":"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)","lean_route":"sign","lean_declarations":["RealRooted.threeTerm_interlaces_of_nonnegCoeffs","RealRooted.LiuWang.strictInterl_nonpos_lag_sequence"],"certificate_hash":"934efed5107066369cea5644e559423adcb1475eb235ba79a66a7cfd70fd2ef4","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":false,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"strict","orientation":"previous_interlaces_next"}],"premises":[]},"repeat":true,"premises":[]},{"edge":{"id":"e-8652a6bf90f4730b","operation":{"operation":"theorem_check","theorem":"liu_wang_three_term"},"operation_detail":"liu_wang_three_term","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":0,"theorem":"L. L. Liu and Y. Wang, Adv. Appl. Math. 38 (2007) 542-560, Theorem 2.1 and Corollary 2.4 (A unified approach to polynomial sequences with only real zeros; the lag row as the interlacer, b_n = 0), weak interlacing of consecutive rows, with nonnegativity of the coefficients replaced, where a root region is certified, by an exact root-location induction","lean_route":"sign","lean_declarations":["RealRooted.threeTerm_interlaces_of_nonnegCoeffs","RealRooted.threeTerm_interlaces"],"certificate_hash":"8fac782ee65769302d2e8a20aca568372be5d130373b8d8d233e41b0b3f27de3","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":false,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"weak","orientation":"previous_interlaces_next"}],"premises":[]},"repeat":true,"premises":[]},{"edge":{"id":"e-bcf0630a68142965","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"reversal\",\"schedule\":{\"first_index\":0,\"first_degree\":0,\"step\":1}}"},"operation_detail":"reversal, shift 0","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":1,"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","lean_route":"reversed","lean_declarations":["RealRooted.X_pow_mul_reverse_eq_zero_or_splits","RealRooted.reflect_eq_zero_or_splits"],"certificate_hash":"22ce1f5d2c2cc3257a7c27778e3fd1a9de72b277fc829b4b6011030ad373b57e","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"repeat":true,"premises":[]},{"edge":{"id":"e-bf7624d7e60440c3","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"reversal\",\"schedule\":{\"first_index\":0,\"first_degree\":0,\"step\":1}}"},"operation_detail":"reversal, shift 0","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":1,"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","lean_route":"reversed","lean_declarations":["RealRooted.X_pow_mul_reverse_eq_zero_or_splits","RealRooted.reflect_eq_zero_or_splits"],"certificate_hash":"9f02dc4fcb35b4d190721369610318fbe11c0777b072bcab007ccff976b84e9b","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"repeat":true,"premises":[]}]}]},{"edge":{"id":"e-f91a549f5bfada83","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"affine\",\"slope\":\"1\",\"intercept\":\"1\"}"},"operation_detail":"affine, shift 0","conclusion_id":"n-4f8c7533ab8b37bb","premise_count":1,"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","lean_route":null,"lean_declarations":["Polynomial.Splits.comp_of_degree_le_one"],"certificate_hash":"958fcfb8272e3b737951307666cee6dd91aebedb80637fb367bc7dc27e5e8b5c","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"-1"}}},{"claim":"interlacing","from_index":1,"kind":"weak","orientation":"unordered"}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"premises":[{"premise":{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"},"chains":[{"edge":{"id":"e-307703197d4a988b","operation":{"operation":"theorem_check","theorem":"liu_wang_derivative_lag"},"operation_detail":"liu_wang_derivative_lag","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":0,"theorem":"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)","lean_route":"sign","lean_declarations":["RealRooted.threeTerm_interlaces_of_nonnegCoeffs","RealRooted.LiuWang.strictInterl_nonpos_lag_sequence"],"certificate_hash":"934efed5107066369cea5644e559423adcb1475eb235ba79a66a7cfd70fd2ef4","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":false,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"strict","orientation":"previous_interlaces_next"}],"premises":[]},"repeat":true,"premises":[]},{"edge":{"id":"e-8652a6bf90f4730b","operation":{"operation":"theorem_check","theorem":"liu_wang_three_term"},"operation_detail":"liu_wang_three_term","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":0,"theorem":"L. L. Liu and Y. Wang, Adv. Appl. Math. 38 (2007) 542-560, Theorem 2.1 and Corollary 2.4 (A unified approach to polynomial sequences with only real zeros; the lag row as the interlacer, b_n = 0), weak interlacing of consecutive rows, with nonnegativity of the coefficients replaced, where a root region is certified, by an exact root-location induction","lean_route":"sign","lean_declarations":["RealRooted.threeTerm_interlaces_of_nonnegCoeffs","RealRooted.threeTerm_interlaces"],"certificate_hash":"8fac782ee65769302d2e8a20aca568372be5d130373b8d8d233e41b0b3f27de3","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":false,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"weak","orientation":"previous_interlaces_next"}],"premises":[]},"repeat":true,"premises":[]},{"edge":{"id":"e-bcf0630a68142965","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"reversal\",\"schedule\":{\"first_index\":0,\"first_degree\":0,\"step\":1}}"},"operation_detail":"reversal, shift 0","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":1,"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","lean_route":"reversed","lean_declarations":["RealRooted.X_pow_mul_reverse_eq_zero_or_splits","RealRooted.reflect_eq_zero_or_splits"],"certificate_hash":"22ce1f5d2c2cc3257a7c27778e3fd1a9de72b277fc829b4b6011030ad373b57e","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"repeat":true,"premises":[]},{"edge":{"id":"e-bf7624d7e60440c3","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"reversal\",\"schedule\":{\"first_index\":0,\"first_degree\":0,\"step\":1}}"},"operation_detail":"reversal, shift 0","conclusion_id":"n-6ad01dc6e705cdb6","premise_count":1,"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","lean_route":"reversed","lean_declarations":["RealRooted.X_pow_mul_reverse_eq_zero_or_splits","RealRooted.reflect_eq_zero_or_splits"],"certificate_hash":"9f02dc4fcb35b4d190721369610318fbe11c0777b072bcab007ccff976b84e9b","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"repeat":true,"premises":[]}]}]}]}]},{"edge":{"id":"e-a13317a426b24d26","operation":{"operation":"definition_equality"},"operation_detail":null,"conclusion_id":"n-24757ab977a41ca8","premise_count":0,"theorem":"all-index identity Q_n = P_n certified by exact Ore-algebra division and identifying rows (polytool preserver-image certificate of the identity map)","lean_route":null,"lean_declarations":[],"certificate_hash":"26a4200e8f55261076a4581ba03c1102c6b70d06f84605cf2996ac880209e6b2","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[],"premises":[]},"premises":[]},{"edge":{"id":"e-4ffa0d78a42f9e26","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"affine\",\"slope\":\"1\",\"intercept\":\"1\"}"},"operation_detail":"affine, shift 0","conclusion_id":"n-24757ab977a41ca8","premise_count":1,"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","lean_route":null,"lean_declarations":["Polynomial.Splits.comp_of_degree_le_one"],"certificate_hash":"744db3cbddf3f5efcd29495e6d645240e0229ef749d86afab30bd84e037ce02a","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"-1"}}}],"premises":[{"position":0,"node_id":"n-4f8c7533ab8b37bb","role":"sequence","name":"basis_map_A007318 of Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"premises":[{"premise":{"position":0,"node_id":"n-4f8c7533ab8b37bb","role":"sequence","name":"basis_map_A007318 of Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"},"chains":[{"edge":{"id":"e-1ae1e4b2be227437","operation":{"map":"A007318","operation":"basis_map"},"operation_detail":"A007318","conclusion_id":"n-4f8c7533ab8b37bb","premise_count":1,"theorem":"geometric family P_k = g(t) (a + d t)^k: T(p) = g(t) p(a + d t), so the roots of T(p) are those of g and the points (r - a)/d for the roots r of p (elementary)","lean_route":null,"lean_declarations":[],"certificate_hash":"afdad1850c3ebfd313833a7316aeac66c207bb418f0215f53eebdc51455bd9e0","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"weak","orientation":"unordered"}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"repeat":true,"premises":[]},{"edge":{"id":"e-fb92e65ff20ec7e5","operation":{"map":"A007318","operation":"basis_map"},"operation_detail":"A007318","conclusion_id":"n-4f8c7533ab8b37bb","premise_count":1,"theorem":"geometric family P_k = g(t) (a + d t)^k: T(p) = g(t) p(a + d t), so the roots of T(p) are those of g and the points (r - a)/d for the roots r of p (elementary)","lean_route":null,"lean_declarations":[],"certificate_hash":"91a197a9a61c9d28633d8062ac2ca6382fe92322121a23af126d042dce9d24bb","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},{"claim":"interlacing","from_index":1,"kind":"weak","orientation":"unordered"}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"repeat":true,"premises":[]},{"edge":{"id":"e-dd36dc372b4d6491","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"affine\",\"slope\":\"1\",\"intercept\":\"1\"}"},"operation_detail":"affine, shift 0","conclusion_id":"n-4f8c7533ab8b37bb","premise_count":1,"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","lean_route":null,"lean_declarations":["Polynomial.Splits.comp_of_degree_le_one"],"certificate_hash":"3fd040531d01bb8bf9b472950e9bf5a67875776d0c7ccc6268049709c3a67c07","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"-1"}}},{"claim":"interlacing","from_index":1,"kind":"weak","orientation":"unordered"}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"repeat":true,"premises":[]},{"edge":{"id":"e-f91a549f5bfada83","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"affine\",\"slope\":\"1\",\"intercept\":\"1\"}"},"operation_detail":"affine, shift 0","conclusion_id":"n-4f8c7533ab8b37bb","premise_count":1,"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","lean_route":null,"lean_declarations":["Polynomial.Splits.comp_of_degree_le_one"],"certificate_hash":"958fcfb8272e3b737951307666cee6dd91aebedb80637fb367bc7dc27e5e8b5c","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"-1"}}},{"claim":"interlacing","from_index":1,"kind":"weak","orientation":"unordered"}],"premises":[{"position":0,"node_id":"n-6ad01dc6e705cdb6","role":"sequence","name":"Pascal-(1,5,1) array.","uses":{"claim":"real_rooted","from_index":0,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 0, is zero or real-rooted with all roots in (-inf, 0]"}]},"repeat":true,"premises":[]}]}]}],"truncated":false,"expanded":11}
