\documentclass[11pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage{isabelle,isabellesym}
\usepackage[numbers]{natbib}

% further packages required for unusual symbols (see also
% isabellesym.sty), use only when needed

\usepackage{amssymb}
  %for \<leadsto>, \<box>, \<diamond>, \<sqsupset>, \<mho>, \<Join>,
  %\<lhd>, \<lesssim>, \<greatersim>, \<lessapprox>, \<greaterapprox>,
  %\<triangleq>, \<yen>, \<lozenge>

%\usepackage{eurosym}
  %for \<euro>

%\usepackage[only,bigsqcap]{stmaryrd}
  %for \<Sqinter>

%\usepackage{eufrak}
  %for \<AA> ... \<ZZ>, \<aa> ... \<zz> (also included in amssymb)

%\usepackage{textcomp}
  %for \<onequarter>, \<onehalf>, \<threequarters>, \<degree>, \<cent>,
  %\<currency>

% this should be the last package used
\usepackage{pdfsetup}

% urls in roman style, theory text in math-similar italics
\urlstyle{rm}
\isabellestyle{it}

% for uniform font size
%\renewcommand{\isastyle}{\isastyleminor}

\renewcommand{\isacharunderscorekeyword}{\mbox{\_}}
\renewcommand{\isacharunderscore}{\mbox{\_}}
\renewcommand{\isasymtturnstile}{\isamath{\Vdash}}
\renewcommand{\isacharminus}{-}
\newcommand{\axiomas}[1]{\mathit{#1}}
\newcommand{\ZFC}{\axiomas{ZFC}}


\begin{document}

\title{Formalization of Forcing in Isabelle/ZF}
\author{Emmanuel Gunther\thanks{Universidad Nacional de C\'ordoba. 
    Facultad de Matem\'atica, Astronom\'{\i}a,  F\'{\i}sica y
    Computaci\'on.}
  \and
  Miguel Pagano\footnotemark[1]
  \and
  Pedro S\'anchez Terraf\footnotemark[1] \thanks{Centro de Investigaci\'on y Estudios de Matem\'atica
    (CIEM-FaMAF), Conicet. C\'ordoba. Argentina.
    Supported by Secyt-UNC project 33620180100465CB.}
}
\maketitle

\begin{abstract}
  We formalize the theory of forcing in the set theory framework of
  Isabelle/ZF. Under the assumption of the existence of a countable
  transitive model of $\ZFC$, we construct a proper generic extension and show
  that the latter also satisfies $\ZFC$.
\end{abstract}


\tableofcontents

% sane default for proof documents
\parindent 0pt\parskip 0.5ex

\section{Introduction}
We formalize the theory of forcing. We work on top of the Isabelle/ZF
framework developed by \citet{DBLP:journals/jar/PaulsonG96}. Our
mechanization is described in more detail in our papers
\cite{2018arXiv180705174G} (LSFA 2018), \cite{2019arXiv190103313G},
and \cite{2020arXiv200109715G} (IJCAR 2020).

\subsection*{Release notes}
\label{sec:release-notes}

We have improved several aspects of our development before submitting
it to the AFP:
\begin{enumerate}
\item Our session \isatt{Forcing} depends on the new release of
  \isatt{ZF-Constructible}.
\item We streamlined the commands for synthesizing renames and formulas.
\item The command that synthesizes formulas produces the lemmas for
  them (the synthesized term is a formula and the equivalence between
  the satisfaction of the synthesized term and the relativized term).
\item Consistently use of structured proofs using Isar (except for one
  coming from a schematic goal command).
\end{enumerate}

A cross-linked HTML version of the development can be found at
\url{https://cs.famaf.unc.edu.ar/~pedro/forcing/}.

% generated text of all theories
\input{session}

% optional bibliography
\bibliographystyle{root}
\bibliography{root}

\end{document}

%%% Local Variables:
%%% mode: latex
%%% TeX-master: t
%%% End:
