\documentclass[12pt,titlepage]{article} \usepackage{amsmath} \usepackage{mathrsfs} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsthm} \usepackage{mathtools} \usepackage{graphicx} \usepackage{color} \usepackage{ucs} \usepackage[utf8x]{inputenc} \usepackage{xparse} \usepackage{hyperref} %----Macros---------- % % Unresolved issues: % % \righttoleftarrow % \lefttorightarrow % % \color{} with HTML colorspec % \bgcolor % \array with options (without options, it's equivalent to the matrix environment) % Of the standard HTML named colors, white, black, red, green, blue and yellow % are predefined in the color package. Here are the rest. \definecolor{aqua}{rgb}{0, 1.0, 1.0} \definecolor{fuschia}{rgb}{1.0, 0, 1.0} \definecolor{gray}{rgb}{0.502, 0.502, 0.502} \definecolor{lime}{rgb}{0, 1.0, 0} \definecolor{maroon}{rgb}{0.502, 0, 0} \definecolor{navy}{rgb}{0, 0, 0.502} \definecolor{olive}{rgb}{0.502, 0.502, 0} \definecolor{purple}{rgb}{0.502, 0, 0.502} \definecolor{silver}{rgb}{0.753, 0.753, 0.753} \definecolor{teal}{rgb}{0, 0.502, 0.502} % Because of conflicts, \space and \mathop are converted to % \itexspace and \operatorname during preprocessing. % itex: \space{ht}{dp}{wd} % % Height and baseline depth measurements are in units of tenths of an ex while % the width is measured in tenths of an em. \makeatletter \newdimen\itex@wd% \newdimen\itex@dp% \newdimen\itex@thd% \def\itexspace#1#2#3{\itex@wd=#3em% \itex@wd=0.1\itex@wd% \itex@dp=#2ex% \itex@dp=0.1\itex@dp% \itex@thd=#1ex% \itex@thd=0.1\itex@thd% \advance\itex@thd\the\itex@dp% \makebox[\the\itex@wd]{\rule[-\the\itex@dp]{0cm}{\the\itex@thd}}} \makeatother % \tensor and \multiscript \makeatletter \newif\if@sup \newtoks\@sups \def\append@sup#1{\edef\act{\noexpand\@sups={\the\@sups #1}}\act}% \def\reset@sup{\@supfalse\@sups={}}% \def\mk@scripts#1#2{\if #2/ \if@sup ^{\the\@sups}\fi \else% \ifx #1_ \if@sup ^{\the\@sups}\reset@sup \fi {}_{#2}% \else \append@sup#2 \@suptrue \fi% \expandafter\mk@scripts\fi} \def\tensor#1#2{\reset@sup#1\mk@scripts#2_/} \def\multiscripts#1#2#3{\reset@sup{}\mk@scripts#1_/#2% \reset@sup\mk@scripts#3_/} \makeatother % \slash \makeatletter \newbox\slashbox \setbox\slashbox=\hbox{$/$} \def\itex@pslash#1{\setbox\@tempboxa=\hbox{$#1$} \@tempdima=0.5\wd\slashbox \advance\@tempdima 0.5\wd\@tempboxa \copy\slashbox \kern-\@tempdima \box\@tempboxa} \def\slash{\protect\itex@pslash} \makeatother % math-mode versions of \rlap, etc % from Alexander Perlis, "A complement to \smash, \llap, and lap" % http://math.arizona.edu/~aprl/publications/mathclap/ \def\clap#1{\hbox to 0pt{\hss#1\hss}} \def\mathllap{\mathpalette\mathllapinternal} \def\mathrlap{\mathpalette\mathrlapinternal} \def\mathclap{\mathpalette\mathclapinternal} \def\mathllapinternal#1#2{\llap{$\mathsurround=0pt#1{#2}$}} \def\mathrlapinternal#1#2{\rlap{$\mathsurround=0pt#1{#2}$}} \def\mathclapinternal#1#2{\clap{$\mathsurround=0pt#1{#2}$}} % Renames \sqrt as \oldsqrt and redefine root to result in \sqrt[#1]{#2} \let\oldroot\root \def\root#1#2{\oldroot #1 \of{#2}} \renewcommand{\sqrt}[2][]{\oldroot #1 \of{#2}} % Manually declare the txfonts symbolsC font \DeclareSymbolFont{symbolsC}{U}{txsyc}{m}{n} \SetSymbolFont{symbolsC}{bold}{U}{txsyc}{bx}{n} \DeclareFontSubstitution{U}{txsyc}{m}{n} % Manually declare the stmaryrd font \DeclareSymbolFont{stmry}{U}{stmry}{m}{n} \SetSymbolFont{stmry}{bold}{U}{stmry}{b}{n} % Manually declare the MnSymbolE font \DeclareFontFamily{OMX}{MnSymbolE}{} \DeclareSymbolFont{mnomx}{OMX}{MnSymbolE}{m}{n} \SetSymbolFont{mnomx}{bold}{OMX}{MnSymbolE}{b}{n} \DeclareFontShape{OMX}{MnSymbolE}{m}{n}{ <-6> MnSymbolE5 <6-7> MnSymbolE6 <7-8> MnSymbolE7 <8-9> MnSymbolE8 <9-10> MnSymbolE9 <10-12> MnSymbolE10 <12-> MnSymbolE12}{} % Declare specific arrows from txfonts without loading the full package \makeatletter \def\re@DeclareMathSymbol#1#2#3#4{% \let#1=\undefined \DeclareMathSymbol{#1}{#2}{#3}{#4}} \re@DeclareMathSymbol{\neArrow}{\mathrel}{symbolsC}{116} \re@DeclareMathSymbol{\neArr}{\mathrel}{symbolsC}{116} \re@DeclareMathSymbol{\seArrow}{\mathrel}{symbolsC}{117} \re@DeclareMathSymbol{\seArr}{\mathrel}{symbolsC}{117} \re@DeclareMathSymbol{\nwArrow}{\mathrel}{symbolsC}{118} \re@DeclareMathSymbol{\nwArr}{\mathrel}{symbolsC}{118} \re@DeclareMathSymbol{\swArrow}{\mathrel}{symbolsC}{119} \re@DeclareMathSymbol{\swArr}{\mathrel}{symbolsC}{119} \re@DeclareMathSymbol{\nequiv}{\mathrel}{symbolsC}{46} \re@DeclareMathSymbol{\Perp}{\mathrel}{symbolsC}{121} \re@DeclareMathSymbol{\Vbar}{\mathrel}{symbolsC}{121} \re@DeclareMathSymbol{\sslash}{\mathrel}{stmry}{12} \re@DeclareMathSymbol{\bigsqcap}{\mathop}{stmry}{"64} \re@DeclareMathSymbol{\biginterleave}{\mathop}{stmry}{"6} \re@DeclareMathSymbol{\invamp}{\mathrel}{symbolsC}{77} \re@DeclareMathSymbol{\parr}{\mathrel}{symbolsC}{77} \makeatother % \llangle, \rrangle, \lmoustache and \rmoustache from MnSymbolE \makeatletter \def\Decl@Mn@Delim#1#2#3#4{% \if\relax\noexpand#1% \let#1\undefined \fi \DeclareMathDelimiter{#1}{#2}{#3}{#4}{#3}{#4}} \def\Decl@Mn@Open#1#2#3{\Decl@Mn@Delim{#1}{\mathopen}{#2}{#3}} \def\Decl@Mn@Close#1#2#3{\Decl@Mn@Delim{#1}{\mathclose}{#2}{#3}} \Decl@Mn@Open{\llangle}{mnomx}{'164} \Decl@Mn@Close{\rrangle}{mnomx}{'171} \Decl@Mn@Open{\lmoustache}{mnomx}{'245} \Decl@Mn@Close{\rmoustache}{mnomx}{'244} \makeatother % Widecheck \makeatletter \DeclareRobustCommand\widecheck[1]{{\mathpalette\@widecheck{#1}}} \def\@widecheck#1#2{% \setbox\z@\hbox{\m@th$#1#2$}% \setbox\tw@\hbox{\m@th$#1% \widehat{% \vrule\@width\z@\@height\ht\z@ \vrule\@height\z@\@width\wd\z@}$}% \dp\tw@-\ht\z@ \@tempdima\ht\z@ \advance\@tempdima2\ht\tw@ \divide\@tempdima\thr@@ \setbox\tw@\hbox{% \raise\@tempdima\hbox{\scalebox{1}[-1]{\lower\@tempdima\box \tw@}}}% {\ooalign{\box\tw@ \cr \box\z@}}} \makeatother % \mathraisebox{voffset}[height][depth]{something} \makeatletter \NewDocumentCommand\mathraisebox{moom}{% \IfNoValueTF{#2}{\def\@temp##1##2{\raisebox{#1}{$\m@th##1##2$}}}{% \IfNoValueTF{#3}{\def\@temp##1##2{\raisebox{#1}[#2]{$\m@th##1##2$}}% }{\def\@temp##1##2{\raisebox{#1}[#2][#3]{$\m@th##1##2$}}}}% \mathpalette\@temp{#4}} \makeatletter % udots (taken from yhmath) \makeatletter \def\udots{\mathinner{\mkern2mu\raise\p@\hbox{.} \mkern2mu\raise4\p@\hbox{.}\mkern1mu \raise7\p@\vbox{\kern7\p@\hbox{.}}\mkern1mu}} \makeatother %% Fix array \newcommand{\itexarray}[1]{\begin{matrix}#1\end{matrix}} %% \itexnum is a noop \newcommand{\itexnum}[1]{#1} %% Renaming existing commands \newcommand{\underoverset}[3]{\underset{#1}{\overset{#2}{#3}}} \newcommand{\widevec}{\overrightarrow} \newcommand{\darr}{\downarrow} \newcommand{\nearr}{\nearrow} \newcommand{\nwarr}{\nwarrow} \newcommand{\searr}{\searrow} \newcommand{\swarr}{\swarrow} \newcommand{\curvearrowbotright}{\curvearrowright} \newcommand{\uparr}{\uparrow} \newcommand{\downuparrow}{\updownarrow} \newcommand{\duparr}{\updownarrow} \newcommand{\updarr}{\updownarrow} \newcommand{\gt}{>} \newcommand{\lt}{<} \newcommand{\map}{\mapsto} \newcommand{\embedsin}{\hookrightarrow} \newcommand{\Alpha}{A} \newcommand{\Beta}{B} \newcommand{\Zeta}{Z} \newcommand{\Eta}{H} \newcommand{\Iota}{I} \newcommand{\Kappa}{K} \newcommand{\Mu}{M} \newcommand{\Nu}{N} \newcommand{\Rho}{P} \newcommand{\Tau}{T} \newcommand{\Upsi}{\Upsilon} \newcommand{\omicron}{o} \newcommand{\lang}{\langle} \newcommand{\rang}{\rangle} \newcommand{\Union}{\bigcup} \newcommand{\Intersection}{\bigcap} \newcommand{\Oplus}{\bigoplus} \newcommand{\Otimes}{\bigotimes} \newcommand{\Wedge}{\bigwedge} \newcommand{\Vee}{\bigvee} \newcommand{\coproduct}{\coprod} \newcommand{\product}{\prod} \newcommand{\closure}{\overline} \newcommand{\integral}{\int} \newcommand{\doubleintegral}{\iint} \newcommand{\tripleintegral}{\iiint} \newcommand{\quadrupleintegral}{\iiiint} \newcommand{\conint}{\oint} \newcommand{\contourintegral}{\oint} \newcommand{\infinity}{\infty} \newcommand{\bottom}{\bot} \newcommand{\minusb}{\boxminus} \newcommand{\plusb}{\boxplus} \newcommand{\timesb}{\boxtimes} \newcommand{\intersection}{\cap} \newcommand{\union}{\cup} \newcommand{\Del}{\nabla} \newcommand{\odash}{\circleddash} \newcommand{\negspace}{\!} \newcommand{\widebar}{\overline} \newcommand{\textsize}{\normalsize} \renewcommand{\scriptsize}{\scriptstyle} \newcommand{\scriptscriptsize}{\scriptscriptstyle} \newcommand{\mathfr}{\mathfrak} \newcommand{\statusline}[2]{#2} \newcommand{\tooltip}[2]{#2} \newcommand{\toggle}[2]{#2} % Theorem Environments \theoremstyle{plain} \newtheorem{theorem}{Theorem} \newtheorem{lemma}{Lemma} \newtheorem{prop}{Proposition} \newtheorem{cor}{Corollary} \newtheorem*{utheorem}{Theorem} \newtheorem*{ulemma}{Lemma} \newtheorem*{uprop}{Proposition} \newtheorem*{ucor}{Corollary} \theoremstyle{definition} \newtheorem{defn}{Definition} \newtheorem{example}{Example} \newtheorem*{udefn}{Definition} \newtheorem*{uexample}{Example} \theoremstyle{remark} \newtheorem{remark}{Remark} \newtheorem{note}{Note} \newtheorem*{uremark}{Remark} \newtheorem*{unote}{Note} %------------------------------------------------------------------- \begin{document} %------------------------------------------------------------------- \section*{Nullstellensatz} \hypertarget{context}{}\subsubsection*{{Context}}\label{context} \hypertarget{cohesive_toposes}{}\paragraph*{{Cohesive Toposes}}\label{cohesive_toposes} [[!include cohesive infinity-toposes - contents]] \hypertarget{geometry}{}\paragraph*{{Geometry}}\label{geometry} [[!include higher geometry - contents]] \hypertarget{contents}{}\section*{{Contents}}\label{contents} \noindent\hyperlink{idea}{Idea}\dotfill \pageref*{idea} \linebreak \noindent\hyperlink{classical_formulation_in_algebraic_geometry}{Classical formulation in algebraic geometry}\dotfill \pageref*{classical_formulation_in_algebraic_geometry} \linebreak \noindent\hyperlink{ExistenceOfPoints}{A weak Nullstellensatz: Existence of points}\dotfill \pageref*{ExistenceOfPoints} \linebreak \noindent\hyperlink{rabinowitschs_trick}{Rabinowitsch's ``trick''}\dotfill \pageref*{rabinowitschs_trick} \linebreak \noindent\hyperlink{GeneralAbstract}{General abstract formulations}\dotfill \pageref*{GeneralAbstract} \linebreak \noindent\hyperlink{references}{References}\dotfill \pageref*{references} \linebreak \noindent\hyperlink{traditional}{Traditional}\dotfill \pageref*{traditional} \linebreak \noindent\hyperlink{the_model_theoretic_perspective}{The model theoretic perspective}\dotfill \pageref*{the_model_theoretic_perspective} \linebreak \noindent\hyperlink{in_terms_of_cohesion}{In terms of cohesion}\dotfill \pageref*{in_terms_of_cohesion} \linebreak \hypertarget{idea}{}\subsection*{{Idea}}\label{idea} \emph{Nullstelle} means [[zero locus]]. Hilbert's \emph{Nullstellensatz} (theorem about zero loci) characterizes the joint zero loci of an [[ideal]] of functions in a [[polynomial ring]]. This is a foundational result in [[algebraic geometry]] at the heart of the [[Isbell duality|duality]] by which [[rings]] are dually interpreted as [[spaces]] ([[varieties]]). \hypertarget{classical_formulation_in_algebraic_geometry}{}\subsection*{{Classical formulation in algebraic geometry}}\label{classical_formulation_in_algebraic_geometry} In classical algebraic geometry over an [[algebraically closed field]] $k$, the Nullstellensatz concerns the [[fixed points]] of a standard [[Galois connection]] between [[ideals]] $I$ of the [[polynomial ring]] $k[x_1, \ldots, x_n]$ and [[subsets]] $V \subseteq k^n$. The Galois connection is induced by a [[relation]] $I \perp V$ iff $f(x) = 0$ for all $f \in I, x \in V$. Accordingly, letting $Idl(k[x_1, \ldots, x_n])$ be the set of ideals ordered by inclusion and $P(k^n)$ the set of subsets of $k^n$ ordered by inclusion, there are contravariant maps $Ideal: P(k^n) \to Idl(k[x_1, \ldots, x_n])$ and $Var: Idl(k[x_1, \ldots, x_n]) \to P(k^n)$ defined by \begin{displaymath} Ideal(S) = \{f \in k[x_1, \ldots, x_n]: \forall_x x \in S \Rightarrow f(x) = 0\}, \qquad Var(I) = \{x \in k^n: \forall_f f \in I \Rightarrow f(x) = 0\} \end{displaymath} which defines the Galois connection. The fixed points of $Var \circ Ideal: P(k^n) \to P(k^n)$ are, by definition, the closed sets of the [[Zariski topology]] on the [[affine space]] $k^n$ (``affine space'' here in the sense of algebraic geometry). These are the closed subvarieties of $k^n$. On the other side, the fixed points of $Ideal \circ Var$ is what the classical Nullstellensatz is about: \begin{theorem} \label{}\hypertarget{}{} \textbf{(Strong Nullstellensatz)} The fixed points of $Ideal \circ Var$ are precisely the [[radical]] ideals $I$ of $k[x_1, \ldots, x_n]$, i.e., ideals $I$ such that for any $r \in \mathbb{N}$, the condition $f^r \in I$ implies $f \in I$. \end{theorem} Thus there is a [[Galois correspondence]] between closed subvarieties and radical ideals. Typically the way that the strong Nullstellensatz is proved is by reduction to the so-called ``weak Nullstellensatz'' by means of the ``Rabinowitsch trick''. (The ``weak'' here may be misleading, as the weak Nullstellensatz may be considered the core result and the strong Nullstellensatz a corollary.) We now turn to these. \hypertarget{ExistenceOfPoints}{}\subsubsection*{{A weak Nullstellensatz: Existence of points}}\label{ExistenceOfPoints} One weak version of the Nullstellensatz says the following (e.g. \href{http://www.math.unipd.it/~frank/ALGANT/2010/Notes/7-12.pdf}{theorem 3.99.1 here}). For $k$ an [[algebraically closed field]] and $I$ a proper [[ideal]] in the [[polynomial ring]] $k[X_1, \cdots, X_n]$, the set $V(I)$ (of $n$-[[tuples]] $x = (x_i) \in k^n$ such that all polynomials in $I$ vanish when evaluated on these $x$) is an [[inhabited set]]. Before giving a proof, we remark (in view of more abstract formulations to come later) that an element of $V(I)$ is just a $k$-[[associative algebra|algebra]] [[homomorphism]] of the form \begin{displaymath} k \longleftarrow k[X_1, \cdots, X_n]/I \,. \end{displaymath} [[Isbell duality|Dually]] this is a morphism of [[affine schemes]] ([[spectrum of a commutative ring|ring spectra]]) of the form \begin{displaymath} Spec(k) \longrightarrow Spec(k[X_1, \cdots, X_n]/I) \,. \end{displaymath} Moreover, since $Spec(k)$ is the [[terminal object]] in this context, such a map is the same as a ``point'', a [[global element]] of $Spec(k[X_1, \cdots, X_n]/I)$. Hence in this form the Nullstellensatz simply says that (for $k$ algebraically closed) affine schemes have points. This formulation of the Nullstellensatz leads one to a \hyperlink{GeneralAbstract}{more general abstract formulation}. We turn now to the proof of the weak Nullstellensatz. \begin{lemma} \label{uncountable}\hypertarget{uncountable}{} If $k$ is an \textbf{uncountable} algebraically closed field, then for any proper ideal $I \subset k[X_1, \ldots, X_n]$ there is $(a_1, \ldots, a_n) \in k^n$ such that $f(a_1, \ldots, a_n) = 0$ for all $f \in I$. \end{lemma} \begin{proof} By the [[axiom of choice]], $I$ is contained in a [[maximal ideal]] $M$. So it suffices to prove it in the case where $I = M$ is maximal, where we prove there is an isomorphism $\phi: k[X_1, \ldots, X_n]/M \cong k$. Then the composite \begin{displaymath} k[X_1, \ldots, X_n] \stackrel{quot}{\twoheadrightarrow} k[X_1, \ldots, X_n]/M \stackrel{\phi}{\to} k \end{displaymath} sends each $X_i$ to a value $a_i$, so we have an inclusion of maximal ideals \begin{displaymath} (X_1 - a_1, \ldots, X_n - a_n) \subseteq M \end{displaymath} which must be an equality. In that case $(a_1, \ldots, a_n)$ is the desired point. Since $k$ is algebraically closed, it suffices to prove that the extension field $F = k[X_1, \ldots, X_n]/M$ over $k$ is algebraic over $k$. Clearly $F$ as a [[vector space]] over $k$ has countable [[dimension]]. Supposing to the contrary there is an element $t \in F$ that is transcendental over $k$, we have a [[subquotient]] vector space of $F$, \begin{displaymath} \frac{k(t)}{k[t]} \cong \bigoplus_{a \in k} \frac{k[\frac1{t - a}]}{k}, \end{displaymath} where the isomorphism is by partial fraction decomposition (ultimately by the [[Chinese remainder theorem]]), but the vector space on the right clearly has uncountable dimension because there are uncountably many $a \in k$, and this leads to a contradiction. \end{proof} Now we reduce to the case where $k$ is uncountable by employing a [[model theory|model-theoretic]] argument: \begin{theorem} \label{weak}\hypertarget{weak}{} \textbf{(Weak Nullstellensatz)} If $k$ is an algebraically closed field, then for any proper ideal $I \subset k[X_1, \ldots, X_n]$ there is $(a_1, \ldots, a_n) \in k^n$ such that $f(a_1, \ldots, a_n) = 0$ for all $f \in I$. \end{theorem} \begin{proof} Let $U$ be a non-principal [[ultrafilter]] on $\mathbb{N}$, and let $K$ be the [[ultraproduct|ultrapower]] $k^\mathbb{N}/U$. By [[Łoś's ultraproduct theorem]], $K$ is an algebraically closed field. Also $K$ is uncountable (Lemma \ref{ultrapower} below). First we claim $K \otimes_k I$ is a proper ideal of $K \otimes_k k[X_1, \ldots, X_n] \cong K[X_1,\ldots, X_n]$. For suppose we have $1 = \sum_{i = 1}^s f_i p_i$ for $p_1, \ldots, p_s \in I$ and $f_i \in K[X_1, \ldots, X_n]$. Writing the $f_i$ as $K$-linear combinations of monomials $X^\alpha$, there are finitely many $q_1, \ldots, q_t \in I$, each of the form $X^\alpha p_i$, so as to enable us to write $1 = \sum_{i=1}^t a_i q_i$ for $a_i = [(a_{i, m})] \in K$ and $q_i \in I$. By o`s theorem, \begin{displaymath} \{m \in \mathbb{N}: 1 = \sum_{i=1}^t a_{i, m} q_i\; in\; k[X_1, \ldots, X_n]\} \in U; \end{displaymath} this set is nonempty, and so there is at least one $m$ rendering the equation true. This contradicts $1 \notin I$. By Lemma \ref{uncountable}, there exists $(a_1, \ldots, a_n) \in K^n$ belonging to $Var(K \otimes_k I)$. By [[noetherian ring|Hilbert's basis theorem]], $I \subset k[X_1, \ldots, X_n]$ is generated by finitely many polynomials $p_1, \ldots, p_s$, so $Var(K \otimes_k I) \subseteq K^n$ is defined by finitely many formulas $p_1(X) = 0, \ldots, p_s(X) = 0$ and thus by o`s theorem again, \begin{displaymath} \{m \in \mathbb{N}: p_i(a_{1, m}, a_{2, m}, \ldots, a_{n, m}) = 0\; for\; i = 1, \ldots, s\} \in U \end{displaymath} and so this set is nonempty and therefore there is a point $(a_{1, m}, \ldots, a_{n, m}) \in k^n$ that belongs to $Var(I)$. \end{proof} To prove $K$ uncountable, we use the fact that an algebraically closed field is at least infinite. Then the missing piece is supplied by the following result. \begin{lemma} \label{ultrapower}\hypertarget{ultrapower}{} If $X$ is an infinite set and $U$ is a non-principal ultrafilter on $\mathbb{N}$, then the ultrapower $X^\mathbb{N}/U$ has cardinality ${|X|}^{\aleph_0}$ (so at least $2^{\aleph_0}$). \end{lemma} \begin{proof} For $j \in \mathbb{N}$, put $[j] = \{i \in \mathbb{N}: i \lt j\}$. If $X$ is infinite, then there is a mono $i_j: X^{[j]} \to X$ for each $j \geq 0$. For any $h: \mathbb{N} \to X$, let $h|_{[j]}$ denote the composite $[j] \hookrightarrow \mathbb{N} \stackrel{h}{\to} X$, and define $h': \mathbb{N} \to X$ by $h'(j) = i_j(h|_{[j]})$. Let $[h']_U$ denote the value of $h'$ under the quotient map $X^\mathbb{N} \to X^\mathbb{N}/U$. Claim: The map $X^\mathbb{N} \to X^\mathbb{N}/U$ that takes $h$ to $[h']_U$ is injective. For, if $g, h: \mathbb{N} \to X$ are distinct, then they differ at some $i \in \mathbb{N}$. Then $g|_{[j]} \neq h|_{[j]}$ whenever $i \lt j$, which in turn implies $i_j(g|_{[j]}) \neq i_j(h|_{[j]})$ i.e. $g'(j) \neq h'(j)$ for all $j$ such that $j \gt i$. (That is, ``for almost all $j$'', belonging to a cofinite set that belongs to $U$.) Thus $[g']_U \neq [h']_U$, which establishes the claim. The lemma follows immediately from the claim. \end{proof} \hypertarget{rabinowitschs_trick}{}\subsubsection*{{Rabinowitsch's ``trick''}}\label{rabinowitschs_trick} Rabinowitsch, who later renamed himself Rainich (see the story \href{http://mathoverflow.net/a/45195/2926}{here}), showed how to deduce the Strong Nullstellensatz from the Weak Nullstellensatz. Often this is described as Rabinowitsch's ``trick'' (i.e., something involving a stroke of cleverness), but see the remark below which places the trick conceptually within the general method of localization. Let $k$ be algebraically closed and let $I \subseteq k[x_1, \ldots, x_n]$ be an ideal. To show that $Ideal(Var(I)) = \sqrt{I}$, suppose that $f \in k[x_1, \ldots, x_n]$ vanishes at any point where all of a given set of polynomials $f_1, \ldots, f_s \in k[x_1, \ldots, x_n]$ vanish. It suffices to show that for some $r$ we have that $f^r$ belongs to the ideal generated by the $f_i$. Introduce a fresh variable $x_0$, and observe that there is no point $(a_0, a_1, \ldots, a_n) \in k^{n+1}$ where the polynomials $1 - x_0 f, f_1, \ldots, f_s$ simultaneously vanish. By the Weak Nullstellensatz (Theorem \ref{weak}), these polynomials must generate the unit ideal, say \begin{displaymath} 1 = p_0(x)(1 - x_0 f) + p_1(x) f_1 + \ldots + p_s(x) f_s \end{displaymath} where $x = (x_0, x_1, \ldots, x_n)$. There is a $k$-algebra map $k[x_0, x_1, \ldots, x_n] \to k(x_1, \ldots, x_n)$ sending $x_0 \mapsto 1/f$ and $x_i \mapsto x_i$ for $1 \leq i \leq n$, where the above identity yields \begin{displaymath} 1 = \sum_{i=1}^s p_i(1/f, x_1, \ldots, x_n) f_i \end{displaymath} which, if $r$ is the highest degree of $x_0$ appearing in a $p_i$, may be rewritten in the form $f^r = \sum_{i=1}^s g_i f_i$ in $k[x_1, \ldots, x_n]$ by clearing denominators. \begin{remark} \label{}\hypertarget{}{} Proving that $f \in \sqrt{I}$ means we prove that $f$ is nilpotent in $k[x_1, \ldots, x_n]/I$, in other words that the localization of $k[x_1, \ldots, x_n]/I$ with respect to the (image of the) multiplicative system $\{1, f, \ldots, f^n, \ldots\}$ vanishes. Clearly we localize by inverting (the image of) $f$, by constructing \begin{displaymath} \left(k[x_1, \ldots, x_n]/I\right)[f^{-1}] = k[x_0, x_1, \ldots, x_n]/(I, 1 - x_0 f). \end{displaymath} Clearly $Var(I, 1 - x_0 f) = \emptyset$, and so by the weak Nullstellensatz the ideal $(I, 1 - x_0 f)$ is improper, i.e., the localization vanishes. \end{remark} \hypertarget{GeneralAbstract}{}\subsection*{{General abstract formulations}}\label{GeneralAbstract} By the discussion above at \emph{\hyperlink{ExistenceOfPoints}{Existence of points}} it follows that phrased in terms of the [[sheaf topos]] over the [[Zariski site]], the weak Nullstellensatz says that ``objects have global points''. Motivated by this, in (\hyperlink{Lawvere07}{Lawvere 07, def. 2}) is a proposal for a [[general abstract]] formulation of what constitutes a \emph{Nullstellensatz}, formalized in the context of [[cohesion]]. A [[cohesive topos]] $\mathbf{H}$ over some [[base topos]] $\mathbf{S}$ is a relative [[topos]] such that the terminal [[geometric morphism]] extended to an [[adjoint quadruple]] $(\Pi \dashv Disc \dashv \Gamma \dashv coDisc)$ with $Disc, coDisc \colon \mathbf{S}\hookrightarrow \mathbf{H}$ [[full and faithful functor|full and faithful]] and $\Pi$ preserving [[finite products]]. The top [[adjoint triple]] here induces a canonical [[natural transformation]] \begin{displaymath} ptp \;\colon\; \Gamma \longrightarrow \Pi \end{displaymath} which deserves to be called the \emph{\href{cohesive+topos#CanonicalComparison}{points-to-pieces transformation}}. Consider the condition that $ptp$ is on every object $X$ of $\mathbf{H}$ an [[epimorphism]]. In terms of the geometric interpretation of [[cohesion]] this means that ``all pieces of $X$ have at least one point''. (See at \emph{\href{cohesive+topos#PiecesHavePoints}{cohesive topos -- Pieces have points}}) This statement is what in \hyperlink{Lawvere07}{Lawvere 07, def. 2 c)} is also referred to as \textbf{Nullstellensatz}. More comments on this are in (\hyperlink{Lawvere11}{Lawvere 11}). (In (\hyperlink{Johnstone11}{Johnstone 11}) this condition is called ``punctual local connectedness''.) For a detailed analysis of how this general abstract concept indeed captures the traditional meaning of \emph{Nullstellensatz}, see (\hyperlink{Lawvere15}{Lawvere 15}, \hyperlink{Menni}{Menni}), also (\hyperlink{Tholen}{Tholen}). \hypertarget{references}{}\subsection*{{References}}\label{references} \hypertarget{traditional}{}\subsubsection*{{Traditional}}\label{traditional} \begin{itemize}% \item Wikipedia, \emph{\href{http://en.wikipedia.org/wiki/Hilbert's_Nullstellensatz}{Hilbert's Nullstellensatz}} \end{itemize} \hypertarget{the_model_theoretic_perspective}{}\subsubsection*{{The model theoretic perspective}}\label{the_model_theoretic_perspective} \begin{itemize}% \item [[Marta Bunge|M. Bunge]], \emph{On the transfer of an abstract Nullstellensatz} , Comm. Alg. \textbf{10} (1982) pp.1891-1906. \item W. A. MacCaull, \emph{Hilbert's Nullstellensatz revisited} , JPAA \textbf{54} (1988) pp.289-297. \item V. Weispfenning, \emph{Nullstellens\"a{}tze - a model theoretic framework} , Z. Math. Logik Grundl. Math. \textbf{23} (1977) pp. 539-545. \end{itemize} \hypertarget{in_terms_of_cohesion}{}\subsubsection*{{In terms of cohesion}}\label{in_terms_of_cohesion} Discussion of the Nullstellensatz in terms of [[cohesion]]: \begin{itemize}% \item [[William Lawvere]], \emph{Axiomatic cohesion} Theory and Applications of Categories, Vol. 19, No. 3 (2007) pp. 41--49. (\href{http://www.tac.mta.ca/tac/volumes/19/3/19-03.pdf}{pdf}) \item [[William Lawvere]], \emph{\href{http://mathoverflow.net/a/52894/381}{MO comment on the general abstract Nullstellensatz}} (2011) \item [[F. William Lawvere]], \emph{Birkhoff's Theorem from a geometric perspective: A simple example} , Categories and General Algebraic Structures with Applications, Vol. 4, No. 1 (2015) pp. 1--7. (\href{http://www.cgasa.ir/pdf_12425_5ddf468d82aad53ce2e8ee88dd3bf84d.html}{pdf}) \item [[Peter Johnstone]], \emph{Remarks on punctual local connectedness}, Theory and Applications of Categories, Vol. 25, 2011, No. 3, pp 51-63 (\href{http://tac.mta.ca/tac/volumes/25/3/25-03abs.html}{TAC}) \item [[Marie La Palme Reyes]], [[Gonzalo E. Reyes|G. E. Reyes]], H. Zolfaghari, \emph{Generic Figures and their Glueings} , Polimetrica Milano 2004. (pp.206-224) \item [[Matias Menni]], \emph{The manifestation of Hilbert's Nullstellensatz in Lawvere's Axiomatic Cohesion} (\href{http://www.mat.uc.pt/~workct/slides/Menni.pdf}{pdf slides} \href{http://www.mat.uc.pt/~workct/abstracts/Menni.pdf}{pdf abstract}) \item [[Matías Menni]], \emph{Sufficient Cohesion over Atomic Toposes} , Cah.Top.G\'e{}om.Diff.Cat. \textbf{LV} (2014). (\href{https://sites.google.com/site/matiasmenni/SufCohesion12.pdf?attredirects=0}{preprint}) \item [[Matías Menni]], \emph{Continuous Cohesion over Sets} , TAC \textbf{29} no.20 (2014) pp.542-568. (\href{http://www.tac.mta.ca/tac/volumes/29/20/29-20.pdf}{pdf}) \item [[Walter Tholen]], \emph{Nullstellen and Subdirect Representation} (\href{http://www.math.yorku.ca/~tholen/nullstMarch2013bis.pdf}{pdf}) \end{itemize} [[!redirects Nullstellensätze]] [[!redirects Hilbert's Nullstellensatz]] [[!redirects nullstellensatz]] \end{document}