diff --git a/main.tex b/main.tex index 839c5d4d90de84735482d25a5a1b6acc2a3a46be..efd077090495400b841f90ae9dc24a2833979845 100644 --- a/main.tex +++ b/main.tex @@ -45,25 +45,7 @@ sorting=ynt \begin{document} -\begin{sagesilent} -# Requires extra package: -#! sage -pip install "pseudowalls==0.0.3" --extra-index-url https://gitlab.com/api/v4/projects/43962374/packages/pypi/simple - -from pseudowalls import * -Δ = lambda v: v.Q_tilt() -mu = stability.Mumford().slope - -def beta_minus(v): - beta = stability.Tilt().beta - solutions = solve( - stability.Tilt(alpha=0).degree(v)==0, - beta) - return min(map(lambda s: s.rhs(), solutions)) - -class Object(object): - pass -\end{sagesilent} \title{Tighter Bounds for Ranks of Tilt Semistabilizers on Picard Rank 1 Surfaces \\[1em] \large @@ -330,33 +312,7 @@ Because of this, when using these characteristic curves, only positive ranks are considered, as negative rank objects are implicitly considered on the right hand side of $V_v$. -\begin{sagesilent} -def charact_curves(v): - alpha = stability.Tilt().alpha - beta = stability.Tilt().beta - coords_range = (beta, -4, 5), (alpha, 0, 4) - text_args = {"fontsize":"xx-large", "clip":True} - black_text_args = {"rgbcolor": "black", **text_args} - p = ( - implicit_plot(stability.Tilt().degree(v), *coords_range ) - + line([(mu(v),0),(mu(v),5)], linestyle = "dashed") - + text(r"$\Theta_v^+$",[3.5, 2], rotation=45, **text_args) - + text(r"$V_v$", [0.43, 1.5], rotation=90, **text_args) - + text(r"$\Theta_v^-$", [-2.2, 2], rotation=-45, **text_args) - + text(r"$\nu_{\alpha, \beta}(v)>0$", [-3, 1], **black_text_args) - + text(r"$\nu_{\alpha, \beta}(v)<0$", [-1, 3], **black_text_args) - + text(r"$\nu_{\alpha, \beta}(-v)>0$", [2, 3], **black_text_args) - + text(r"$\nu_{\alpha, \beta}(-v)<0$", [4, 1], **black_text_args) - ) - p.xmax(5) - p.xmin(-4) - p.ymax(4) - p.axes_labels([r"$\beta$", r"$\alpha$"]) - return p - -v1 = Chern_Char(3, 2, -2) -v2 = Chern_Char(3, 2, 2/3) -\end{sagesilent} + \begin{sagesilent} from plots_and_expressions import \ @@ -728,9 +684,7 @@ The restrictions on $\chern^{\beta_-}_0(E)$ and $\chern^{\beta_-}_2(E)$ is best seen with the following graph: % TODO: hyperbola restriction graph (shaded) -\begin{sagesilent} -var("m") # Initialize symbol for variety parameter -\end{sagesilent} + This is where the rationality of $\beta_{-}$ comes in. If $\beta_{-} = \frac{a_v}{n}$ for some $a_v,n \in \ZZ$. Then @@ -888,17 +842,7 @@ Take $\beta = \beta(P)$ where $P\in\Theta_v^-$ is the choice made in problem && \text{where $r,c,2d\in \ZZ$} \end{align} -\begin{sagesilent} -# Requires extra package: -#! sage -pip install "pseudowalls==0.0.3" --extra-index-url https://gitlab.com/api/v4/projects/43962374/packages/pypi/simple - -from pseudowalls import * - -v = Chern_Char(*var("R C D", domain="real")) -u = Chern_Char(*var("r c d", domain="real")) -Δ = lambda v: v.Q_tilt() -\end{sagesilent} Recall from condition \ref{item:chern1bound:lem:num_test_prob1} in lemma \ref{lem:num_test_prob1} @@ -906,18 +850,7 @@ lemma \ref{lem:num_test_prob1} that $\chern_1^{\beta}(u)$ has fixed bounds in terms of $\chern_1^{\beta}(v)$, and so we can write: -\begin{sagesilent} -ts = stability.Tilt -var("beta", domain="real") - -c_lower_bound = -( - ts(beta=beta).rank(u) - /ts().alpha -).expand() + c -var("q", domain="real") -c_in_terms_of_q = c_lower_bound + q -\end{sagesilent} \begin{sagesilent} from plots_and_expressions import c_in_terms_of_q @@ -974,22 +907,10 @@ from lemma \ref{lem:num_test_prob1} (or corollary \ref{cor:num_test_prob2}). -\begin{sagesilent} -# First Bogomolov-Gieseker form expression that must be non-negative: -bgmlv2 = Δ(u) -\end{sagesilent} - \noindent Expressing $\Delta(u)\geq 0$ in terms of $q$ as defined in eqn \ref{eqn-cintermsofm} we get the following: -\begin{sagesilent} -bgmlv2_with_q = ( - bgmlv2 - .expand() - .subs(c == c_in_terms_of_q) -) -\end{sagesilent} \begin{sagesilent} from plots_and_expressions import bgmlv2_with_q @@ -1006,15 +927,6 @@ This can be rearranged to express a bound on $d$ as follows in lemma \ref{lem:num_test_prob1} or corollary \ref{cor:num_test_prob2} that $r>0$): -\begin{sagesilent} -bgmlv2_d_ineq = ( - (0 <= bgmlv2_with_q)/2/r # rescale assuming r > 0 - + d # Rearrange for d -).expand() - -# Keep hold of lower bound for d -bgmlv2_d_upperbound = bgmlv2_d_ineq.rhs() -\end{sagesilent} \begin{sagesilent} from plots_and_expressions import bgmlv2_d_ineq @@ -1024,30 +936,6 @@ from plots_and_expressions import bgmlv2_d_ineq \sage{bgmlv2_d_ineq} \end{equation} -\begin{sagesilent} -# Seperate out the terms of the lower bound for d - -bgmlv2_d_upperbound_without_hyp = ( - bgmlv2_d_upperbound - .subs(1/r == 0) -) - -bgmlv2_d_upperbound_const_term = ( - bgmlv2_d_upperbound_without_hyp - .subs(r==0) -) - -bgmlv2_d_upperbound_linear_term = ( - bgmlv2_d_upperbound_without_hyp - - bgmlv2_d_upperbound_const_term -).expand() - -bgmlv2_d_upperbound_exp_term = ( - bgmlv2_d_upperbound - - bgmlv2_d_upperbound_without_hyp -).expand() -\end{sagesilent} - \begin{sagesilent} from plots_and_expressions import \ bgmlv2_d_upperbound_const_term, \ @@ -1084,100 +972,6 @@ from lemma \ref{lem:num_test_prob1} Expressing $\Delta(v-u)\geq 0$ in term of $q$ and rearranging as a bound on $d$ yields: -\begin{sagesilent} -# Third Bogomolov-Gieseker form expression that must be non-negative: -bgmlv3 = Δ(v-u) -bgmlv3_with_q = ( - bgmlv3 - .expand() - .subs(c == c_in_terms_of_q) -) -var("r_alt",domain="real") # r_alt = r - R temporary substitution - -bgmlv3_with_q_reparam = ( - bgmlv3_with_q - .subs(r == r_alt + R) - /r_alt # This operation assumes r_alt > 0 -).expand() - -bgmlv3_d_ineq = ( - ((0 <= bgmlv3_with_q_reparam)/2 + d) # Rearrange for d - .subs(r_alt == r - R) # Resubstitute r back in - .expand() -) - -# Check that this equation represents a bound for d -assert bgmlv3_d_ineq.lhs() == d - -bgmlv3_d_upperbound = bgmlv3_d_ineq.rhs() # Keep hold of lower bound for d - -# Seperate out the terms of the lower bound for d - -bgmlv3_d_upperbound_without_hyp = ( - bgmlv3_d_upperbound - .subs(1/(R-r) == 0) -) - -bgmlv3_d_upperbound_const_term = ( - bgmlv3_d_upperbound_without_hyp - .subs(r==0) -) - -bgmlv3_d_upperbound_linear_term = ( - bgmlv3_d_upperbound_without_hyp - - bgmlv3_d_upperbound_const_term -).expand() - -bgmlv3_d_upperbound_exp_term = ( - bgmlv3_d_upperbound - - bgmlv3_d_upperbound_without_hyp -).expand() - -# Verify the simplified forms of the terms that will be mentioned in text - -var("chb1v chb2v",domain="real") # symbol to represent ch_1^\beta(v) -var("psi phi", domain="real") # symbol to represent ch_1^\beta(v) and -# ch_2^\beta(v) - -assert bgmlv3_d_upperbound_const_term == ( - ( - # keep hold of this alternative expression: - bgmlv3_d_upperbound_const_term_alt := ( - phi - + beta*q - ) - ) - .subs(phi == v.twist(beta).ch[2]) # subs real val of ch_1^\beta(v) - .expand() -) - -assert bgmlv3_d_upperbound_exp_term == ( - ( - # Keep hold of this alternative expression: - bgmlv3_d_upperbound_exp_term_alt := - ( - R*phi - + (C - q)^2/2 - + R*beta*q - - D*R - )/(r-R) - ) - .subs(phi == v.twist(beta).ch[2]) # subs real val of ch_1^\beta(v) - .expand() -) - -assert bgmlv3_d_upperbound_exp_term == ( - ( - # Keep hold of this alternative expression: - bgmlv3_d_upperbound_exp_term_alt2 := - ( - (psi - q)^2/2/(r-R) - ) - ) - .subs(psi == v.twist(beta).ch[1]) # subs real val of ch_1^\beta(v) - .expand() -) -\end{sagesilent} \begin{sagesilent} from plots_and_expressions import \ @@ -1271,98 +1065,6 @@ from plots_and_expressions import phi \end{align} \egroup -\begin{sagesilent} -positive_radius_condition = ( - ( - (0 > - u.twist(beta).ch[2]) - + d # rearrange for d - ) - .subs(solve(q == u.twist(beta).ch[1], c)[0]) # express c in term of q - .expand() -) - -def beta_min(chern): - ts = stability.Tilt() - return min( - map( - lambda soln: soln.rhs(), - solve( - (ts.degree(chern)) - .expand() - .subs(ts.alpha == 0), - beta - ) - ) - ) - -v_example = Chern_Char(3,2,-2) -q_example = 7/3 - -def plot_d_bound( - v_example, - q_example, - ymax=5, - ymin=-2, - xmax=20, - aspect_ratio=None -): - - # Equations to plot imminently representing the bounds on d: - eq2 = ( - bgmlv2_d_upperbound - .subs(R == v_example.ch[0]) - .subs(C == v_example.ch[1]) - .subs(D == v_example.ch[2]) - .subs(beta = beta_min(v_example)) - .subs(q == q_example) - ) - - eq3 = ( - bgmlv3_d_upperbound - .subs(R == v_example.ch[0]) - .subs(C == v_example.ch[1]) - .subs(D == v_example.ch[2]) - .subs(beta = beta_min(v_example)) - .subs(q == q_example) - ) - - eq4 = ( - positive_radius_condition.rhs() - .subs(q == q_example) - .subs(beta = beta_min(v_example)) - ) - - example_bounds_on_d_plot = ( - plot( - eq3, - (r,v_example.ch[0],xmax), - color='green', - linestyle = "dashed", - legend_label=r"upper bound: $\Delta(v-u) \geq 0$", - ) - + plot( - eq2, - (r,0,xmax), - color='blue', - linestyle = "dashed", - legend_label=r"upper bound: $\Delta(u) \geq 0$" - ) - + plot( - eq4, - (r,0,xmax), - color='orange', - linestyle = "dotted", - legend_label=r"lower bound: $\mathrm{ch}_2^{\beta_{-}}(u)>0$" - ) - ) - example_bounds_on_d_plot.ymin(ymin) - example_bounds_on_d_plot.ymax(ymax) - example_bounds_on_d_plot.axes_labels(['$r$', '$d$']) - if aspect_ratio: - example_bounds_on_d_plot.set_aspect_ratio(aspect_ratio) - return example_bounds_on_d_plot - -\end{sagesilent} \begin{sagesilent} from plots_and_expressions import \ @@ -1451,11 +1153,6 @@ $u=(r,c\ell,d\ell^2)$ to problem \ref{problem:problem-statement-2}. The strategy here is similar to what was shown in theorem \ref{thm:loose-bound-on-r}. -\begin{sagesilent} -var("a_v b_q n") # Define symbols introduce for values of beta and q -beta_value_expr = (beta == a_v/n) -q_value_expr = (q == b_q/n) -\end{sagesilent} \renewcommand{\aa}{{a_v}} \newcommand{\bb}{{b_q}} @@ -1493,27 +1190,6 @@ beta_value_expr \frac{1}{2n^2}\ZZ \end{equation} -\begin{sagesilent} -# placeholder for the specific values of k (start with 1): -var("kappa", domain="real") - -assymptote_gap_condition1 = (kappa/(2*n^2) < bgmlv2_d_upperbound_exp_term) -assymptote_gap_condition2 = (kappa/(2*n^2) < bgmlv3_d_upperbound_exp_term_alt2) - -r_upper_bound1 = ( - assymptote_gap_condition1 - * r * 2*n^2 / kappa -) - -assert r_upper_bound1.lhs() == r - -r_upper_bound2 = ( - assymptote_gap_condition2 - * (r-R) * 2*n^2 / kappa + R -) - -assert r_upper_bound2.lhs() == r -\end{sagesilent} \begin{sagesilent} from plots_and_expressions import r_upper_bound1, r_upper_bound2, kappa @@ -1566,22 +1242,6 @@ considering equations \let\originalepsilon\epsilon \renewcommand\epsilon{{\originalepsilon_{v}}} -\begin{sagesilent} -var("epsilon") -var("chbv") # symbol to represent \chern_1^{\beta}(v) - -# Tightness conditions: - -bounds_too_tight_condition1 = ( - bgmlv2_d_upperbound_exp_term - < epsilon -) - -bounds_too_tight_condition2 = ( - bgmlv3_d_upperbound_exp_term_alt.subs(chbv==0) - < epsilon -) -\end{sagesilent} \begin{sagesilent} from plots_and_expressions import bounds_too_tight_condition1, bounds_too_tight_condition2 @@ -1621,24 +1281,9 @@ This is equivalent to: \end{proof} -\begin{sagesilent} -var("Delta nu", domain="real") -q_sol = solve( - r_upper_bound1.subs(kappa==1).rhs() - == r_upper_bound2.subs(kappa==1).rhs() -, q)[0].rhs() -r_upper_bound_all_q = ( - r_upper_bound1.rhs() - .expand() - .subs(q==q_sol) - .subs(kappa==1) - .subs(psi**2 == Delta/nu^2) - .subs(1/psi**2 == nu^2/Delta) -) -\end{sagesilent} \begin{sagesilent} -from plots_and_expressions import r_upper_bound_all_q, q_sol +from plots_and_expressions import r_upper_bound_all_q, q_sol, nu, Delta, psi \end{sagesilent} \begin{corollary}[Bound on $r$ \#2] @@ -1749,15 +1394,6 @@ integral: That is, $r \equiv -\aa^{-1}\bb$ mod $n$ ($\aa$ is coprime to $n$, and so invertible mod $n$). -\begin{sagesilent} - rhs_numerator = ( - positive_radius_condition - .rhs() - .subs([q_value_expr,beta_value_expr]) - .factor() - .numerator() - ) -\end{sagesilent} \noindent Let $\aa^{'}$ be an integer representative of $\aa^{-1}$ in $\ZZ/n\ZZ$. @@ -1856,10 +1492,6 @@ $\epsilon_{v,q}\geq\epsilon_v$, with equality when $k_{v,q}=1$. $\chern_1^\beta(u) = q = \frac{b_q}{n}$ are bounded above by the following expression: -\begin{sagesilent} -var("delta", domain="real") # placeholder symbol to be replaced by k_{q,i} -\end{sagesilent} - \bgroup \def\kappa{k_{v,q}} \def\psi{\chern_1^{\beta}(F)}