Mercurial > 14ss.theoinf
comparison notes/tex/computation.tex @ 31:777563904120
tenth sheet and notes
author | Markus Kaiser <markus.kaiser@in.tum.de> |
---|---|
date | Sun, 29 Jun 2014 16:58:20 +0200 |
parents | b56fe50e0132 |
children | 24d446e2f94c |
comparison
equal
deleted
inserted
replaced
30:b56fe50e0132 | 31:777563904120 |
---|---|
225 \end{block} | 225 \end{block} |
226 \end{frame} | 226 \end{frame} |
227 } | 227 } |
228 | 228 |
229 \defineUnit{berechenbarkeitbeispiel}{% | 229 \defineUnit{berechenbarkeitbeispiel}{% |
230 \begin{frame}[c] | 230 \begin{frame}[t] |
231 \frametitle{Berechenbarkeit} | 231 \frametitle{Berechenbarkeit} |
232 \setbeamercovered{dynamic} | 232 \setbeamercovered{dynamic} |
233 | 233 |
234 \begin{example}[Berechenbarkeit] | 234 \begin{example}[Berechenbarkeit] |
235 Sind die folgenden Funktionen intuitiv berechenbar? | 235 Sind die folgenden Funktionen intuitiv berechenbar? |
247 1 & \text{falls in $\pi$ $n$ Nullen am Stück vorkommen}\\ | 247 1 & \text{falls in $\pi$ $n$ Nullen am Stück vorkommen}\\ |
248 0 & \text{sonst} | 248 0 & \text{sonst} |
249 \end{cases} | 249 \end{cases} |
250 \end{align*} | 250 \end{align*} |
251 \end{example} | 251 \end{example} |
252 | |
253 \only<2> { | |
254 \vfill | |
255 | |
256 \begin{center} | |
257 Alle drei Funktionen sind intuitiv berechenbar. | |
258 \end{center} | |
259 } | |
252 \end{frame} | 260 \end{frame} |
253 } | 261 } |
254 | 262 |
255 \defineUnit{pr}{% | 263 \defineUnit{pr}{% |
256 \begin{frame} | 264 \begin{frame} |
257 \frametitle{Primitive Rekursion} | 265 \frametitle{Primitive Rekursion} |
258 \setbeamercovered{dynamic} | 266 \setbeamercovered{dynamic} |
259 | 267 |
260 \begin{definition}[Basisfunktionen] | 268 \begin{definition}[Basisfunktionen der PR] |
261 \alert{Primitiv Rekursiv} sind: | 269 Die Menge der \structure{primitiv rekursiven (PR)} Funktionen ist induktiv definiert. Die Basisfunktionen sind die |
262 \begin{itemize} | 270 \begin{description}[Projektionsfunktion\quad] |
263 \item Die konstante Funktion \alert{0} | 271 \item[konstante Funktion] $f(x) = 0$ |
264 \item Die \alert{Nachfolgerfunktion} $s(n) = n + 1$ | 272 \item[Nachfolgerfunktion] $s(n) = n + 1$ |
265 \item Die \alert{Projektionsfunktion} $\pi_i^k : \N^k \to \N, i \in [k]$ | 273 \item[Projektionsfunktion] $\pi_i^k : \N^k \to \N, i \in [k]$ |
266 \[ \pi_i^k(x_1, \ldots, x_k) = x_i \] | 274 \end{description} |
267 \end{itemize} | 275 \[ \pi_i^k(x_1, \ldots, x_k) = x_i \] |
268 \end{definition} | 276 \end{definition} |
277 | |
278 \vfill | |
269 | 279 |
270 \begin{definition}[Komposition] | 280 \begin{definition}[Komposition] |
271 Sind $g$ und $h_i$ PR und $\bar{x} = (x_1, \ldots, x_n)$, dann ist auch \alert{$f$} PR: | 281 Seien $g$ und $h_i$ \structure{PR} und $\bar{x} = (x_1, \ldots, x_n)$.\\ |
282 Dann ist auch die \structure{Komposition $f$} PR. | |
272 \[ f(\bar{x}) = \alert{g(h_1(\bar{x}), \ldots, h_k(\bar{x}))} \] | 283 \[ f(\bar{x}) = \alert{g(h_1(\bar{x}), \ldots, h_k(\bar{x}))} \] |
273 \end{definition} | 284 \end{definition} |
274 \end{frame} | 285 \end{frame} |
275 } | 286 } |
276 | 287 |
277 \defineUnit{prrekursion}{% | 288 \defineUnit{prrekursion}{% |
278 \begin{frame} | 289 \begin{frame} |
279 \frametitle{Primitive Rekursion} | 290 \frametitle{Primitive Rekursion} |
280 \setbeamercovered{dynamic} | 291 \setbeamercovered{dynamic} |
281 \begin{block}{Basisfunktionen und Komposition} | 292 \begin{block}{Basisfunktionen und Komposition} |
282 Schon \alert{PR} sind: | 293 Die folgenden Funktionen sind schon als \structure{primitiv rekursiv} bekannt. |
283 \begin{itemize} | 294 \begin{description}[Projektionsfunktion\quad] |
284 \item Konstante: $0$ | 295 \item[konstante Funktion] $f(x) = 0$ |
285 \item Nachfolger: $s(n) = n + 1$ | 296 \item[Nachfolgerfunktion] $s(n) = n + 1$ |
286 \item Projektion: $\pi_i^k : \N^k \to \N$ | 297 \item[Projektionsfunktion] $\pi_i^k : \N^k \to \N, i \in [k]$ |
287 \item Komposition: $f(\bar{x}) = g(h_1(\bar{x}), \ldots, h_k(\bar{x}))$ | 298 \item[Komposition] $f(\bar{x}) = g(h_1(\bar{x}), \ldots, h_k(\bar{x}))$ |
288 \end{itemize} | 299 \end{description} |
289 \end{block} | 300 \end{block} |
290 \begin{definition}[Primitive Rekursion] Das Schema der \alert{primitiven Rekursion} erzeugt aus $g$ und $h$ die Funktion \alert{$f$}: \begin{align*} f(0, \bar{x}) &= g(\bar{x}) \\ f(\alert{m + 1}, \bar{x}) &= h(f(\alert{m}, \bar{x}), \alert{m}, \bar{x}) \end{align*} \end{definition} \end{frame} | 301 |
302 \vfill | |
303 | |
304 \begin{definition}[Primitive Rekursion] | |
305 Das Schema der \structure{primitiven Rekursion} erzeugt aus $g$ und $h$ die neue Funktion \structure{$f$}. | |
306 \begin{align*} | |
307 f(0, \bar{x}) &= g(\bar{x}) \\ | |
308 f(\alert{m + 1}, \bar{x}) &= h(f(\alert{m}, \bar{x}), \alert{m}, \bar{x}) | |
309 \end{align*} | |
310 $f$ ist ebenfalls \structure{primitiv rekursiv}. | |
311 \end{definition} | |
312 \end{frame} | |
291 } | 313 } |
292 | 314 |
293 \defineUnit{prprogramme}{% | 315 \defineUnit{prprogramme}{% |
294 \begin{frame} | 316 \begin{frame} |
295 \frametitle{PR-Programme} | 317 \frametitle{PR-Programme} |
296 \setbeamercovered{dynamic} | 318 \setbeamercovered{dynamic} |
297 | 319 |
298 U.a. diese Programme sind laut Vorlesung oder Übung PR: | 320 Unter anderem diese Programme sind laut Vorlesung oder Übung PR: |
299 \begin{itemize} | 321 \begin{itemize} |
322 \item $succ(x) = x + 1$ | |
300 \item $pred(x) = \max \left\{ 0, x - 1 \right\}$ | 323 \item $pred(x) = \max \left\{ 0, x - 1 \right\}$ |
301 \item \alert{$add(x, y) = x + y$} | 324 \item \alert{$add(x, y) = x + y$} |
302 \item \alert{$x \dot{-} y = \max \left\{ 0, x - y \right\}$} | 325 \item \alert{$x \dot{-} y = \max \left\{ 0, x - y \right\}$} |
303 \item \alert{$mult(x, y) = x \cdot y$} | 326 \item \alert{$mult(x, y) = x \cdot y$} |
304 \item $div(x, y) = x \div y$ (Ganzzahldivision) | 327 \item $div(x, y) = x \div y$ (Ganzzahldivision) |
328 \item $pow(x, y) = x^y$ | |
305 \item Die restliche einfache Arithmetik\ldots | 329 \item Die restliche einfache Arithmetik\ldots |
306 \vspace{1.5em} | 330 \vfill |
307 \item $tower(n) = 2^{2^{2^{\iddots}}}$ mit $tower(4) = 2^{16}$ | 331 \item $tower(n) = 2^{2^{2^{\iddots}}}$ mit $tower(4) = 2^{16}$ |
308 \item $sqr(x) = x^2$, $sqrt(x) = \sqrt{x}$ | 332 \item $sqr(x) = x^2$ |
333 \item $sqrt(x) = \sqrt{x}$ | |
309 \item $c(x), p_1(x), p_2(x)$ (Cantorsche Paarungsfunktion) | 334 \item $c(x), p_1(x), p_2(x)$ (Cantorsche Paarungsfunktion) |
310 \item $ifthen(n, a, b) = \begin{cases} a & n \neq 0 \\ b & n = 0 \end{cases}$ | 335 \item $ifthen(n, a, b) = \begin{cases} a & n \neq 0 \\ b & n = 0 \end{cases}$ |
311 \end{itemize} | 336 \end{itemize} |
312 \end{frame} | 337 \end{frame} |
313 } | 338 } |
316 \begin{frame} | 341 \begin{frame} |
317 \frametitle{Erweitertes PR-Schema} | 342 \frametitle{Erweitertes PR-Schema} |
318 \setbeamercovered{dynamic} | 343 \setbeamercovered{dynamic} |
319 | 344 |
320 \begin{definition}[Erweitertes PR-Schema] | 345 \begin{definition}[Erweitertes PR-Schema] |
321 Das \alert{erweiterte Schema der primitiven Rekursion} erlaubt | 346 Das \structure{erweiterte Schema der primitiven Rekursion} erlaubt |
322 \begin{align*} | 347 \begin{align*} |
323 f(0, \bar{x}) &= t_0 \\ | 348 f(0, \bar{x}) &= t_0 \\ |
324 f(m + 1, \bar{x}) &= t | 349 f(m + 1, \bar{x}) &= t |
325 \end{align*} | 350 \end{align*} |
326 wobei | 351 wobei $t_0$ und $t$ \structure{Terme} sind für die gilt |
327 \begin{itemize} | 352 \begin{itemize} |
328 \item $t_0$ enthält nur PR-Funktionen und die $x_i$ | 353 \item $t_0$ enthält nur PR-Funktionen und die $x_i$ |
329 \item $t$ enthält nur \alert{$f(m, \bar{x})$}, PR Funktionen, \alert{$m$} und die $x_i$. | 354 \item $t$ enthält nur \alert{$f(m, \bar{x})$}, PR Funktionen, \alert{$m$} und die $x_i$. |
330 \end{itemize} | 355 \end{itemize} |
331 \end{definition} | 356 \end{definition} |
332 | 357 |
358 \vfill | |
359 | |
333 \begin{theorem} | 360 \begin{theorem} |
334 Das erweiterte Schema der primitiven Rekursion führt nicht aus \alert{PR} heraus. | 361 Das erweiterte Schema der primitiven Rekursion führt nicht aus \structure{PR} heraus. |
335 \end{theorem} | 362 \end{theorem} |
336 \end{frame} | 363 \end{frame} |
337 } | 364 } |
338 | 365 |
339 \defineUnit{tmif}{% | 366 \defineUnit{tmif}{% |
422 \begin{frame} | 449 \begin{frame} |
423 \frametitle{LOOP-Programme} | 450 \frametitle{LOOP-Programme} |
424 \setbeamercovered{dynamic} | 451 \setbeamercovered{dynamic} |
425 | 452 |
426 \begin{definition}[LOOP-Programm] | 453 \begin{definition}[LOOP-Programm] |
427 Syntax von \alert{LOOP-Programmen}.\\ | 454 Syntax von \structure{LOOP-Programmen}.\\ |
428 Es ist $X \in \left\{ x_0, x_1, \ldots \right\}$ und $C \in \N$. | 455 Es ist $X \in \left\{ x_0, x_1, \ldots \right\}$ und $C \in \N$. |
429 \begin{align*} | 456 \begin{align*} |
430 P &\rightarrow X := X + C \\ | 457 P &\rightarrow X := X + C \\ |
431 &\mid X := X - C \\ | 458 &\mid X := X - C \\ |
432 &\mid P; P \\ | 459 &\mid P; P \\ |
433 &\mid \mathbf{LOOP}\ X \ \mathbf{DO}\ P \ \mathbf{END} \\ | 460 &\mid \mathbf{LOOP}\ X \ \mathbf{DO}\ P \ \mathbf{END} \\ |
434 &\mid \textcolor{gray}{\mathbf{IF}\ X = 0 \ \mathbf{DO}\ P \ \mathbf{ELSE}\ Q \ \mathbf{END}} | 461 &\mid \textcolor{gray}{\mathbf{IF}\ X = 0 \ \mathbf{DO}\ P \ \mathbf{ELSE}\ Q \ \mathbf{END}} |
435 \end{align*} | 462 \end{align*} |
436 \end{definition} | 463 \end{definition} |
464 | |
465 \vfill | |
437 | 466 |
438 \begin{itemize} | 467 \begin{itemize} |
439 \item Ausgabe steht in $x_0$, Eingaben in $x_1, \ldots, x_n$, Rest ist 0. | 468 \item Ausgabe steht in $x_0$, Eingaben in $x_1, \ldots, x_n$, Rest ist 0. |
440 \item $\mathbf{LOOP}\ x_i \ \mathbf{DO}\ P \ \mathbf{END}$ führt $P$ genau $n$ mal aus, wobei $n$ der Anfangswert von $x_i$ ist. \alert{Zuweisungen an $x_i$ in $P$ ändern die Anzahl der Durchläufe nicht.} | 469 \item $\mathbf{LOOP}\ x_i \ \mathbf{DO}\ P \ \mathbf{END}$ führt $P$ genau $n$ mal aus, wobei $n$ der Anfangswert von $x_i$ ist. \alert{Zuweisungen an $x_i$ in $P$ ändern die Anzahl der Durchläufe nicht.} |
441 \end{itemize} | 470 \end{itemize} |