-
Notifications
You must be signed in to change notification settings - Fork 3
/
915.tex
149 lines (116 loc) · 4.97 KB
/
915.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
\documentclass{agregfiche}
\title{Leçon 915 -- Classes de complexité. Exemples}
% V1 par Aliaume Lopez
% Relu par Gaetean Doueneau, Aliaume Lopez, Emilie Grienberger, Charlie Jacomme
% Relu par Jean Goubault
\begin{document}
\maketitle
\secrapports
\begin{rapport}{2019}
Le jury attend que le candidat aborde à la fois la complexité en temps et en
espace. Il faut naturellement exhiber des exemples de problèmes appartenant aux
classes de complexité introduites, et montrer les relations d’inclusion
existantes entre ces classes, en abordant le caractère strict ou non de ces
inclusions. Le jury s’attend à ce que les notions de réduction polynomiale, de
problème complet pour une classe, de robustesse d’une classe vis à vis des
modèles de calcul soient abordées. Se focaliser sur la décidabilité dans cette leçon
serait hors sujet.
\end{rapport}
\begin{rapport}{2017,2018}
[Parler de] décidabilité dans cette leçon serait hors sujet.
\end{rapport}
\secindispensables
\begin{itemize}
\item Complexité en espace et en temps.
\item Les classes usuelles ($\P$, $\NP$, $\PSPACE$) et inclusions.
\item Notion de réduction, de problème complet
\item SAT et le théorème de Cook
% \item Le problème "classiquement complet"
% \begin{equation}
% L = \left\{ (M, x, 1^t) ~|~ \langle M, x \rangle \text{ termine en
% temps (resp. espace) }\leq t
% \right\}
% \end{equation}
\end{itemize}
\secasavoir
\begin{itemize}
\item Exemples de problèmes complets sur des
domaines différents (graphes, automates,
grammaires, logique, circuits)
\item Exemples de réductions.
\item La robustesse vis-à-vis du modèle de calcul (une bande, plusieurs
bandes, écriture sur entrée)
\item Savitch et les classes en espace
\item Modèle des machines RAM
\item Les théorèmes de hiérarchie stricte (attention, la preuve concernant l'espace est très difficile, dangereux en développements)
\end{itemize}
\secidees
\begin{itemize}
\item Des théorèmes de borne inférieure de simulation
(une bande vs deux bandes en $O(n)$ vs $O(n^2)$
pour le langage des palindromes).
\item Les classes $\NL$, $\coNL$ et Immerman-Szelepcsényi
\item Développer le côté logique (2SAT, HORNSAT, SAT, QBF, CTLSAT).
\item Les classes alternantes, le lien avec
$\PSPACE$ et $\EXP$ et la hiérarchie polynomiale [Car]
\item Une machine qui calcule trop rapidement est un automate
[Car]
\item (vraiment loin du programme) Classes randomisés (tests de primalité, algorithme de Berlekamp,
polynomial identity testing, RP, coRP)
\end{itemize}
\secpieges
\begin{itemize}
\item Attention à la représentation des données.
\item Mettre des exemples, et des exemples.
\item Ne pas centrer toute la leçon sur $\P$ et $\NP$, mais ne pas les oublier.
\item Un petit diagramme qui permet de s'y retrouver
en annexe avec les inclusions strictes et les égalités est le bienvenu.
\item Si on parle de $\NL$, bien formaliser le type de machines
considérées, et bien expliquer la notion de réduction polynomiale,
et logarithmique si on parle de $\NL$
\item Les différentes ouvertures hors programme peuvent être très dangereuses, le domaine de la complexité est plein de pièges et de subtilités.
\end{itemize}
\secquestionsclassiques
\begin{itemize}
\item En pratique, que signifie $NP$-complet ? Quelle est
l'intérêt de la théorie de la complexité ?
% problème intractable => heuristique
\item Quels sont les impacts de la variation du modèle sur la
complexité ?
% faible, c'est l'intéret des TM
\item Pourquoi utiliser le formalisme des machines de Turing
plutôt qu'un autre (RAM, $\lambda$-calcul, fonctions
récursives) ?
% cf au dessus
\item Citer une classe qui n'est pas $P$, $NP$ ou $PSPACE$.
% L
\item Montrer que tel problème $X$ est $C$-complet.
\item Comment varie la complexité en fonction de la taille de
l'alphabet ?
% polynomialement, c'est le speed up theorem
\item Discussions sur les variantes de SAT.
\end{itemize}
\secreferences
\begin{itemize}
\item \input{refs/perifel}
\item \input{refs/carton}
\textit{La $NP$-complétude de HamPATH est fausse dedans. Le \bsc{Kleinberg} la fait bien par contre.}
\item \input{refs/arorabarak}
\item Éviter le \bsc{Papadimitriou}, qui contient de très nombreuses
fausses preuves.
\end{itemize}
\secdev
\begin{itemize}
\item[++] \input{dev/cook}
\item[++] Preuve de complétude d'un problème au choix.
\item[+] \input{dev/immerman}
\item[+-] \input{dev/CNFformula}
% \item \temporary{Équivalence entre 2 bandes et k bandes}
% \item \temporary{Hiérarchie en temps et en espace}
% \item \temporary{Universalité d'un langage rationnel est PSPACE complet}
\end{itemize}
\end{document}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: t
%%% End: