{"chains":[{"edge":{"id":"e-4693d9d14965ecb4","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"affine\",\"slope\":\"1\",\"intercept\":\"1\"}"},"operation_detail":"affine, shift 0","conclusion_id":"n-42f5ae0ad0115609","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":"d285cc8aa91e1ba75a4b7eaf72092fef59e7aca88961685b17670da2b6e87593","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":1,"region":{"upper":{"closed":true,"value":"-1"}}}],"premises":[{"position":0,"node_id":"n-806f02861480e04e","role":"sequence","name":"Exponential Riordan array [exp(sinh(x)*exp(x)), sinh(x)*exp(x)].","uses":{"claim":"real_rooted","from_index":1,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 1, is zero or real-rooted with all roots in (-inf, 0]"}]},"premises":[{"premise":{"position":0,"node_id":"n-806f02861480e04e","role":"sequence","name":"Exponential Riordan array [exp(sinh(x)*exp(x)), sinh(x)*exp(x)].","uses":{"claim":"real_rooted","from_index":1,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 1, is zero or real-rooted with all roots in (-inf, 0]"},"chains":[{"edge":{"id":"e-18b4793e32bd250f","operation":{"map":"A154602","operation":"basis_map"},"operation_detail":"A154602","conclusion_id":"n-806f02861480e04e","premise_count":1,"theorem":"ray basis maps: for L f = (a + b t) f + kappa (t - h) f', b > 0, kappa >= 0, and g real-rooted with every root <= h, of multiplicity m at h, T(u^k) = L^k g sends every real polynomial with all roots in S to one with all roots in (-inf, h] if and only if S lies in (-inf, a + b h + kappa m] (RealRooted rayBasisMap_maps_realRootedIn_iff; the step is Ma and Wang, EJC 15 (2008) R17, Theorem 2)","lean_route":null,"lean_declarations":[],"certificate_hash":"7be2569ce793b7954765a6d17bbcbc74aadd6c170a5f9721f9d37028c18e6067","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":1,"region":{"upper":{"closed":true,"value":"-1"}}}],"premises":[{"position":0,"node_id":"n-1bf99ad40f056d33","role":"sequence","name":"basis-map coefficients of Square array of binomial coefficients T(n,k) = binomial(n,k), n >= 0, k >= 0, read by downward antidiagonals.","uses":{"claim":"real_rooted","from_index":1,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 1, is zero or real-rooted with all roots in (-inf, 0]"}]},"premises":[{"premise":{"position":0,"node_id":"n-1bf99ad40f056d33","role":"sequence","name":"basis-map coefficients of Square array of binomial coefficients T(n,k) = binomial(n,k), n >= 0, k >= 0, read by downward antidiagonals.","uses":{"claim":"real_rooted","from_index":1,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 1, is zero or real-rooted with all roots in (-inf, 0]"},"chains":[{"edge":{"id":"e-2338c588f96b501c","operation":{"operation":"theorem_check","theorem":"iterated_preserver"},"operation_detail":"iterated_preserver","conclusion_id":"n-1bf99ad40f056d33","premise_count":0,"theorem":"Iterated real-rootedness preservers (induction on n): if P_m is nonzero and real-rooted with every root in a closed region R and, for every n > m, P_n = a_n(x) S_n(P_(n-1)) where S_n maps every polynomial that is zero or real-rooted with every root in R to zero or a real-rooted polynomial with every root in R and a_n is real-rooted with every root in R, then every P_n is real-rooted with every root in R (the roots of a product are the roots of its factors); an exact degree step keeps every row nonzero; here S_n is the identity","lean_route":null,"lean_declarations":[],"certificate_hash":"c48bf392a2e7cfc5fcdf2703bc6d04dc46bcaa5dac7e8e7d7ddc625443f54ba0","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":1,"region":{"upper":{"closed":true,"value":"0"}}},{"claim":"interlacing","from_index":2,"kind":"weak","orientation":"previous_interlaces_next"}],"premises":[]},"premises":[]},{"edge":{"id":"e-6e85c0971e84e272","operation":{"operation":"parent_provers","route":"periodic_product"},"operation_detail":"periodic_product","conclusion_id":"n-1bf99ad40f056d33","premise_count":0,"theorem":"polytool parent provers, route periodic_product: every parent row P_n, n >= 1, is zero or real-rooted with coefficients of one sign","lean_route":null,"lean_declarations":[],"certificate_hash":"a255c82e31cb1ef8353e88ce0872bae56bbedf0340818b927ea1beab1379b680","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":1,"region":{"upper":{"closed":true,"value":"0"}}}],"premises":[]},"premises":[]},{"edge":{"id":"e-ad67990681a86223","operation":{"index_shift":0,"operation":"preserver_image","operator":"{\"shape\":\"mobius\",\"a\":\"1\",\"b\":\"0\",\"c\":\"1\",\"e\":\"1\",\"schedule\":{\"first_index\":1,\"first_degree\":0,\"step\":1}}"},"operation_detail":"mobius, shift 0","conclusion_id":"n-1bf99ad40f056d33","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":"fTransform","lean_declarations":["RealRooted.splits_fPolynomial"],"certificate_hash":"4d376af80e5cf8633b4029e45755a1cee8957c4b942885530f59683a62aba2ec","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":1,"region":{"lower":{"closed":true,"value":"-1"},"upper":{"closed":true,"value":"0"}}}],"premises":[{"position":0,"node_id":"n-1bf99ad40f056d33","role":"sequence","name":"basis-map coefficients of Square array of binomial coefficients T(n,k) = binomial(n,k), n >= 0, k >= 0, read by downward antidiagonals.","uses":{"claim":"real_rooted","from_index":1,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 1, is zero or real-rooted with all roots in (-inf, 0]"}]},"premises":[{"premise":{"position":0,"node_id":"n-1bf99ad40f056d33","role":"sequence","name":"basis-map coefficients of Square array of binomial coefficients T(n,k) = binomial(n,k), n >= 0, k >= 0, read by downward antidiagonals.","uses":{"claim":"real_rooted","from_index":1,"region":{"upper":{"closed":true,"value":"0"}}},"uses_text":"Every row P_n, n >= 1, is zero or real-rooted with all roots in (-inf, 0]"},"chains":[{"edge":{"id":"e-2338c588f96b501c","operation":{"operation":"theorem_check","theorem":"iterated_preserver"},"operation_detail":"iterated_preserver","conclusion_id":"n-1bf99ad40f056d33","premise_count":0,"theorem":"Iterated real-rootedness preservers (induction on n): if P_m is nonzero and real-rooted with every root in a closed region R and, for every n > m, P_n = a_n(x) S_n(P_(n-1)) where S_n maps every polynomial that is zero or real-rooted with every root in R to zero or a real-rooted polynomial with every root in R and a_n is real-rooted with every root in R, then every P_n is real-rooted with every root in R (the roots of a product are the roots of its factors); an exact degree step keeps every row nonzero; here S_n is the identity","lean_route":null,"lean_declarations":[],"certificate_hash":"c48bf392a2e7cfc5fcdf2703bc6d04dc46bcaa5dac7e8e7d7ddc625443f54ba0","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":1,"region":{"upper":{"closed":true,"value":"0"}}},{"claim":"interlacing","from_index":2,"kind":"weak","orientation":"previous_interlaces_next"}],"premises":[]},"repeat":true,"premises":[]},{"edge":{"id":"e-6e85c0971e84e272","operation":{"operation":"parent_provers","route":"periodic_product"},"operation_detail":"periodic_product","conclusion_id":"n-1bf99ad40f056d33","premise_count":0,"theorem":"polytool parent provers, route periodic_product: every parent row P_n, n >= 1, is zero or real-rooted with coefficients of one sign","lean_route":null,"lean_declarations":[],"certificate_hash":"a255c82e31cb1ef8353e88ce0872bae56bbedf0340818b927ea1beab1379b680","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":1,"region":{"upper":{"closed":true,"value":"0"}}}],"premises":[]},"repeat":true,"premises":[]}]}]}]}]},{"edge":{"id":"e-46265fb9bb5bf6b6","operation":{"operation":"theorem_check","theorem":"iterated_preserver"},"operation_detail":"iterated_preserver","conclusion_id":"n-806f02861480e04e","premise_count":0,"theorem":"Iterated real-rootedness preservers (induction on n): if P_m is nonzero and real-rooted with every root in a closed region R and, for every n > m, P_n = a_n(x) S_n(P_(n-1)) where S_n maps every polynomial that is zero or real-rooted with every root in R to zero or a real-rooted polynomial with every root in R and a_n is real-rooted with every root in R, then every P_n is real-rooted with every root in R (the roots of a product are the roots of its factors); an exact degree step keeps every row nonzero; S_n = phi(n, D) = 1 + (2) D: Laguerre's theorem on differential operators: if phi is a real polynomial with only real roots, then phi(D) maps every real-rooted polynomial to a real-rooted polynomial or zero (write phi(D) = C D^j prod (1 + c_i D); D preserves real-rootedness by Rolle's theorem and p + c p' is real-rooted for every real c by Rolle's theorem applied to e^(x/c) p; Polya--Schur 1914); when the coefficients of phi have one sign, coefficients of one sign stay of one sign; applied to phi(n, .) for each n","lean_route":null,"lean_declarations":["RealRooted.splits_add_C_mul_derivative_all","RealRooted.splits_C_mul_add_derivative","Polynomial.Splits.derivative"],"certificate_hash":"4e5bd7230df55b3f47936384aba5d55d7a6dcc83a4bc6c8f4afb18b3bc5dc076","verification_polytool":"replayed","verification_lean":"not_attempted","claims":[{"claim":"real_rooted","from_index":1,"region":{"upper":{"closed":true,"value":"0"}}}],"premises":[]},"premises":[]}]}]}],"truncated":false,"expanded":6}
