ThProg-Merkzettel/merkzettel.tex

64 lines
1.9 KiB
TeX

\documentclass[11pt,a4paper]{scrartcl}
\usepackage[a4paper,left=1.5cm,right=3.0cm,top=2.5cm,bottom=2.5cm]{geometry}
\usepackage[ngerman]{babel}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{mathrsfs}
\usepackage{scrextend}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{enumitem}
\usepackage{tikz-qtree}
\usepackage{mathtools}
\usepackage{latexsym}
\usepackage{algorithmicx}
\usepackage{csquotes}
\usepackage{pdfpages}
\usepackage{pgfplots}
\usepackage{hyperref}
\usepackage{tikz}
\usetikzlibrary{positioning}
\usetikzlibrary{arrows.meta}
\newcommand{\siehe}[1]{\marginpar{\footnotesize \textit{#1}}}
\newcommand{\app}{\ensuremath{\rightarrow_a}}
\newcommand{\norm}{\ensuremath{\rightarrow_n}}
\theoremstyle{definition}
\newtheorem{definition}{Definition}[section]
\title{Merkzettel für \enquote{Theorie der Programmierung}}
\author{Marco Ammon}
\date{\today}
\begin{document}
\maketitle
\section*{Termersetzungssysteme}
\subsection*{Terminierung}
\subsubsection*{Polynomordnungen}
\subsection*{Konfluenz}
\subsection*{Critical Pairs}
\section*{$\lambda$-Kalkül}
\subsection*{Ungetypt}
\subsubsection*{Rekursion}
\subsubsection*{Auswertungsstrategien}
\begin{itemize}
\item applikativ (\textit{leftmost-innermost}) \app
\begin{itemize}
\item $\lambda x.t \app \lambda x.t'$, wenn $t \app t'$
\item $ts \app t's$, wenn $t \app t'$
\item $ts \app ts'$, wenn $s\app s'$ und $t$ normal ist
\item $(\lambda x.t)s \app t\lbrack s/x\rbrack$, wenn $t$ und $s$ normal sind
\end{itemize}
\item normal (\textit{leftmost-outermost}) \norm
\begin{itemize}
\item $(\lambda x.t) s \norm t\lbrack s/x\rbrack$
\item $\lambda x.t \norm \lambda x.t'$, wenn $t\norm t'$
\item $ts \norm t's$m wenn $t\norm t'$ und $t$ keine $\lambda$-Abstraktion ist
\item $ts \norm ts'$, wenn $s\norm s'$ und $t$ normal und keine $\lambda$-Abstraktion ist
\end{itemize}
\end{itemize}
\subsection*{Getypt}
\end{document}