feat(aritmetica): aggiunge il nuovo template

main
parent 3d9023fbe0
commit a24c5116ee

1
.gitignore vendored

@ -5,3 +5,4 @@
*.synctex.gz *.synctex.gz
*.toc *.toc
*.out *.out
*.pre

@ -0,0 +1,33 @@
\section{Gruppi}
\subsection{Definizione e motivazione}
Innanzitutto, prima di dare una definizione formale, un
\vocab{gruppo} è una struttura algebrica, ossia un insieme
di oggetti di varia natura che rispettano alcune determinate
regole.
Il motivo (con ogni probabilità l'unico) per cui la teoria dei
gruppi risulta interessante è la facilità con cui un'astrazione
come la struttura di gruppo permette di desumere teoremi universali
per oggetti matematici apparentemente scollegati.
Infatti, dimostrato un teorema in modo astratto per un gruppo
generico, esso è valido per ogni gruppo. Per quanto questo
fatto risulti di una banalità assoluta, esso è di fondamentale
aiuto nello studio della matematica. Si pensi ad esempio all'
aritmetica modulare, o alle funzioni bigettive, o ancora
alle trasformazioni del piano: tutte queste nozioni condividono
teoremi e metodi che si fondano su una stessa logica. Come vedremo,
esse condividono la natura di gruppo.
\begin{definition}
Dato un insieme non vuoto $G$, esso si dice \textbf{gruppo} se data
un'operazione ben definita $\cdot : G \times G \to G$ è t.c:
\begin{itemize}
\item (\vocab{associatività}) $\forall a, b, c \in G, \, (a \cdot b) \cdot c = a \cdot (b \cdot c)$
\item (\vocab{esistenza dell'elem. neutro}) $\exists e \in G \mid a \cdot e = a = e \, \cdot a \forall a \in G$
\item (\vocab{esistenza dell'elem. inverso}) $\forall a \in G, \, \exists a^{-1} \in G \mid a \cdot a^{-1} = a^{-1} \cdot a = e$
\end{itemize}
\end{definition}

@ -1,143 +0,0 @@
\chapter{Teoria degli insiemi}
Il concetto di insieme è primitivo e pertanto non definito formalmente
in questa sede. Viene tuttavia definita la terminologia che riguarda
le teoria dei suddetti insiemi.
Quando si leggerà $a \in S$, s'intenderà che ``$a$ appartiene all'insieme $S$'', mentre
$a \notin S$ si legge ``$a$ non appartiene all'insieme $S$''. Un insieme $A$ si dice
sottoinsieme di $B$ ($A \subseteq B$) quando $a \in A \rightarrow a \in B$; in particolare
si dice sottoinsieme proprio di $B$ ($A \subset B$) quando
$A \subseteq B \land \exists b \in B \mid b \notin A$.
Due insiemi $A$ e $B$ sono uguali se e solo se $A \subseteq B \land B \subseteq A$.
L'insieme vuoto è l'insieme che non ha elementi, ed è sottoinsieme di ogni insieme.
\section{L'operazione di unione}
L'unione di due insiemi $A$ e $B$ è un'operazione che restituisce un insieme
$A \cup B = \{x \mid x \in A \lor x \in B\}$.
Tale operazione si può estendere a più insiemi mediante l'introduzione di
un \textit{insieme di indici} $T$ per una famiglia di insiemi. Un insieme di
indici $T$ rispetto a un famiglia $F=\{A_t\}$ ha la seguente proprietà: $\forall t \in
T, \exists A_t \in F$; ossia è in grado di enumerare gli insiemi della famiglia $F$.
L'unione è pertanto definita su una famiglia $F$ come $\bigcup_{t \in T} A_t =
\{x \mid (\exists t \in T \mid x \in A_t)\}$.
L'unione gode delle seguente proprietà: $A \subseteq B \rightarrow A \cup B = B$
(in particolare, $A \cup \emptyset = A$).
\section{L'operazione di intersezione}
Analogamente a come è stata definita l'unione, l'intersezione è un'operazione che
resistuisce un insieme $A \cap B = \{x \mid x \in A \land x \in B\}$; ossia estesa a più
insiemi: $\bigcap_{t \in T} A_t = \{x \mid (\forall t \in T \mid x \in A_t)\}$.
In modo opposto all'unione, l'intersezione è tale per cui $A \subseteq B \rightarrow
A \cap B = A$ (in particolare, $A \cap \emptyset = \emptyset$).
\subsection{Relazioni tra l'operazione di intersezione e di unione}
Si può facilmente dimostrare la seguente relazione, valida per qualunque scelta
di insiemi $A$, $B$ e $C$: $(A \cup B) \cap C = (A \cap C) \cup (B \cap C)$.
\begin{proof}
Prima di tutto, un elemento di entrambi i due insiemi appartiene obbligatoriamente a $C$:
nel caso del primo membro, il motivo è banale; riguardo al secondo membro, invece, ci accorgiamo
che esso appartiene almeno a uno dei due insiemi dell'unione, riconducendoci a un'intersezione
con l'insieme $C$.
Ogni elemento di $(A \cup B) \cap C$ appartiene inoltre ad almeno $A$ o $B$, e quindi,
appartenendo anche a $C$, appartiene a $A \cap C$ o $B \cap C$, e quindi a $(A \cap C) \cup (B \cap C)$.
Pertanto $(A \cup B) \cap C \subseteq (A \cap C) \cup (B \cap C)$.
In direzione opposta, ogni elemento di $(A \cap C) \cup (B \cap C)$ appartiene almeno
ad uno di dei due insiemi dell'unione. Per appartenere all'intersezione, tale elemento
appartiene ad almeno $A$ o $B$; e quindi appartiene ad $A \cup B$. Appartenendo anche a $C$,
appartiene anche $(A \cup B) \cap C$. Quindi $(A \cap C) \cup (B \cap C) \subseteq (A \cup B) \cap C$.
Valendo l'inclusione in entrambe le direzioni, $(A \cup B) \cap C = (A \cap C) \cup (B \cap C)$.
\end{proof}
\section{L'operazione di sottrazione e di complemento}
L'operazione di sottrazione su due insiemi $A$ e $B$ è definita come
$A \setminus B = \{x \mid x \in A \land x \notin B\}$. Si può facilmente
verificare che $A = (A \cap B) \cup (A \setminus B)$.
\begin{proof}
Ogni elemento di $A$ può appartenere o non appartenere a $B$: nel primo caso,
appartiene anche a $A \cap B$, e quindi a $(A \cap B) \cup (A \setminus B)$;
altrimenti appartiene per definizione a $A \setminus B$, e quindi sempre
a $(A \cap B) \cup (A \setminus B)$. Pertanto $A \subseteq (A \cap B) \cup (A \setminus B)$.
Ogni elemento di $(A \cap B) \cup (A \setminus B)$ appartiene ad almeno uno
dei due operandi dell'unione; in entrambi i casi deve appartenere ad $A$. Quindi
$(A \cap B) \cup (A \setminus B) \subseteq A$.
\end{proof}
In particolare, se $B \subseteq A$, $A \setminus B$ si dice \textbf{complemento di $B$ in $A$}.
L'operazione di complemento viene indicata con $A'$ qualora sia noto l'universo di riferimento $U$
per cui $A' = U \setminus A$.
\subsection{Le leggi di De Morgan}
Si possono dimostrare le seguenti proprietà:
\begin{itemize}
\item $(A \cup B)' = A' \cap B'$
\item $(A \cap B)' = A' \cup B'$
\end{itemize}
\begin{proof}[Prima legge di De Morgan]
Un elemento che appartiene a $(A \cup B)'$ non appartiene né a $A$ né a $B$, e quindi
appartiene sia a $A'$ che a $B'$, pertanto anche alla loro intersezione $A' \cap B'$
[$(A \cup B)' \subseteq A' \cap B'$].
Allo stesso modo, un elemento di $A' \cap B'$ non appartiene né ad $A$ né a $B$, e quindi
non appartiene ad $A \cup B$, appartenendo dunque a $(A \cup B)'$
[$A' \cap B' \subseteq (A \cup B)'$]. Pertanto $(A \cup B)' = A' \cap B'$.
\end{proof}
\begin{proof}[Seconda legge di De Morgan]
Un elemento che appartiene a $(A \cap B)'$ può appartenere al più ad $A$ o esclusivamente
a $B$; pertanto appartiene ad almeno $A'$ o $B'$, e qunidi alla loro unione
[$(A \cap B)' \subseteq A' \cup B'$].
Allo stesso modo, un elemento di $A' \cup B'$ appartiene ad almeno $A'$ o $B'$, e quindi
non può appartenere a entrambi $A$ e $B$, appartenendo dunque a $(A \cap B)'$
[$A' \cup B' \subseteq (A \cap B)'$]. Pertanto $(A \cap B)' = A' \cup B'$.
\end{proof}
\subsection{La logica affrontata con gli insiemi}
In modo veramente interessante, ogni operatore logico segue la logica
dell'insiemistica (e viceversa); laddove l'operatore $\cup$ (o $\cap$) ha una certa proprietà,
la soddisfa anche $\lor$ (o $\land$).
Quindi valgono tutte le leggi sopracitate:
\begin{itemize}
\item $(a \lor b) \land c = (a \land c) \lor (b \land c)$
\item $(a \land b) \lor c = (a \lor c) \land (b \lor c)$
\item $\lnot (a \land b) = \lnot a \lor \lnot b$
\item $\lnot (a \lor b) = \lnot a \land \lnot b$
\end{itemize}
\section{Il prodotto cartesiano}
Il prodotto cartesiano di una famiglia ordinata di insiemi $F$ con un certo insieme
di indici $T$ è l'insieme
$\bigtimes_{t \in T} A_t = \{(a_{t_0}, a_{t_1}, \ldots) \mid a_{t_0} \in A_{t_0} \land
a_{t_1} \in A_{t_1} \land \ldots\}$. In particolare, il prodotto cartesiano di
due due insiemi $A$ e $B$ si indica con $A \times B = \{(a, b) \mid a \in A \land b \in B\}$.
Una $n$-tupla ordinata, ossia la forma in cui è raccolto un certo elemento di un prodotto cartesiano,
è uguale ad una altra tupla se e solo se ogni elemento di una tupla è uguale a quello
corrispondente in ordine dell'altra: pertanto, in generale, $(a, b) \neq (b, a)$.
Inoltre, il prodotto cartesiano $A \times A$ viene indicato con $A^2$ (analogamente,
$A^n = \bigtimes_{i=1}^{n} A$).

@ -1,300 +0,0 @@
\chapter{Relazioni di equivalenza e applicazioni}
\section{Le relazioni di equivalenza}
Utilizzando le nozioni di base della teoria degli
insiemi è possibile definire formalmente il concetto
di relazione di equivalenza.
Dato un sottoinsieme $R$ di $A \times A$, $R$ si
dice relazione di equivalenza se:
\begin{itemize}
\item $(a,a) \in R$ (proprietà riflessiva)
\item $(a,b) \in R \implies (b,a) \in R$ (proprietà simmetrica)
\item $(a,b), (b,c) \in R \implies (a,c) \in R$ (proprietà transitiva)
\end{itemize}
Tale definizione può essere semplificata
implementando l'operazione binaria $\sim$ tale per cui
$a\sim b \iff (a,b) \in R$. In questo modo, le condizioni
di una relazione di equivalenza $R$ diventano:
\begin{itemize}
\item $a \sim a$
\item $a \sim b \implies b \sim a$
\item $a \sim b \land b \sim c \implies a \sim c$
\end{itemize}
\begin{lemma}
Definita una relazione di equivalenza $R$ con operazione
binaria $\sim$, $a \sim b \land c \sim b \implies a \sim c$.
\end{lemma}
\begin{proof}
Dalla proprietà riflessiva di $R$, $c \sim b \implies b \sim c$.
Verificandosi sia $a \sim b$ che $b \sim c$, si applica la proprietà
transitiva di $R$, che implica $a \sim c$.
\end{proof}
\subsection{Classi di equivalenza}
Si definisce classe di equivalenza di $a$ per un certo insieme
$A$ e una certa relazione di equivalenza $R$ l'insieme
$\cl(a)=\{x \in A \mid a \sim x\}$, ossia l'insieme di tutti i punti che
si relazionano ad $a$ mediante tale relazione di equivalenza.
\begin{theorem}
Le classi di equivalenza partizionano l'insieme di relazione
in insiemi a due a due disgiunti.
\end{theorem}
\begin{proof}
Prima di tutto è necessario dimostrare che l'unione di tutte
le classi di equivalenza dà luogo all'insieme di relazione $A$.
Per ogni elemento $a \in A$, $a$ appartiene a $\cl(a)$ per la proprietà
riflessiva di $R$, ossia della relazione di equivalenza su cui
$\cl$ è definita. Pertanto $\bigcup_{a \in A} \cl(a)$, che contiene solo
elementi di $A$, è uguale ad $A$.
In secondo luogo, è necessario dimostrare che le classi di equivalenza
sono o disgiunte o identiche. Ponendo l'esistenza
di un $a \in \cl(x) \, \cap \, \cl(y)$, la dimostrazione deriva dalle proprietà
di $R$: sia $b \in cl(x)$, allora $b \sim a$; dunque, dal momento che $b \sim a$ e che
$a \sim y$, $b \sim y$, ossia $\cl(x) \subseteq \cl(y)$ (analogamente si ottiene
$\cl(y) \subseteq \cl(x)$, e quindi $\cl(x) = \cl(y)$).
\end{proof}
\begin{theorem}
Data una partizione di un insieme che lo compone in insiemi a due
a due disgiunti, è sempre possibile costruire delle classi di equivalenza.
\end{theorem}
\begin{proof}
Vogliamo dimostrare che, data la stessa appartenenza ad un insieme come relazione,
essa è una relazione di equivalenza.
Sicuramente $a \sim a$ (proprietà riflessiva).
Inoltre, $a \sim b \implies a, b \in A_\alpha \implies b \sim a$
(proprietà simmetrica).
Infine, $a \sim b, \, b \sim c \implies a, b, c \in A_\alpha \implies a \sim c$
(proprietà transitiva).
In particolare, dato $a \in A_\alpha$, $\cl(a) = A_\alpha$.
\end{proof}
\section{Le applicazioni}
La nozione di applicazione di un insieme in un altro ci permette
di generalizzare, ma soprattutto di definire, il concetto di
funzione.
\begin{definition}[Applicazione]
Dati due insiemi $S$ e $T$, si dice che $\sigma$ è un'applicazione
da $S$ a $T$, se $\sigma \subseteq (S \times T) \land \forall s \in S, \existsone
t \in T \mid (s, t) \in \sigma$. Tale applicazione allora si scrive come
$\sigma : S \to T$.
\end{definition}
Si scrive $\sigma : s \rightarrowtail \sigma(s)$ per sottintendere che
$\forall \, (s, t) \in \sigma, (s, t) = (s, \sigma(t))$. Dato
$t=\sigma(s)$, si dice che $t$ è l'\textit{immagine} di $s$ appartenente
al \textit{codominio} $T$, enunciato come $\Codom(\sigma)$, mentre $s$ è
la \textit{preimmagine} di $t$, appartenente al \textit{dominio} $S$, detto
$\Dom(\sigma)$. L'insieme ${(s, t) \in \Dom(\sigma) \times \Codom(\sigma) \mid (s, t) \in \sigma}$ è
detto \textit{grafico} di $\sigma$, ossia $\Gr(\sigma)$.
\subsection{Proprietà delle applicazioni}
\begin{definition}[Iniettività]
Un'applicazione si dice iniettiva se ad ogni immagine
è corrisposto al più un elemento, ossia anche che
$s_1 \neq s_2 \implies \sigma(s_1) \neq \sigma(s_2)$.
\end{definition}
\begin{definition}[Surgettività]
Un'applicazione si dice surgettiva (o talvolta \textit{su $T$}) se ad ogni immagine
è corrisposto almeno un elemento, ossia anche che
$\forall t \in T, \exists s \mid \sigma(s) = t$.
\end{definition}
\begin{definition}[Bigettività]
Un'applicazione si dice bigettiva se è sia iniettiva che
suriettiva, ossia se $\forall t \in T, \existsone s \in S
\mid \sigma(s) = t$.
\end{definition}
\subsection{Composizione di applicazioni}
\begin{definition}[Composizione]
Date due applicazioni $\sigma : S \to T$ e
$\tau : T \to U$, si può definire
un'applicazione detta composizione
$(\tau \circ \sigma) : S \to U$, tale per cui
$(\tau \circ \sigma) : s \mapsto \tau(\sigma(s))$.
\end{definition}
Dobbiamo tuttavia assicurarci che tale applicazione
possa esistere, ossia verificare che $\forall s \in S \existsone
u \in U \mid (s, u) \in S \times U$; quindi che $\tau(\sigma(s))$
sia unico. Tuttavia questa proprietà è banale: $\sigma(s)$ è Sicuramente
unico poiché $\sigma$ è un'applicazione, e pertanto $\tau(\sigma(s))$ lo è,
essendo anch'essa un'applicazione.
\subsubsection{Proprietà associativa della composizione}
È inoltre interessante dimostrare che la composizione rispetta la proprietà associativa,
ossia che $(\alpha \circ \beta) \circ \gamma = \alpha \circ (\beta \circ \gamma)$.
\begin{lemma}[Proprietà associativa della composizione]
\label{lemma:associativita_composizione}
Date tre applicazioni $\alpha$, $\beta$, $\gamma$,
$(\alpha \circ \beta) \circ \gamma = \alpha \circ (\beta \circ \gamma)$.
\end{lemma}
\begin{proof}
Preso un $a$ appartenente al dominio di $\gamma$, per il primo membro abbiamo:
$$((\alpha \circ \beta) \circ \gamma)(a) = (\alpha \circ \beta)(\gamma(a)) =
\alpha(\beta(\gamma(a)))$$
Analogamente per il secondo membro abbiamo:
$$(\alpha \circ (\beta \circ \gamma))(a) = \alpha((\beta \circ \gamma)(a)) =
\alpha(\beta(\gamma(a)))$$
\end{proof}
\subsubsection{Iniettività, surgettività e bigettività della composizione}
L'iniettività, la surgettività e la bigettività di una composizione sono
ereditate dalle applicazioni di cui è composta se tutte queste le rispettano, ossia:
\begin{itemize}
\item $(\tau \circ \sigma)$ è iniettiva se $\tau$ e $\sigma$ lo sono.
\item $(\tau \circ \sigma)$ è surgettiva se $\tau$ e $\sigma$ lo sono.
\item $(\tau \circ \sigma)$ è bigettiva se $\tau$ e $\sigma$ lo sono.
\end{itemize}
\begin{lemma}[Iniettività della composizione]
\label{lemma:iniettivita_composizione}
$(\tau \circ \sigma)$ è iniettiva se $\tau$ e $\sigma$ lo sono.
\end{lemma}
\begin{proof}
Dal momento che $\sigma$ è iniettiva $s_1 \neq s_2 \implies \sigma(s_1) \neq \sigma(s_2)$,
ma a sua volta, essendo $\tau$ iniettiva, $\sigma(s_1) \neq \sigma(s_2) \implies
\tau(\sigma(s_1)) \neq \tau(\sigma(s_2))$.
\end{proof}
\begin{lemma}[Surgettività della composizione]
\label{lemma:surgettivita_composizione}
$(\tau \circ \sigma)$ è surgettiva se $\tau$ e $\sigma$ lo sono.
\end{lemma}
\begin{proof}
Dal momento che $\tau$ è surgettiva, allora $\forall u \in
\Codom(\tau), \exists t \in \Dom(\tau) \mid u = \tau(t)$.
Poiché $t \in \Codom(\sigma)$, allora, poiché anche
$\sigma$ è surgettiva, $\exists s \in \Dom(\sigma) \mid
t = \sigma(s)$. Pertanto $\exists s \in \Dom(\sigma) \mid
u = \tau(\sigma(s))$.
\end{proof}
\begin{lemma}[Bigettività della composizione]
\label{lemma:bigettivita_composizione}
$(\tau \circ \sigma)$ è bigettiva se $\tau$ e $\sigma$ lo sono.
\end{lemma}
\begin{proof}
Se $\tau$ e $\sigma$ sono bigettive, sono sia iniettive che surgettive;
pertanto $(\tau \circ \sigma)$ è sia iniettiva che bigettiva per i
lemmi \ref{lemma:iniettivita_composizione} e
\ref{lemma:surgettivita_composizione}.
\end{proof}
\section{Applicazione inversa}
Qualora un'applicazione $\sigma : S \to T$ sia bigettiva, si dice che essa
crea una \textit{corrispondenza biunivoca} tra $S$ e $T$, ossia che dato un
elemento qualsiasi appartenente a $S$ è possibile associarlo ad un unico elemento
di $T$, e viceversa. Questo è possibile dal momento che $\sigma$ è sia iniettiva
($\forall t \in T, \existsone \lor \nexists s \in S \mid t = \sigma(s)$) che
surgettiva ($\forall t \in T, \exists s \in S \mid t = \sigma(s)$), prescrivendo
che $\forall t \in T, \existsone s \in S \mid t = \sigma(s)$.
Da questa conclusione è possibile definire l'\textit{applicazione inversa} di
$\sigma$, detta $\sigma^{-1}$, che è l'applicazione che associa ad ogni $t \in T$
un unico $s \in S$. Quindi, $t = \sigma(s) \iff s = \sigma^{-1} (t)$.
In particolare, $(\sigma \circ \sigma^{-1}) = (\sigma^{-1} \circ \sigma) = \Id$,
ossia l'identità di $\sigma$, per la quale ogni elemento viene associato a sé stesso.
Banalmente, per ogni applicazione $\alpha$, $(\alpha \circ \Id) = (\Id \circ \alpha) = \alpha$.
\begin{lemma}
\label{lemma:inversa_applicazione}
$\sigma : S \to T$ è una corrispondenza biunivoca se e solo se
esiste un'applicazione $\mu : T \to S$ tale per cui
$(\sigma \circ \mu) = (\mu \circ \sigma) = \Id$.
\end{lemma}
\begin{proof}
Dal momento che $\sigma$ è bigettiva, $\sigma^{-1}$ esiste, e questa è
tale per cui $(\sigma \circ \mu) = (\mu \circ \sigma) = \Id$.
In direzione opposta, se esiste una $\mu$ tale per cui $(\sigma \circ \mu) =
(\mu \circ \sigma) = \Id$, allora:
\begin{itemize}
\item $\sigma$ è iniettiva: $\sigma(s_1) = \sigma(s_2) \implies
\mu(\sigma(s_1)) = \mu(\sigma(s_2)) \implies s_1 = s_2$.
\item $\sigma$ è surgettiva: $\forall t \in T, t = \sigma(\mu(t)) \implies
\exists s = \mu(t) \in S \mid t = \sigma(s)$.
\end{itemize}
\end{proof}
\begin{lemma}[Unicità dell'applicazione inversa]
Per ogni applicazione bigettiva $\sigma$, $\sigma^{-1}$ è unica.
\end{lemma}
\begin{proof}
Poniamo $\alpha \neq \beta$ come due applicazioni inverse distinte
di $\sigma$. Allora $\alpha = \alpha \circ (\sigma \circ \beta) =
(\alpha \circ \sigma) \circ \beta = \beta$, che è una contraddizione.
\end{proof}
\section{Il gruppo \texorpdfstring{$A(S)$}{A(S)} delle corrispondenze biunivoche}
Si definisce $A(S)$ come l'insieme $\{\sigma : S \to S \mid \sigma \text{ sia biunivoca}\} =
\{\sigma : S \to S \mid \forall s \in S \existsone t \in S \mid t = \sigma(s)\}$.
Prendendo in considerazione l'operazione di composizione $\circ$, si può dimostrare
che $(A(S), \circ)$ è un gruppo:
\begin{itemize}
\item $\forall \alpha, \beta \in A(S), \alpha \circ \beta \in A(S)$ (vd. Lemma \ref{lemma:bigettivita_composizione}).
\item $\forall \alpha, \beta, \gamma \in A(S), (\alpha \circ \beta) \circ \gamma = \alpha \circ (\beta \circ \gamma)$ (vd. Lemma \ref{lemma:associativita_composizione}).
\item $\exists \Id \in A(S) \mid \forall \alpha \in A(S), (\Id \circ \alpha) = (\alpha \circ \Id) = \alpha$.
\item $\forall \alpha \in A(S), \exists \alpha^{-1} \in A(S) \mid (\alpha \circ \alpha^{-1}) = (\alpha^{-1} \circ \alpha) = \Id$ (vd. Lemma \ref{lemma:inversa_applicazione}).
\end{itemize}
\begin{lemma}
Se $S$ consta di più di due elementi ($\nnorm{S} > 2$), allora esistono sicuramente
due applicazioni $\alpha, \beta \in A(S)$ tale per cui $(\alpha \circ \beta) \neq
(\beta \circ \alpha)$.
\end{lemma}
\begin{proof}
Se $S$ consta di più di due elementi, $S$ possiede almeno tre elementi $s_1, s_2, s_3$,
possiamo definire due applicazioni $\sigma$ e $\tau$ come segue:
\begin{itemize}
\item $\sigma(s_1) = s_2$, $\sigma(s_2) = s_3$, $\sigma(s_3) = s_1$.
\item $\tau(s_1) = s_1$, $\tau(s_2) = s_3$, $\tau(s_3) = s_2$.
\item $\sigma(a) = \tau(a) = a \forall a \notin \{s_1, s_2, s_3\}$.
\end{itemize}
Allora $(\sigma \circ \tau)(s_1) = \sigma(s_1) = s_2$ e
$(\tau \circ \sigma)(s_1) = \tau(s_2) = s_3$, ma $s_2 \neq s_3$.
\end{proof}

Binary file not shown.

@ -1,27 +1,15 @@
\documentclass[oneside]{book} % Style formatting by Evan Chen (evanchen.cc)
% Inspired by https://github.com/diego-unipi/Appunti-Aritmetica
\usepackage{amsmath}
\usepackage{amssymb} \PassOptionsToPackage{main=italian}{babel}
\usepackage{amsthm} \documentclass[11pt]{scrartcl}
\usepackage{enumitem} \usepackage[sexy]{evan}
\usepackage[a4paper, total={6in, 8in}]{geometry}
\usepackage{hyperref}
\usepackage{mathtools}
\usepackage[italian]{babel} \usepackage[italian]{babel}
\usepackage[utf8]{inputenc} \usepackage[utf8]{inputenc}
\usepackage[parfill]{parskip}
\usepackage{wrapfig}
\usepackage{pgfplots}
\pgfplotsset{compat=1.15}
\usepackage{mathrsfs}
\usetikzlibrary{arrows,angles,quotes}
\renewcommand\qedsymbol{$\blacksquare$} \setlength{\headsep}{0.3in}
\newcommand{\gfrac}[2]{\displaystyle \frac{#1}{#2}} \newcommand{\gfrac}[2]{\displaystyle \frac{#1}{#2}}
\newcommand{\abs}[1]{\lvert#1\rvert}
\newcommand{\norm}[1]{\lVert \vec{#1} \rVert}
\newcommand{\nnorm}[1]{\lVert #1 \rVert} \newcommand{\nnorm}[1]{\lVert #1 \rVert}
\let\oldforall\forall \let\oldforall\forall
@ -55,26 +43,56 @@
\let\oldemptyset\emptyset \let\oldemptyset\emptyset
\let\emptyset\varnothing \let\emptyset\varnothing
\newtheorem{axiom}{Assioma}[section] \begin{document}
\newtheorem{theorem}{Teorema}[section]
\newtheorem{corollary}{Corollario}[theorem]
\newtheorem{lemma}[theorem]{Lemma}
\theoremstyle{definition} \author{Gabriel Antonio Videtta \\ \textnormal{\href{mailto:g.videtta1@studenti.unipi.it}{g.videtta1@studenti.unipi.it}}}
\newtheorem{definition}{Definizione}[section] \title{Appunti del corso di Aritmetica}
\subtitle{tenutosi sotto la supervisione dei proff. Gaiffi e \textit{D'Adderio}}
\date{A.A. 2022/2023}
\maketitle
\thispagestyle{empty}
\begin{document} \begin{center}
\includegraphics[scale=0.3]{logo.png}
\end{center}
\author{Gabriel Antonio Videtta} \author{Gabriel Antonio Videtta}
\title{Appunti di Aritmetica}
\maketitle
\newpage \newpage
\thispagestyle{empty}
~\newpage
\section*{Premessa}
Affinché possano chiamarsi queste dispense, voglio mettere alcuni punti
in chiaro. Non sono un professore, né ho mai insegnato nella mia vita, per
quanto punti a farlo, pertanto queste dispense non forniscono né coprono
l'esperienza che un professore potrebbe condividere durante un vero e proprio
corso universitario.
Piuttosto queste dispense hanno lo scopo di immagazzinare e incapsulare
le nozioni che un normale corso di Aritmetica -- o Algebra 1 che sia --
potrebbe fornire, e non hanno quindi la pretesa di sostituirsi a uno
studio più approfondito e personale.
Naturalmente sono accettati a braccia aperte suggerimenti e correzioni
(che potete inviare alla mia mail,
\texttt{\href{mailto:g.videtta1@studenti.unipi.it}{g.videtta1@studenti.unipi.it}}).
\section*{Ringraziamenti}
Chiaramente ci sono alcuni ringraziamenti che ho piacere a fare. Innanzitutto
vorrei ringraziare il mio caro amico \textbf{Diego Monaco}
(\texttt{\href{mailto:d.monaco2@studenti.unipi.it}{d.monaco2@studenti.unipi.it}}),
da cui ho preso pesante ispirazione per lo stile e il contenuto di queste dispense
(trovate difatti i suoi appunti su \underline{\href{https://github.com/diego-unipi/Appunti-Aritmetica}{GitHub}}).
In secondo luogo, voglio ringraziare \textbf{Evan Chen}, dal quale ho reperito
già pronti i fogli di stile per queste dispense (e che anche voi potete trovare
sul suo \underline{\href{https://web.evanchen.cc/faq-latex.html}{sito personale}}).
\tableofcontents
\newpage \newpage
\tableofcontents
\include{1. Teoria degli insiemi.tex} \include{1. Gruppi.tex}
\include{2. Relazioni di equivalenza e applicazioni.tex}
\end{document} \end{document}

@ -0,0 +1,762 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% | \ %
% ______ __ __ ______ _______ _______ _| ▓▓_ __ __ %
% / \| \ / \| \| \ / \ ▓▓ \ | \ | \ %
% | ▓▓▓▓▓▓\\▓▓\ / ▓▓ \▓▓▓▓▓▓\ ▓▓▓▓▓▓▓\ | ▓▓▓▓▓▓▓\▓▓▓▓▓▓ | ▓▓ | ▓▓ %
% | ▓▓ ▓▓ \▓▓\ ▓▓ / ▓▓ ▓▓ | ▓▓ \▓▓ \ | ▓▓ __| ▓▓ | ▓▓ %
% | ▓▓▓▓▓▓▓▓ \▓▓ ▓▓ | ▓▓▓▓▓▓▓ ▓▓ | ▓▓__ _\▓▓▓▓▓▓\ | ▓▓| \ ▓▓__/ ▓▓ %
% \▓▓ \ \▓▓▓ \▓▓ ▓▓ ▓▓ | ▓▓ \ ▓▓ \▓▓ ▓▓\▓▓ ▓▓ %
% \▓▓▓▓▓▓▓ \▓ \▓▓▓▓▓▓▓\▓▓ \▓▓\▓▓\▓▓▓▓▓▓▓ \▓▓▓▓ _\▓▓▓▓▓▓▓ %
% | \__| ▓▓ %
% \▓▓ ▓▓ %
% \▓▓▓▓▓▓ %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% https://github.com/vEnhance/dotfiles/blob/main/texmf/tex/latex/evan/evan.sty
% ░█▄█░▄▀▄░█░░▒█░░░▀█▀░▄▀▄░░░█▒█░▄▀▀▒██▀
% ▒█▒█░▀▄▀░▀▄▀▄▀▒░░▒█▒░▀▄▀▒░░▀▄█▒▄██░█▄▄
%
% If you don't know how to use this file, read:
% +--------------------------------------------+
% | https://web.evanchen.cc/faq-latex.html#L-4 |
% +--------------------------------------------+
%
% TL;DR of the Boost license conditions are as follows:
%
% 1. Any SOURCE VERSIONS must cite evan.sty and the Boost license below.
% 2. For COMPILED PDF OUTPUT, attribution of evan.sty is OPTIONAL (but nice).
% 3. NO OTHER REQUIREMENTS; you may modify, redistribute, sell freely.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% BOOST SOFTWARE LICENSE - VERSION 1.0 - 17 AUGUST 2003
%
% Copyright (c) 2022 Evan Chen [evan at evanchen.cc]
% https://web.evanchen.cc/ || github.com/vEnhance
%
% Available for download at:
% https://github.com/vEnhance/dotfiles/blob/main/texmf/tex/latex/evan/evan.sty
%
% Permission is hereby granted, free of charge, to any person or organization
% obtaining a copy of the software and accompanying documentation covered by
% this license (the "Software") to use, reproduce, display, distribute,
% execute, and transmit the Software, and to prepare derivative works of the
% Software, and to permit third-parties to whom the Software is furnished to
% do so, all subject to the following:
%
% The copyright notices in the Software and this entire statement, including
% the above license grant, this restriction and the following disclaimer,
% must be included in all copies of the Software, in whole or in part, and
% all derivative works of the Software, unless such copies or derivative
% works are solely in the form of machine-executable object code generated by
% a source language processor.
%
% THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
% IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
% FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
% SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
% FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
% ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
% DEALINGS IN THE SOFTWARE.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ProvidesPackage{evan}
%%fakesection Argument processing
% Default Arguments
% We include "Evan" in all of these to make sure
% that they don't collide with anything in external packages
\newif\ifevanfancy\evanfancytrue
\newif\ifevanhdr\evanhdrtrue
\newif\ifevanhref\evanhreftrue
\newif\ifevansetup\evansetuptrue
\newif\ifevanthm\evanthmtrue
\newif\ifevansecthm\evansecthmfalse
\newif\ifevanht\evanhtfalse
\newif\ifevanpkg\evanpkgtrue
\newif\ifevanpdf\evanpdftrue
\newif\ifevanauthor\evanauthortrue
\newif\ifevanchinese\evanchinesefalse
\newif\ifevanmdthm\evanmdthmfalse
\newif\ifevandiagrams\evandiagramsfalse
\newif\ifevanpatchasy\evanpatchasyfalse
\newif\ifevanhints\evanhintsfalse
\newif\ifevanasy\evanasytrue
\newif\ifevancolorsec\evancolorsecfalse
\newif\ifevantitlemark\evantitlemarktrue
\newif\ifevanvonenabled\evanvonenabledfalse
\newif\ifevanbritish\evanbritishtrue
%Receive Arguments
\DeclareOption{chinese}{\evanhreffalse\evanchinesetrue} % Chinese support
% allow href to override this one
\DeclareOption{sexy}{\evansecthmtrue\evanmdthmtrue\evancolorsectrue} % long docs
\DeclareOption{fancy}{\evanfancytrue}
\DeclareOption{nofancy}{\evanfancyfalse}
\DeclareOption{hdr}{\evanhdrtrue}
\DeclareOption{nohdr}{\evanhdrfalse}
\DeclareOption{href}{\evanhreftrue}
\DeclareOption{nohref}{\evanhreffalse}
\DeclareOption{nosetup}{\evansetupfalse}
\DeclareOption{thm}{\evanthmtrue}
\DeclareOption{nothm}{\evanthmfalse}
\DeclareOption{secthm}{\evansecthmtrue}
\DeclareOption{nosecthm}{\evansecthmfalse}
\DeclareOption{ht}{\evanhttrue}
\DeclareOption{nopdf}{\evanpdffalse}
\DeclareOption{nopkg}{\evanpkgfalse}
\DeclareOption{noauthor}{\evanauthorfalse}
\DeclareOption{titlemark}{\evantitlemarktrue} % Sets title in ohead, not \rightmark
\DeclareOption{sectionmark}{\evantitlemarkfalse} % Uses \rightmark not title in ohead
\DeclareOption{mdthm}{\evanmdthmtrue}
\DeclareOption{nomdthm}{\evanmdthmfalse}
\DeclareOption{diagrams}{\evandiagramstrue}
\DeclareOption{nodiagrams}{\evandiagramsfalse}
\DeclareOption{colorsec}{\evancolorsectrue}
\DeclareOption{nocolorsec}{\evancolorsecfalse}
\DeclareOption{patchasy}{\evanpatchasytrue}
\DeclareOption{noasy}{\evanasyfalse}
\DeclareOption{hints}{\evanhintstrue}
\DeclareOption{von}{\evanvonenabledtrue}
\DeclareOption{british}{\evanbritishtrue}
\DeclareOption{american}{\evanbritishfalse}
\ProcessOptions\relax
% if packages not loaded, turn off mdthm and asy
\ifevanpkg\else\evanmdthmfalse\fi
\ifevanpkg\else\evanasyfalse\fi
% If no setup, turn off theorems
\ifevansetup\else\evanthmfalse\fi
%%fakesection Some macros
%Small commands
\usepackage{amsmath,amssymb}
\usepackage{iftex}
\ifevanpkg
\usepackage[minimal]{yhmath}
\fi
\newcommand{\cbrt}[1]{\sqrt[3]{#1}}
\newcommand{\floor}[1]{\left\lfloor #1 \right\rfloor}
\newcommand{\ceiling}[1]{\left\lceil #1 \right\rceil}
\newcommand{\mailto}[1]{\href{mailto:#1}{\texttt{#1}}}
\newcommand{\ol}{\overline}
\newcommand{\ul}{\underline}
\newcommand{\wt}{\widetilde}
\newcommand{\wh}{\widehat}
\newcommand{\eps}{\varepsilon}
%\renewcommand{\iff}{\Leftrightarrow}
%\renewcommand{\implies}{\Rightarrow}
\newcommand{\vocab}[1]{\textbf{\color{blue}\sffamily #1}}
\providecommand{\alert}{\vocab}
\providecommand{\half}{\frac{1}{2}}
\newcommand{\catname}{\mathsf}
\newcommand{\hrulebar}{
\par\hspace{\fill}\rule{0.95\linewidth}{.7pt}\hspace{\fill}
\par\nointerlineskip \vspace{\baselineskip}
}
\providecommand{\arc}[1]{\wideparen{#1}}
%For use in author command
\newcommand{\plusemail}[1]{\\ \normalfont \texttt{\mailto{#1}}}
%More commands and math operators
\DeclareMathOperator{\cis}{cis}
\DeclareMathOperator*{\lcm}{lcm}
\DeclareMathOperator*{\argmin}{arg min}
\DeclareMathOperator*{\argmax}{arg max}
%Convenient Environments
\newenvironment{soln}{\begin{proof}[Solution]}{\end{proof}}
\newenvironment{parlist}{\begin{inparaenum}[(i)]}{\end{inparaenum}}
\newenvironment{gobble}{\setbox\z@\vbox\bgroup}{\egroup}
%Inequalities
\newcommand{\cycsum}{\sum_{\mathrm{cyc}}}
\newcommand{\symsum}{\sum_{\mathrm{sym}}}
\newcommand{\cycprod}{\prod_{\mathrm{cyc}}}
\newcommand{\symprod}{\prod_{\mathrm{sym}}}
%From H113 "Introduction to Abstract Algebra" at UC Berkeley
\newcommand{\CC}{\mathbb C}
\newcommand{\FF}{\mathbb F}
\newcommand{\NN}{\mathbb N}
\newcommand{\QQ}{\mathbb Q}
\newcommand{\RR}{\mathbb R}
\newcommand{\ZZ}{\mathbb Z}
\newcommand{\charin}{\text{ char }}
\DeclareMathOperator{\sign}{sign}
\DeclareMathOperator{\Aut}{Aut}
\DeclareMathOperator{\Inn}{Inn}
\DeclareMathOperator{\Syl}{Syl}
\DeclareMathOperator{\Gal}{Gal}
\DeclareMathOperator{\GL}{GL} % General linear group
\DeclareMathOperator{\SL}{SL} % Special linear group
%From Kiran Kedlaya's "Geometry Unbound"
\newcommand{\abs}[1]{\left\lvert #1 \right\rvert}
\newcommand{\norm}[1]{\left\lVert #1 \right\rVert}
\newcommand{\dang}{\measuredangle} %% Directed angle
\newcommand{\ray}[1]{\overrightarrow{#1}}
\newcommand{\seg}[1]{\overline{#1}}
%From M275 "Topology" at SJSU
\newcommand{\id}{\mathrm{id}}
\newcommand{\taking}[1]{\xrightarrow{#1}}
\newcommand{\inv}{^{-1}}
%From M170 "Introduction to Graph Theory" at SJSU
\DeclareMathOperator{\diam}{diam}
\DeclareMathOperator{\ord}{ord}
\newcommand{\defeq}{\overset{\mathrm{def}}{=}}
%From the USAMO .tex files
\newcommand{\ts}{\textsuperscript}
\newcommand{\dg}{^\circ}
\newcommand{\ii}{\item}
% From Math 55 and Math 145 at Harvard
\newenvironment{subproof}[1][Proof]{%
\begin{proof}[#1] \renewcommand{\qedsymbol}{$\blacksquare$}}%
{\end{proof}}
\newcommand{\liff}{\leftrightarrow}
\newcommand{\lthen}{\rightarrow}
\newcommand{\opname}{\operatorname}
\newcommand{\surjto}{\twoheadrightarrow}
\newcommand{\injto}{\hookrightarrow}
\newcommand{\On}{\mathrm{On}} % ordinals
\DeclareMathOperator{\img}{im} % Image
\DeclareMathOperator{\Img}{Im} % Image
\DeclareMathOperator{\coker}{coker} % Cokernel
\DeclareMathOperator{\Coker}{Coker} % Cokernel
\DeclareMathOperator{\Ker}{Ker} % Kernel
\DeclareMathOperator{\rank}{rank}
\DeclareMathOperator{\Spec}{Spec} % spectrum
\DeclareMathOperator{\Tr}{Tr} % trace
\DeclareMathOperator{\pr}{pr} % projection
\DeclareMathOperator{\ext}{ext} % extension
\DeclareMathOperator{\pred}{pred} % predecessor
\DeclareMathOperator{\dom}{dom} % domain
\DeclareMathOperator{\ran}{ran} % range
\DeclareMathOperator{\Hom}{Hom} % homomorphism
\DeclareMathOperator{\Mor}{Mor} % morphisms
\DeclareMathOperator{\End}{End} % endomorphism
% Things Lie
\newcommand{\kb}{\mathfrak b}
\newcommand{\kg}{\mathfrak g}
\newcommand{\kh}{\mathfrak h}
\newcommand{\kn}{\mathfrak n}
\newcommand{\ku}{\mathfrak u}
\newcommand{\kz}{\mathfrak z}
\DeclareMathOperator{\Ext}{Ext} % Ext functor
\DeclareMathOperator{\Tor}{Tor} % Tor functor
\newcommand{\gl}{\opname{\mathfrak{gl}}} % frak gl group
% \renewcommand{\sl}{\opname{\mathfrak{sl}}} % frak sl group chktex 6
% More script letters etc.
\newcommand{\SA}{\mathcal A}
\newcommand{\SB}{\mathcal B}
\newcommand{\SC}{\mathcal C}
\newcommand{\SF}{\mathcal F}
\newcommand{\SG}{\mathcal G}
\newcommand{\SH}{\mathcal H}
\newcommand{\OO}{\mathcal O}
\newcommand{\SCA}{\mathscr A}
\newcommand{\SCB}{\mathscr B}
\newcommand{\SCC}{\mathscr C}
\newcommand{\SCD}{\mathscr D}
\newcommand{\SCE}{\mathscr E}
\newcommand{\SCF}{\mathscr F}
\newcommand{\SCG}{\mathscr G}
\newcommand{\SCH}{\mathscr H}
% Mathfrak primes
\newcommand{\km}{\mathfrak m}
\newcommand{\kp}{\mathfrak p}
\newcommand{\kq}{\mathfrak q}
%% Napkin commands
\newcommand{\prototype}[1]{
\emph{{\color{red} Prototypical example for this section:} #1} \par\medskip
}
\newenvironment{moral}{%
\begin{mdframed}[linecolor=green!70!black]%
\bfseries\color{green!70!black}}%
{\end{mdframed}}
%%fakesection Asymptote setup
\ifevanasy
\ifevanpatchasy
\usepackage{patch-asy}
\else
\usepackage{asymptote}
\fi
\begin{asydef}
defaultpen(fontsize(10pt));
size(8cm); // set a reasonable default
usepackage("amsmath");
usepackage("amssymb");
settings.tex="pdflatex";
settings.outformat="pdf";
// Replacement for olympiad+cse5 which is not standard
import geometry;
// recalibrate fill and filldraw for conics
void filldraw(picture pic = currentpicture, conic g, pen fillpen=defaultpen, pen drawpen=defaultpen)
{ filldraw(pic, (path) g, fillpen, drawpen); }
void fill(picture pic = currentpicture, conic g, pen p=defaultpen)
{ filldraw(pic, (path) g, p); }
// some geometry
pair foot(pair P, pair A, pair B) { return foot(triangle(A,B,P).VC); }
pair orthocenter(pair A, pair B, pair C) { return orthocentercenter(A,B,C); }
pair centroid(pair A, pair B, pair C) { return (A+B+C)/3; }
// cse5 abbreviations
path CP(pair P, pair A) { return circle(P, abs(A-P)); }
path CR(pair P, real r) { return circle(P, r); }
pair IP(path p, path q) { return intersectionpoints(p,q)[0]; }
pair OP(path p, path q) { return intersectionpoints(p,q)[1]; }
path Line(pair A, pair B, real a=0.6, real b=a) { return (a*(A-B)+A)--(b*(B-A)+B); }
// cse5 more useful functions
picture CC() {
picture p=rotate(0)*currentpicture;
currentpicture.erase();
return p;
}
pair MP(Label s, pair A, pair B = plain.S, pen p = defaultpen) {
Label L = s;
L.s = "$"+s.s+"$";
label(L, A, B, p);
return A;
}
pair Drawing(Label s = "", pair A, pair B = plain.S, pen p = defaultpen) {
dot(MP(s, A, B, p), p);
return A;
}
path Drawing(path g, pen p = defaultpen, arrowbar ar = None) {
draw(g, p, ar);
return g;
}
\end{asydef}
\fi
%%fakesection BEGIN MAIN SETUP
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifevansetup
%%fakesection Set up author and date
\ifevanauthor
\title{} % empty title to avoid crashes
\ifluatex
\author{Evan Chen《陳誼廷》}
\else
\author{Evan Chen}
\fi
\date{\today}
\fi
%%fakesection Hyperref
\ifevanpkg
\PassOptionsToPackage{usenames,svgnames,dvipsnames,table}{xcolor}
\usepackage{xcolor}
\ifevanhref
\usepackage[colorlinks=false]{hyperref}
\hypersetup{urlcolor=RubineRed,linkcolor=RoyalBlue,citecolor=ForestGreen}
\fi
\usepackage[nameinlink]{cleveref}
\fi
%%fakesection New Theorem Styles
\ifevanthm
\usepackage{amsthm}
\usepackage{thmtools}
\fi
\ifevanmdthm
\ifevanthm
%% theorem packages loaded already
\else
\usepackage{amsthm}
\usepackage{thmtools}
\fi
\usepackage[framemethod=TikZ]{mdframed}
\mdfdefinestyle{mdbluebox}{%
roundcorner=10pt,
linewidth=1pt,
skipabove=12pt,
innerbottommargin=9pt,
skipbelow=2pt,
linecolor=blue,
nobreak=true,
backgroundcolor=TealBlue!5,
}
\declaretheoremstyle[
headfont=\sffamily\bfseries\color{MidnightBlue},
mdframed={style=mdbluebox},
headpunct={\\[3pt]},
postheadspace={0pt}
]{thmbluebox}
\mdfdefinestyle{mdredbox}{%
linewidth=0.5pt,
skipabove=12pt,
frametitleaboveskip=5pt,
frametitlebelowskip=0pt,
skipbelow=2pt,
frametitlefont=\bfseries,
innertopmargin=4pt,
innerbottommargin=8pt,
nobreak=true,
backgroundcolor=Salmon!5,
linecolor=RawSienna,
}
\declaretheoremstyle[
headfont=\bfseries\color{RawSienna},
mdframed={style=mdredbox},
headpunct={\\[3pt]},
postheadspace={0pt},
]{thmredbox}
\mdfdefinestyle{mdgreenbox}{%
skipabove=8pt,
linewidth=2pt,
rightline=false,
leftline=true,
topline=false,
bottomline=false,
linecolor=ForestGreen,
backgroundcolor=ForestGreen!5,
}
\declaretheoremstyle[
headfont=\bfseries\sffamily\color{ForestGreen!70!black},
bodyfont=\normalfont,
spaceabove=2pt,
spacebelow=1pt,
mdframed={style=mdgreenbox},
headpunct={ --- },
]{thmgreenbox}
\mdfdefinestyle{mdblackbox}{%
skipabove=8pt,
linewidth=3pt,
rightline=false,
leftline=true,
topline=false,
bottomline=false,
linecolor=black,
backgroundcolor=RedViolet!5!gray!5,
}
\declaretheoremstyle[
headfont=\bfseries,
bodyfont=\normalfont\small,
spaceabove=0pt,
spacebelow=0pt,
mdframed={style=mdblackbox}
]{thmblackbox}
\newcommand{\listhack}{$\empty$\vspace{-2em}}
\fi
%%fakesection Theorem setup
\ifevanthm
\theoremstyle{definition}
%Branching here: the option secthm changes theorems to be labelled by section
\ifevanmdthm
\ifevansecthm
\declaretheorem[%
style=thmbluebox,name=Teorema,numberwithin=section]{theorem}
\else
\declaretheorem[%
style=thmbluebox,name=Teorema]{theorem}
\fi
\declaretheorem[style=thmbluebox,name=Lemma,sibling=theorem]{lemma}
\declaretheorem[style=thmbluebox,name=Proposizione,sibling=theorem]{proposition}
\declaretheorem[style=thmbluebox,name=Corollario,sibling=theorem]{corollary}
\declaretheorem[style=thmbluebox,name=Teorema,numbered=no]{theorem*}
\declaretheorem[style=thmbluebox,name=Lemma,numbered=no]{lemma*}
\declaretheorem[style=thmbluebox,name=Proposizione,numbered=no]{proposition*}
\declaretheorem[style=thmbluebox,name=Corollario,numbered=no]{corollary*}
\else
\ifevansecthm
\declaretheorem[name=Theorem,numberwithin=section]{theorem}
\else
\declaretheorem[name=Theorem]{theorem}
\fi
\declaretheorem[name=Lemma,sibling=theorem]{lemma}
\declaretheorem[name=Proposizione,sibling=theorem]{proposition}
\declaretheorem[name=Corollario,sibling=theorem]{corollary}
\declaretheorem[name=Teorema,numbered=no]{theorem*}
\declaretheorem[name=Lemma,numbered=no]{lemma*}
\declaretheorem[name=Proposizione,numbered=no]{proposition*}
\declaretheorem[name=Corollario,numbered=no]{corollary*}
\fi
\ifevanmdthm
\declaretheorem[style=thmgreenbox,name=Algoritmo,sibling=theorem]{algorithm}
\declaretheorem[style=thmgreenbox,name=Algoritmo,numbered=no]{algorithm*}
\declaretheorem[style=thmgreenbox,name=Claim,sibling=theorem]{claim}
\declaretheorem[style=thmgreenbox,name=Claim,numbered=no]{claim*}
\else
\declaretheorem[name=Algoritmo,sibling=theorem]{algorithm}
\declaretheorem[name=Algoritmo,numbered=no]{algorithm*}
\declaretheorem[name=Claim,sibling=theorem]{claim}
\declaretheorem[name=Claim,numbered=no]{claim*}
\fi
\ifevanmdthm
\declaretheorem[style=thmredbox,name=Esempio,sibling=theorem]{example}
\declaretheorem[style=thmredbox,name=Esempio,numbered=no]{example*}
\else
\declaretheorem[name=Esempio,sibling=theorem]{example}
\declaretheorem[name=Esempio,numbered=no]{example*}
\fi
% Remark-style theorems
%\theoremstyle{remark}
\ifevanmdthm
\declaretheorem[style=thmblackbox,name=Osservazione,sibling=theorem]{remark}
\declaretheorem[style=thmblackbox,name=Osservazione,numbered=no]{remark*}
\else
\declaretheorem[name=Osservazione,sibling=theorem]{remark}
\declaretheorem[name=Osservazione,numbered=no]{remark*}
\fi
\declaretheorem[name=Congettura,sibling=theorem]{conjecture}
\declaretheorem[name=Congettura,numbered=no]{conjecture*}
\declaretheorem[name=Definizione,sibling=theorem]{definition}
\declaretheorem[name=Definizione,numbered=no]{definition*}
\declaretheorem[name=Esercizio,sibling=theorem]{exercise}
\declaretheorem[name=Esercizio,numbered=no]{exercise*}
\declaretheorem[name=Fatto noto,sibling=theorem]{fact}
\declaretheorem[name=Fatto noto,numbered=no]{fact*}
\declaretheorem[name=Problema,sibling=theorem]{problem}
\declaretheorem[name=Problema,numbered=no]{problem*}
\declaretheorem[name=Domanda,sibling=theorem]{ques}
\declaretheorem[name=Domanda,numbered=no]{ques*}
\ifevanpkg
\Crefname{claim}{Claim}{Claims}
\Crefname{conjecture}{Congettura}{Congetture}
\Crefname{exercise}{Esercizio}{Esercizio}
\Crefname{fact}{Fatto noto}{Fatti noti}
\Crefname{problem}{Problema}{Problemi}
\Crefname{ques}{Domanda}{Domande}
\fi
\fi
%%fakesection Fancy section and chapter heads
\ifevancolorsec
\@ifundefined{KOMAClassName}{}{
\@ifundefined{chapter}{}{
\addtokomafont{partprefix}{\rmfamily}
\renewcommand*{\partformat}{\color{purple}
\scalebox{2.5}{\thepart}\enlargethispage{2em}}
\addtokomafont{chapterprefix}{\raggedleft}
\RedeclareSectionCommand[beforeskip=0.5em]{chapter}
\renewcommand*{\chapterformat}{\mbox{%
\scalebox{1.5}{\chapappifchapterprefix{\nobreakspace}}%
\scalebox{2.718}{\color{purple}\thechapter}\enskip}}
}
\renewcommand*{\sectionformat}%
{\color{purple}\S\thesection\enskip}
\renewcommand*{\subsectionformat}%
{\color{purple}\S\thesubsection\enskip}
\renewcommand*{\subsubsectionformat}%
{\color{purple}\S\thesubsubsection\enskip}
\KOMAoptions{numbers=noenddot}
%\usetocstyle{KOMAlike}
}
\fi
%%fakesection Loads a bunch of useful packages (but allow disabling)
\ifevanpkg
\ifevanvonenabled
\IfFileExists{von.sty}{\usepackage{von}}{}
\fi
\usepackage{listings}
\usepackage{mathrsfs}
\usepackage{textcomp}
\lstset{basicstyle=\ttfamily\scriptsize,
backgroundcolor=\color{green!2!white},
breakatwhitespace=true,
breaklines=true,
commentstyle=\color{green!70!black},
frame=shadowbox,
frame=single,
identifierstyle=\color{green!20!black},
keywordstyle=\bfseries,
keywordstyle=\bfseries\color{blue},
numbers=left,
numbersep=5pt,
numberstyle=\tiny\sffamily\itshape\color{black!60},
rulecolor=\color{blue!70!black},
rulesepcolor=\color{blue!30!black},
showstringspaces=false,
stringstyle=\color{orange},
tabsize=4,
} % chktex 6
\lstdefinelanguage{gitcommit}{
alsoletter={:},
morecomment=[l]{|},
morekeywords={commit,Author:,Date:,chore,doc,edit,feat,fix,polish,style,tests,},
sensitive=true,
}
\lstdefinelanguage{gitlog}{
morekeywords={chore,doc,edit,feat,fix,polish,style,tests,},
morecomment=[s]{[}{]}, % chktex 9
sensitive=true,
}
\usepackage[shortlabels]{enumitem}
\usepackage[obeyFinal,textsize=scriptsize,shadow]{todonotes}
\usepackage{textcomp}
\usepackage{multirow}
% Tiny optimizations:
\usepackage{mathtools}
\usepackage{microtype}
\usepackage{xstring}
\usepackage{wrapfig}
\ifevanbritish
% Use day-first date format
\usepackage[cleanlook,british]{isodate}
\fi
% a list I like for walkthrough's --- Drew-style parts
\newlist{walk}{enumerate}{3}
\setlist[walk]{label=\bfseries (\alph*)}
% list item for MO style rubrics
\newcommand{\worth}[1]{\def\hfill{\hskip 20pt plus 1fill}\dotfill%
\IfEq{#1}{0}{\textbf{0~points}}%
{\textbf{\color{blue}#1~point\IfEndWith{#1}{1}{}{s}}}%
\par}
\newcommand{\subworth}[1]{\def\hfill{\hskip 20pt plus 1fill}\dotfill%
\IfEq{#1}{0}{{\footnotesize0~points}}%
{\textbf{\footnotesize#1~point\IfEndWith{#1}{1}{}{s}}}%
\par}
\newlist{rubric}{enumerate}{2}
\setlist[rubric,1]{label=\Roman*.}
\setlist[rubric,2]{label=(\Roman{rubrici}.\alph*)}
\fi
%%fakesection \maketitle configuration
\@ifundefined{KOMAClassName}%
{} % do nothing outside KOMA class
{% If KOMA exists. . .
\addtokomafont{subtitle}{\Large}
\setkomafont{author}{\Large\scshape}
\setkomafont{date}{\Large\normalsize}
}
\providecommand{\thetitle}{\@title}
\providecommand{\theauthor}{\@author}
\providecommand{\thedate}{\@date}
%%fakesection Commutative diagrams support
\ifevandiagrams
\usepackage{tikz-cd}
\usetikzlibrary{decorations.pathmorphing}
\fi
%%fakesection Page Setup
\ifevanfancy
\@ifundefined{KOMAClassName}
{
\usepackage{fancyhdr}
\setlength{\headheight}{0.75in}
\setlength{\oddsidemargin}{0in}
\setlength{\evensidemargin}{0in}
\setlength{\voffset}{-1.0in}
\setlength{\headsep}{10pt}
\setlength{\textwidth}{6.5in}
\setlength{\headwidth}{6.5in}
\setlength{\textheight}{8.75in}
\setlength{\parskip}{1ex plus 0.5ex minus 0.2ex}
\setlength{\footskip}{0.3in}
\ifevanhdr
\renewcommand{\headrulewidth}{0.5pt}
\renewcommand{\footrulewidth}{0.0pt}
\pagestyle{fancy}
\lhead{Evan Chen}
\chead{}
\rhead{\nouppercase{\leftmark}}
\lfoot{}
\cfoot{\thepage}
\rfoot{}
\fi
}
{
\usepackage[headsepline]{scrlayer-scrpage}
\renewcommand{\headfont}{}
\addtolength{\textheight}{3.14cm}
\setlength{\footskip}{0.5in}
\setlength{\headsep}{10pt}
\ihead{\footnotesize\textbf{\theauthor} --- \thedate}
\automark{section}
\chead{}
\ohead{\footnotesize\textbf{\thetitle}}
\cfoot{\pagemark}
}
\fi
%%fakesection Unicode
\ifevanpkg
\ifluatex
\usepackage{fontspec}
% https://tex.stackexchange.com/a/572220/76888
\directlua{luaotfload.add_fallback
("evans_fallbacks",
{
"NotoColorEmoji:mode=harf;",
"Source Han Sans TW:style=Regular;",
"Noto Serif CJK SC:style=Regular;",
}
)}
\setmainfont{lmroman10-regular}[
BoldFont=lmroman10-bold,
ItalicFont=lmroman10-italic,
BoldItalicFont=lmroman10-bolditalic,
SlantedFont=lmromanslant10-regular,
BoldSlantedFont=lmromanslant10-bold,
SmallCapsFont=lmromancaps10-regular,
RawFeature={fallback=evans_fallbacks}
]
\setsansfont{lmsans10-regular}[
BoldFont=lmsans10-bold,
ItalicFont=lmsans10-oblique,
BoldItalicFont=lmsans10-boldoblique,
RawFeature={fallback=evans_fallbacks}
]
\else
\ifevanchinese
\usepackage{babel}
\usepackage[encapsulated]{CJK}
\usepackage{ucs}
\usepackage[utf8x]{inputenc}
\newenvironment{bsmi}{\begin{CJK}{UTF8}{bsmi}}{\end{CJK}}
\newcommand{\cn}[1]{\begin{bsmi}#1\end{bsmi}}
\AtBeginDocument{\begin{CJK}{UTF8}{bsmi}}
\AtEndDocument{\end{CJK}}
\fi
\fi
\fi
%%fakesection Hints
\ifevanhints
\usepackage{answers}
\Newassociation{hint}{hintitem}{hints}
\renewcommand{\solutionextension}{out}
\Opensolutionfile{hints}
\newcommand{\makehints}{\Closesolutionfile{hints}\input{hints.out}} % chktex 27
\fi
%%fakesection END MAIN SETUP
\fi

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

Loading…
Cancel
Save