Repository navigation
Expand file tree
/
Copy pathMathlibQR.json
More file actions
2602 lines (2602 loc) · 113 KB
/
Copy pathMathlibQR.json
File metadata and controls
2602 lines (2602 loc) · 113 KB
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
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
[
{
"id": "O1",
"full_name": "Lattice",
"file": "Mathlib/Order/Lattice.lean:342",
"difficulty": "Easy",
"kind": "class",
"q1a_lean": "a poset with `⊔` and `⊓`",
"q1b_latex": "a poset with binary $\\sqcup$ and $\\sqcap$",
"q1c_natural": "a partial order in which any two elements have both a join and a meet",
"q2_slogan": "a poset with binary joins and meets",
"q3_nickname": "lattice",
"q4_special_case": ""
},
{
"id": "O2",
"full_name": "GaloisConnection",
"file": "Mathlib/Order/GaloisConnection/Defs.lean:41",
"difficulty": "Easy",
"kind": "def",
"q1a_lean": "a pair `f g` with `f a ≤ b ↔ a ≤ g b`",
"q1b_latex": "$f(a) \\le b \\iff a \\le g(b)$ for $f, g$ between preorders",
"q1c_natural": "two monotone maps related by an adjoint condition",
"q2_slogan": "an adjunction between two preorders",
"q3_nickname": "Galois connection",
"q4_special_case": ""
},
{
"id": "O3",
"full_name": "Nucleus",
"file": "Mathlib/Order/Nucleus.lean:34",
"difficulty": "Hard",
"kind": "structure",
"q1a_lean": "an `InfHom` `j` with `x ≤ j x` and `j (j x) ≤ j x`",
"q1b_latex": "$j : L \\to L$ inflationary, idempotent, $j(x \\sqcap y) = j(x) \\sqcap j(y)$",
"q1c_natural": "an inflationary, idempotent self-map that also preserves meets",
"q2_slogan": "",
"q3_nickname": "nucleus",
"q4_special_case": ""
},
{
"id": "O4",
"full_name": "Order.IsNormal",
"file": "Mathlib/Order/IsNormal.lean:34",
"difficulty": "Hard",
"kind": "structure",
"q1a_lean": "strictly monotone `f` on well-orders, with `f a = sup (f '' Iio a)` at successor-limits",
"q1b_latex": "$f$ strictly increasing with $f(a) = \\sup_{b<a} f(b)$ at each successor-limit $a$",
"q1c_natural": "a strictly increasing function between well-orders that is continuous at every limit",
"q2_slogan": "strictly increasing and limit-preserving on well-orders",
"q3_nickname": "normal function",
"q4_special_case": ""
},
{
"id": "O5",
"full_name": "iSup_iInf_le_iInf_iSup",
"file": "Mathlib/Order/CompleteLattice/Basic.lean:287",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`⨆ i, ⨅ j, f i j ≤ ⨅ j, ⨆ i, f i j`",
"q1b_latex": "$\\sup_i \\inf_j f(i, j) \\le \\inf_j \\sup_i f(i, j)$",
"q1c_natural": "the sup of infs is always at most the inf of sups",
"q2_slogan": "sup of infs bounded by inf of sups",
"q3_nickname": "max-min inequality",
"q4_special_case": "$\\max(\\min(a,b), \\min(c,d)) \\le \\min(\\max(a,c), \\max(b,d))$"
},
{
"id": "O6",
"full_name": "GaloisConnection.l_iSup",
"file": "Mathlib/Order/GaloisConnection/Basic.lean:116",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "for adjoint `f`, `f (⨆ i, x i) = ⨆ i, f (x i)`",
"q1b_latex": "$f(\\sup_i x_i) = \\sup_i f(x_i)$ for a left adjoint $f$",
"q1c_natural": "a left adjoint commutes with arbitrary joins",
"q2_slogan": "left adjoints preserve suprema",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "O7",
"full_name": "OrderHom.map_lfp",
"file": "Mathlib/Order/FixedPoints.lean:71",
"difficulty": "Hard",
"kind": "theorem",
"q1a_lean": "`f (lfp f) = lfp f`",
"q1b_latex": "$f(\\mathrm{lfp}\\,f) = \\mathrm{lfp}\\,f$",
"q1c_natural": "",
"q2_slogan": "",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "O8",
"full_name": "Filter.instCardinalInterFilter_cocardinal",
"file": "Mathlib/Order/Filter/Cocardinal.lean:50",
"difficulty": "Hard",
"kind": "instance",
"q1a_lean": "the cocardinal filter is closed under `<c`-many intersections",
"q1b_latex": "$\\bigcap_{i < \\kappa'} A_i \\in \\mathrm{cocard}_\\kappa$ for $\\kappa' < \\kappa$, $\\kappa$ regular",
"q1c_natural": "the filter of complements of small sets is closed under intersections of fewer than κ many sets",
"q2_slogan": "cocardinal filter has the cardinal-intersection property",
"q3_nickname": "",
"q4_special_case": "the cofinite filter is closed under finite intersections"
},
{
"id": "T1",
"full_name": "MetricSpace",
"file": "Mathlib/Topology/MetricSpace/Defs.lean:57",
"difficulty": "Easy",
"kind": "class",
"q1a_lean": "a type with `dist : α → α → ℝ`, `dist x y = 0 ↔ x = y`, symmetric, triangle inequality",
"q1b_latex": "$X$ with $d : X \\times X \\to \\mathbb{R}$, $d(x,y)=0 \\iff x=y$, symmetric, $\\triangle$-inequality",
"q1c_natural": "a set with a distance satisfying positivity, symmetry, and the triangle inequality",
"q2_slogan": "a space with a distance function",
"q3_nickname": "metric space",
"q4_special_case": ""
},
{
"id": "T2",
"full_name": "IsCompact",
"file": "Mathlib/Topology/Defs/Filter.lean:276",
"difficulty": "Easy",
"kind": "def",
"q1a_lean": "a set `s` such that every nontrivial filter `≤ 𝓟 s` clusters at some point of `s`",
"q1b_latex": "$s$ such that every nontrivial filter $\\mathcal{F} \\le \\mathcal{P}(s)$ has a cluster point in $s$",
"q1c_natural": "a set in which every filter clusters somewhere inside it",
"q2_slogan": "every filter on a compact set has a cluster point",
"q3_nickname": "compact set",
"q4_special_case": ""
},
{
"id": "T3",
"full_name": "AlexandrovDiscrete",
"file": "Mathlib/Topology/AlexandrovDiscrete.lean:38",
"difficulty": "Hard",
"kind": "class",
"q1a_lean": "a `TopologicalSpace` where `⋂₀ S` is open for any family `S` of opens",
"q1b_latex": "$\\bigcap_{i \\in I} U_i$ open for arbitrary index set $I$",
"q1c_natural": "a topological space where intersections of arbitrary open families remain open",
"q2_slogan": "arbitrary intersections of opens stay open",
"q3_nickname": "Alexandrov-discrete space",
"q4_special_case": ""
},
{
"id": "T4",
"full_name": "FiberBundle",
"file": "Mathlib/Topology/FiberBundle/Basic.lean:186",
"difficulty": "Hard",
"kind": "class",
"q1a_lean": "a space `E → B` with a trivialization making it locally `≅ U × F`",
"q1b_latex": "a space $E$ over $B$ such that locally $E \\cong U \\times F$",
"q1c_natural": "a space over a base that locally looks like a direct product with a fixed fiber",
"q2_slogan": "a space that locally looks like a product with a fixed fiber",
"q3_nickname": "fiber bundle",
"q4_special_case": ""
},
{
"id": "T5",
"full_name": "isCompact_iff_finite_subcover",
"file": "Mathlib/Topology/Compactness/Compact.lean:368",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`IsCompact s` iff every open cover of `s` has a finite subcover",
"q1b_latex": "$K$ compact $\\iff \\forall \\mathcal{U}$ open cover, $\\exists \\mathcal{V} \\subseteq \\mathcal{U}$ finite, $K \\subseteq \\bigcup \\mathcal{V}$",
"q1c_natural": "a set is compact iff every open cover admits a finite subcover",
"q2_slogan": "compact = finite subcover property",
"q3_nickname": "finite subcover characterization",
"q4_special_case": "$[0,1] \\subseteq \\mathbb{R}$ has a finite subcover for every open cover"
},
{
"id": "T6",
"full_name": "continuous_iff_isClosed",
"file": "Mathlib/Topology/Continuous.lean:182",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`Continuous f ↔ ∀ s, IsClosed s → IsClosed (f ⁻¹' s)`",
"q1b_latex": "$f$ continuous $\\iff \\forall C$ closed, $f^{-1}(C)$ closed",
"q1c_natural": "a function is continuous iff the preimage of every closed set is closed",
"q2_slogan": "continuity = closed preimages of closed sets",
"q3_nickname": "",
"q4_special_case": "$f : \\mathbb{R} \\to \\mathbb{R}$ continuous iff $f^{-1}([a,b])$ closed for every closed interval"
},
{
"id": "T7",
"full_name": "exists_continuous_zero_one_of_isClosed",
"file": "Mathlib/Topology/UrysohnsLemma.lean:321",
"difficulty": "Hard",
"kind": "theorem",
"q1a_lean": "for disjoint closed `s t` in a `NormalSpace`, exists continuous `f` with `f = 0` on `s`, `f = 1` on `t`",
"q1b_latex": "$\\exists f \\in C(X, [0,1]),\\ f|_S = 0,\\ f|_T = 1$ for $S, T$ disjoint closed in normal $X$",
"q1c_natural": "in a normal space, two disjoint closed sets can be separated by a continuous function valued 0 on one and 1 on the other",
"q2_slogan": "disjoint closed sets in a normal space are separated by a continuous function",
"q3_nickname": "Urysohn's lemma",
"q4_special_case": "in $\\mathbb{R}$, $[0,1]$ and $[2,3]$ are separated by a continuous ramp"
},
{
"id": "T8",
"full_name": "T4Space.of_paracompactSpace_t2Space",
"file": "Mathlib/Topology/Compactness/Paracompact.lean:300",
"difficulty": "Hard",
"kind": "instance",
"q1a_lean": "paracompact + Hausdorff ⇒ T4",
"q1b_latex": "paracompact $+\\ T_2 \\Rightarrow T_4$",
"q1c_natural": "every paracompact Hausdorff space is normal",
"q2_slogan": "paracompact Hausdorff spaces are normal",
"q3_nickname": "Dieudonné's theorem",
"q4_special_case": "every metric space is normal"
},
{
"id": "A1",
"full_name": "LieRing",
"file": "Mathlib/Algebra/Lie/Basic.lean",
"difficulty": "Easy",
"kind": "class",
"q1a_lean": "`AddCommGroup` with bilinear `⁅·,·⁆`, `⁅x,x⁆ = 0`, and Jacobi",
"q1b_latex": "an additive group with a bracket $[\\cdot,\\cdot]$ that is bilinear, alternating, and satisfies $[x,[y,z]] + [y,[z,x]] + [z,[x,y]] = 0$",
"q1c_natural": "an additive group equipped with a bracket that is bilinear, alternating, and satisfies the Jacobi identity",
"q2_slogan": "abelian group with a Jacobi-style bracket",
"q3_nickname": "Lie ring",
"q4_special_case": ""
},
{
"id": "A2",
"full_name": "Subalgebra",
"file": "Mathlib/Algebra/Algebra/Subalgebra/Basic.lean",
"difficulty": "Easy",
"kind": "structure",
"q1a_lean": "a `Subsemiring` of `A` containing the image of `algebraMap R A`",
"q1b_latex": "$S \\le A$ closed under $+, \\cdot, 0, 1$ with $\\mathrm{algebraMap}(R) \\subseteq S$",
"q1c_natural": "a sub(semi)ring containing the image of the algebra map",
"q2_slogan": "subring closed under the scalar multiplication",
"q3_nickname": "subalgebra",
"q4_special_case": ""
},
{
"id": "A3",
"full_name": "GCDMonoid",
"file": "Mathlib/Algebra/GCDMonoid/Basic.lean:246",
"difficulty": "Hard",
"kind": "class",
"q1a_lean": "`IsCancelMulZero` with `gcd`, `lcm` and the standard divisibility axioms",
"q1b_latex": "comm monoid with $\\gcd, \\mathrm{lcm}$ such that $\\gcd(a,b) \\mid a$, $\\gcd(a,b) \\mid b$, $\\gcd(a,b) \\cdot \\mathrm{lcm}(a,b) \\sim ab$",
"q1c_natural": "a cancel-zero comm monoid equipped with gcd and lcm",
"q2_slogan": "comm monoid with gcd and lcm",
"q3_nickname": "GCD monoid",
"q4_special_case": ""
},
{
"id": "A4",
"full_name": "CategoryTheory.ShortComplex.HomologyData",
"file": "Mathlib/Algebra/Homology/ShortComplex/Homology.lean:50",
"difficulty": "Hard",
"kind": "structure",
"q1a_lean": "a `LeftHomologyData` and `RightHomologyData` with an iso between their `H` and a compatibility square",
"q1b_latex": "$H_{\\mathrm{left}} \\xrightarrow{\\sim} H_{\\mathrm{right}}$ on a short complex with compatible square",
"q1c_natural": "a left and right homology data of a short complex together with an iso between them",
"q2_slogan": "paired left/right homology data of a short complex",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "A5",
"full_name": "Convex.combo_self",
"file": "Mathlib/Algebra/Module/Defs.lean:76",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`a + b = 1 → a • x + b • x = x`",
"q1b_latex": "$a + b = 1 \\Rightarrow a x + b x = x$",
"q1c_natural": "a convex combination of a point with itself equals the point",
"q2_slogan": "",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "A6",
"full_name": "normalize_associated",
"file": "Mathlib/Algebra/GCDMonoid/Basic.lean:108",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`Associated (normalize x) x`",
"q1b_latex": "$\\mathrm{normalize}(x) \\sim x$",
"q1c_natural": "the normalized form of an element is associated to the element itself",
"q2_slogan": "normalize stays in the same associativity class",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "A7",
"full_name": "GCDMonoid.gcd_mul_lcm",
"file": "Mathlib/Algebra/GCDMonoid/Basic.lean:303",
"difficulty": "Hard",
"kind": "theorem",
"q1a_lean": "`Associated (gcd a b * lcm a b) (a * b)`",
"q1b_latex": "$\\gcd(a,b) \\cdot \\mathrm{lcm}(a,b) \\sim a \\cdot b$",
"q1c_natural": "the product of gcd and lcm equals the original product up to a unit",
"q2_slogan": "gcd × lcm equals the product up to a unit",
"q3_nickname": "gcd-lcm identity",
"q4_special_case": ""
},
{
"id": "A8",
"full_name": "LieAlgebra.ofAssociativeAlgebra",
"file": "Mathlib/Algebra/Lie/OfAssociative.lean",
"difficulty": "Hard",
"kind": "instance",
"q1a_lean": "every `Algebra R A` is a `LieAlgebra R A` via the commutator",
"q1b_latex": "any associative $R$-algebra $A$ becomes a Lie algebra under $[x, y] := xy - yx$",
"q1c_natural": "every associative algebra carries a canonical Lie algebra structure",
"q2_slogan": "associative algebras are Lie algebras under the commutator bracket",
"q3_nickname": "commutator Lie algebra",
"q4_special_case": ""
},
{
"id": "AG1",
"full_name": "AlgebraicGeometry.Scheme",
"file": "Mathlib/AlgebraicGeometry/Scheme.lean:42",
"difficulty": "Easy",
"kind": "structure",
"q1a_lean": "a `LocallyRingedSpace` that is locally `Spec R` near every point",
"q1b_latex": "a locally ringed space $(X, \\mathcal{O}_X)$ in which every point has a neighborhood isomorphic to $\\mathrm{Spec}\\,R$ for some commutative ring $R$",
"q1c_natural": "a locally ringed space that is locally isomorphic to the spectrum of a commutative ring",
"q2_slogan": "a locally ringed space modeled on Spec of rings",
"q3_nickname": "scheme",
"q4_special_case": ""
},
{
"id": "AG2",
"full_name": "AlgebraicGeometry.IsAffine",
"file": "Mathlib/AlgebraicGeometry/AffineScheme.lean:59",
"difficulty": "Easy",
"kind": "class",
"q1a_lean": "",
"q1b_latex": "$X \\cong \\mathrm{Spec}\\,\\Gamma(X, \\mathcal{O}_X)$",
"q1c_natural": "a scheme that is isomorphic to Spec A",
"q2_slogan": "a scheme that is the spectrum of its ring of functions",
"q3_nickname": "affine scheme",
"q4_special_case": ""
},
{
"id": "AG3",
"full_name": "AlgebraicGeometry.ValuativeCommSq",
"file": "Mathlib/AlgebraicGeometry/ValuativeCriterion.lean:53",
"difficulty": "Hard",
"kind": "structure",
"q1a_lean": "a comm square `Spec K → X` and `Spec R → Y` with `R` a DVR and `K` its fraction field",
"q1b_latex": "commutative square $\\mathrm{Spec}\\,K \\to X,\\,\\mathrm{Spec}\\,R \\to Y$ over $R$ a DVR with fraction field $K$",
"q1c_natural": "a commutative square over a valuation ring and its fraction field used to test properties of a morphism",
"q2_slogan": "test square for valuative criteria of morphisms",
"q3_nickname": "valuative criteria diagram",
"q4_special_case": ""
},
{
"id": "AG4",
"full_name": "AlgebraicGeometry.Scheme.GlueData",
"file": "Mathlib/AlgebraicGeometry/Gluing.lean:90",
"difficulty": "Hard",
"kind": "structure",
"q1a_lean": "a categorical `GlueData` for `Scheme` whose `f i j` are open immersions",
"q1b_latex": "glue data on $\\mathrm{Scheme}$ with each $f_{ij}$ an open immersion",
"q1c_natural": "gluing data for schemes via open immersions on overlap pieces",
"q2_slogan": "gluing data for schemes",
"q3_nickname": "scheme glue data",
"q4_special_case": ""
},
{
"id": "AG5",
"full_name": "AlgebraicGeometry.IsAffineOpen.basicOpen_basicOpen_is_basicOpen",
"file": "Mathlib/AlgebraicGeometry/AffineScheme.lean",
"difficulty": "Hard",
"kind": "theorem",
"q1a_lean": "`IsAffineOpen U → IsAffineOpen (U.basicOpen f)`",
"q1b_latex": "$D(f) \\subseteq U$ with $U$ affine open $\\Rightarrow D(f)$ affine open",
"q1c_natural": "a basic open inside an affine open is itself affine",
"q2_slogan": "basic opens of affine opens are affine",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "AG6",
"full_name": "AlgebraicGeometry.affine_isReduced_iff",
"file": "Mathlib/AlgebraicGeometry/Properties.lean:111",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`IsReduced (Spec R) ↔ IsReduced R`",
"q1b_latex": "$\\mathrm{Spec}\\,R$ reduced $\\iff R$ reduced",
"q1c_natural": "an affine scheme is reduced iff its ring of functions has no nilpotents",
"q2_slogan": "affine scheme reduced iff ring is reduced",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "AG7",
"full_name": "AlgebraicGeometry.IsAffine.of_isIso",
"file": "Mathlib/AlgebraicGeometry/AffineScheme.lean:122",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`f : X ⟶ Y` an iso, `Y` affine `⇒` `X` affine",
"q1b_latex": "$X \\cong Y$ as schemes and $Y$ affine $\\Rightarrow X$ affine",
"q1c_natural": "a scheme isomorphic to an affine scheme is itself affine",
"q2_slogan": "affineness transfers along scheme isomorphisms",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "AG8",
"full_name": "AlgebraicGeometry.IsOpenImmersion.comp",
"file": "Mathlib/AlgebraicGeometry/OpenImmersion.lean:40",
"difficulty": "Easy",
"kind": "instance",
"q1a_lean": "`[IsOpenImmersion f] [IsOpenImmersion g] : IsOpenImmersion (f ≫ g)`",
"q1b_latex": "$f, g$ open immersions $\\Rightarrow$ $g \\circ f$ open immersion",
"q1c_natural": "composition of two open immersions is an open immersion",
"q2_slogan": "open immersions are closed under composition",
"q3_nickname": "",
"q4_special_case": "a chain $U \\hookrightarrow V \\hookrightarrow X$ of open subscheme inclusions composes to an open immersion"
},
{
"id": "AT1",
"full_name": "CategoryTheory.FundamentalGroupoid",
"file": "Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean:237",
"difficulty": "Easy",
"kind": "structure",
"q1a_lean": "a wrapper around `X` carrying a `Groupoid` instance via paths up to homotopy",
"q1b_latex": "$\\Pi_1(X)$",
"q1c_natural": "the carrier type of the fundamental groupoid of a topological space",
"q2_slogan": "carrier of the fundamental groupoid",
"q3_nickname": "fundamental groupoid",
"q4_special_case": ""
},
{
"id": "AT2",
"full_name": "SSet.Quasicategory",
"file": "Mathlib/AlgebraicTopology/Quasicategory/Basic.lean:39",
"difficulty": "Easy",
"kind": "class",
"q1a_lean": "a simplicial set in which every inner horn `Λⁿᵢ → S` extends to a `Δⁿ → S`",
"q1b_latex": "a simplicial set $S$ such that every inner horn $\\Lambda^n_i \\to S$ ($0 < i < n$) extends to a simplex $\\Delta^n \\to S$",
"q1c_natural": "a simplicial set in which every inner horn extends to a full simplex",
"q2_slogan": "a simplicial set with all inner horns fillable",
"q3_nickname": "quasicategory",
"q4_special_case": ""
},
{
"id": "AT3",
"full_name": "HomotopicalAlgebra.ModelCategory",
"file": "Mathlib/AlgebraicTopology/ModelCategory/Basic.lean:49",
"difficulty": "Hard",
"kind": "class",
"q1a_lean": "a category equipped with `cofibrations`, `fibrations`, `weakEquivalences` satisfying CM1–CM5",
"q1b_latex": "a category $C$ with classes of cofibrations, fibrations, weak equivalences satisfying Quillen\\'s axioms",
"q1c_natural": "a category equipped with three classes of morphisms satisfying the Quillen axioms",
"q2_slogan": "category equipped to do homotopy theory à la Quillen",
"q3_nickname": "Quillen model category",
"q4_special_case": ""
},
{
"id": "AT4",
"full_name": "SimplicialObject.Augmented.ExtraDegeneracy",
"file": "Mathlib/AlgebraicTopology/ExtraDegeneracy.lean:64",
"difficulty": "Hard",
"kind": "structure",
"q1a_lean": "`s' : X.right ⟶ X.left.obj 0`, `s n : X.left.obj n ⟶ X.left.obj (n+1)` satisfying simplicial identities with face/degeneracy maps",
"q1b_latex": "extra degeneracy maps $s\\', s_n$ on an augmented simplicial object compatible with $\\delta_i$ and $\\sigma_i$",
"q1c_natural": "additional degeneracy maps on an augmented simplicial object satisfying compatibility with face and degeneracy maps",
"q2_slogan": "extra degeneracy on an augmented simplicial object",
"q3_nickname": "extra degeneracy",
"q4_special_case": ""
},
{
"id": "AT5",
"full_name": "CategoryTheory.SimplicialObject.δ_comp_δ",
"file": "Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean:115",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`δ j.succ ≫ δ i = δ i.castSucc ≫ δ j` for `i ≤ j`",
"q1b_latex": "$\\delta_{j+1} \\circ \\delta_i = \\delta_i \\circ \\delta_j$ for $i \\le j$",
"q1c_natural": "face maps in a simplicial object commute with appropriate index shifting",
"q2_slogan": "first simplicial identity (faces commute)",
"q3_nickname": "simplicial identity",
"q4_special_case": ""
},
{
"id": "AT6",
"full_name": "CategoryTheory.Arrow.AugmentedCechNerve.ExtraDegeneracy.s_comp_π_succ",
"file": "Mathlib/AlgebraicTopology/ExtraDegeneracy.lean:270",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`s f S n ≫ π_(i+1) = π_i` in the augmented Čech nerve",
"q1b_latex": "$s_n \\circ \\pi_{i+1} = \\pi_i$ in the augmented Čech nerve",
"q1c_natural": "composing the extra-degeneracy map with the next projection gives the previous projection",
"q2_slogan": "extra degeneracy and projection match up via index shift",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "AT7",
"full_name": "AlgebraicTopology.NormalizedMooreComplex.d_squared",
"file": "Mathlib/AlgebraicTopology/MooreComplex.lean:99",
"difficulty": "Hard",
"kind": "theorem",
"q1a_lean": "`d (n+1) ≫ d n = 0` in the normalized Moore complex",
"q1b_latex": "$d_{n+1} \\circ d_n = 0$ in the normalized Moore complex of a simplicial object",
"q1c_natural": "consecutive differentials in the normalized Moore complex compose to zero",
"q2_slogan": "d squared is zero in the normalized Moore complex",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "AT8",
"full_name": "SSet.instQuasicategoryOfKanComplex",
"file": "Mathlib/AlgebraicTopology/Quasicategory/Basic.lean:58",
"difficulty": "Hard",
"kind": "instance",
"q1a_lean": "`[KanComplex S] : Quasicategory S`",
"q1b_latex": "$S$ Kan complex $\\Rightarrow$ $S$ quasicategory",
"q1c_natural": "a Kan complex is in particular a quasicategory",
"q2_slogan": "Kan complexes are quasicategories",
"q3_nickname": "",
"q4_special_case": "the singular complex of a topological space is a Kan complex hence a quasicategory"
},
{
"id": "An1",
"full_name": "UniformConvexSpace",
"file": "Mathlib/Analysis/Convex/Uniform.lean:44",
"difficulty": "Easy",
"kind": "class",
"q1a_lean": "`SeminormedAddCommGroup` where `‖x‖=‖y‖=1, ‖x-y‖≥ε ⇒ ‖x+y‖ ≤ 2-δ(ε)`",
"q1b_latex": "$|x|=|y|=1, |x-y|\\ge\\varepsilon \\Rightarrow |\\tfrac{x+y}{2}| \\le 1-\\delta(\\varepsilon)$",
"q1c_natural": "a normed space where the triangle inequality is uniformly strict for far-apart unit vectors",
"q2_slogan": "uniformly strict triangle inequality on the unit sphere",
"q3_nickname": "uniformly convex space",
"q4_special_case": ""
},
{
"id": "An2",
"full_name": "BoxIntegral.Box",
"file": "Mathlib/Analysis/BoxIntegral/Box/Basic.lean:76",
"difficulty": "Easy",
"kind": "structure",
"q1a_lean": "`lower, upper : ι → ℝ` with `lower i < upper i`",
"q1b_latex": "$\\prod_i (l_i, u_i]$",
"q1c_natural": "a half-open rectangular product of intervals indexed by ι",
"q2_slogan": "rectangular box in ℝ^ι",
"q3_nickname": "rectangular box",
"q4_special_case": ""
},
{
"id": "An3",
"full_name": "CompletelyPositiveMap",
"file": "Mathlib/Analysis/CStarAlgebra/CompletelyPositiveMap.lean:50",
"difficulty": "Hard",
"kind": "structure",
"q1a_lean": "an `A₁ →ₗ[ℂ] A₂` such that for every `k`, the lifted map `M_k(A₁) → M_k(A₂)` preserves positivity",
"q1b_latex": "linear $\\varphi : A_1 \\to A_2$ such that $\\mathrm{id}_{M_k} \\otimes \\varphi$ preserves positivity for every $k$",
"q1c_natural": "a linear map between C*-algebras whose all matrix amplifications stay positive",
"q2_slogan": "linear map remaining positive after every matrix amplification",
"q3_nickname": "completely positive map (CP map)",
"q4_special_case": ""
},
{
"id": "An4",
"full_name": "BoxIntegral.Prepartition",
"file": "Mathlib/Analysis/BoxIntegral/Partition/Basic.lean:54",
"difficulty": "Hard",
"kind": "structure",
"q1a_lean": "a `Finset` of sub-boxes `J ≤ I` that are pairwise disjoint",
"q1b_latex": "a finite collection of pairwise disjoint sub-boxes contained in $I$",
"q1c_natural": "a finite collection of pairwise disjoint sub-boxes of a given box",
"q2_slogan": "prepartition by disjoint sub-boxes",
"q3_nickname": "prepartition",
"q4_special_case": ""
},
{
"id": "An5",
"full_name": "inner_mul_inner_self_le",
"file": "Mathlib/Analysis/InnerProductSpace/Basic.lean:281",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`‖⟪x, y⟫‖ * ‖⟪y, x⟫‖ ≤ re ⟪x, x⟫ * re ⟪y, y⟫`",
"q1b_latex": "$|\\langle x, y\\rangle| \\cdot |\\langle y, x\\rangle| \\le \\mathrm{Re}\\langle x, x\\rangle \\cdot \\mathrm{Re}\\langle y, y\\rangle$",
"q1c_natural": "the inner product magnitude is bounded by the product of the squared norms",
"q2_slogan": "Cauchy–Schwarz inequality",
"q3_nickname": "Cauchy–Schwarz",
"q4_special_case": "$\\left(\\sum_i x_i y_i\\right)^2 \\le \\left(\\sum_i x_i^2\\right) \\left(\\sum_i y_i^2\\right)$"
},
{
"id": "An6",
"full_name": "Convex.inter",
"file": "Mathlib/Analysis/Convex/Basic.lean:90",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`Convex 𝕜 s → Convex 𝕜 t → Convex 𝕜 (s ∩ t)`",
"q1b_latex": "$S, T$ convex $\\Rightarrow S \\cap T$ convex",
"q1c_natural": "the intersection of two convex sets is convex",
"q2_slogan": "convex sets are closed under intersection",
"q3_nickname": "",
"q4_special_case": "intersection of two half-planes in $\\mathbb{R}^2$ is convex"
},
{
"id": "An7",
"full_name": "image_norm_le_of_norm_deriv_right_le_deriv_boundary",
"file": "Mathlib/Analysis/Calculus/MeanValue.lean",
"difficulty": "Hard",
"kind": "theorem",
"q1a_lean": "`‖f' x‖ ≤ B' x` and `‖f a‖ ≤ B a` `⇒` `‖f x‖ ≤ B x` on `[a,b]`",
"q1b_latex": "$|f\\'(x)| \\le \\varphi\\'(x)$ on $[a,b]$ and $|f(a)| \\le \\varphi(a) \\Rightarrow |f(x)| \\le \\varphi(x)$ for all $x \\in [a,b]$",
"q1c_natural": "if the norm of the derivative of f is bounded by the derivative of φ and f at the start is bounded by φ at the start, then f stays bounded by φ",
"q2_slogan": "derivative-norm bound transfers to function bound",
"q3_nickname": "mean-value inequality (Banach-space form)",
"q4_special_case": "for $f : [0,1] \\to \\mathbb{R}^n$, $|f(1) - f(0)| \\le \\sup_x |f\\'(x)|$"
},
{
"id": "An8",
"full_name": "ContinuousLinearMap.instCStarRingId",
"file": "Mathlib/Analysis/InnerProductSpace/Adjoint.lean",
"difficulty": "Hard",
"kind": "instance",
"q1a_lean": "`instance : CStarRing (E →L[𝕜] E)` via the operator adjoint",
"q1b_latex": "$|T^*T| = |T|^2$ for bounded operators on a Hilbert space",
"q1c_natural": "bounded operators on a Hilbert space form a C*-algebra under the operator adjoint as star",
"q2_slogan": "bounded operators on a Hilbert space form a C*-algebra",
"q3_nickname": "$B(H)$ is a $C^*$-algebra",
"q4_special_case": ""
},
{
"id": "C1",
"full_name": "CategoryTheory.Functor",
"file": "Mathlib/CategoryTheory/Functor/Basic.lean:40",
"difficulty": "Easy",
"kind": "structure",
"q1a_lean": "a map between categories with `obj : C → D` and `map : (X ⟶ Y) → (F X ⟶ F Y)` preserving `𝟙` and `≫`",
"q1b_latex": "$F : C \\to D$ with $F(\\mathrm{id}_X) = \\mathrm{id}_{F X}$ and $F(g \\circ f) = F g \\circ F f$",
"q1c_natural": "a map between categories that preserves identities and composition",
"q2_slogan": "a structure-preserving map between categories",
"q3_nickname": "functor",
"q4_special_case": ""
},
{
"id": "C2",
"full_name": "CategoryTheory.NatTrans",
"file": "Mathlib/CategoryTheory/NatTrans.lean:52",
"difficulty": "Easy",
"kind": "structure",
"q1a_lean": "`app (X : C) : F.obj X ⟶ G.obj X` with `naturality (f : X ⟶ Y)`",
"q1b_latex": "family $\\alpha_X : F(X) \\to G(X)$ satisfying $\\alpha_Y \\circ F(f) = G(f) \\circ \\alpha_X$",
"q1c_natural": "a family of morphisms between two functors that commutes with morphism action",
"q2_slogan": "morphism between functors",
"q3_nickname": "natural transformation",
"q4_special_case": ""
},
{
"id": "C3",
"full_name": "CategoryTheory.Bicategory",
"file": "Mathlib/CategoryTheory/Bicategory/Basic.lean:61",
"difficulty": "Hard",
"kind": "class",
"q1a_lean": "a `CategoryStruct` with `whiskerLeft`, `whiskerRight`, `associator`, `leftUnitor`, `rightUnitor` satisfying pentagon and triangle",
"q1b_latex": "category enriched in categories with weak associator/unitor satisfying pentagon and triangle laws",
"q1c_natural": "a category whose composition is associative only up to coherent 2-isomorphism",
"q2_slogan": "weak 2-category with coherent associator and unitors",
"q3_nickname": "bicategory",
"q4_special_case": ""
},
{
"id": "C4",
"full_name": "CategoryTheory.GrothendieckTopology",
"file": "Mathlib/CategoryTheory/Sites/Grothendieck.lean:76",
"difficulty": "Hard",
"kind": "structure",
"q1a_lean": "`sieves : (X : C) → Set (Sieve X)` satisfying maximality, pullback stability, transitivity",
"q1b_latex": "assignment $X \\mapsto J(X) \\subseteq \\mathrm{Sieve}(X)$ closed under maximality, pullback, transitivity",
"q1c_natural": "an assignment of covering sieves to each object satisfying maximality, pullback stability, and transitivity",
"q2_slogan": "axiomatic notion of \"open cover\" in a category",
"q3_nickname": "Grothendieck topology",
"q4_special_case": ""
},
{
"id": "C5",
"full_name": "CategoryTheory.Limits.limit.lift_π",
"file": "Mathlib/CategoryTheory/Limits/HasLimits.lean",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`lift F c ≫ π F j = c.π.app j`",
"q1b_latex": "$\\mathrm{lift}(c) \\circ \\pi_j = c.\\pi_j$ for any cone $c$ over $F$",
"q1c_natural": "composing the universal lift with each limit projection recovers the original cone",
"q2_slogan": "universal lift composes correctly with the projections",
"q3_nickname": "universal property of limit",
"q4_special_case": ""
},
{
"id": "C6",
"full_name": "CategoryTheory.NatTrans.vcomp_app",
"file": "Mathlib/CategoryTheory/NatTrans.lean:107",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`(α.vcomp β).app X = α.app X ≫ β.app X`",
"q1b_latex": "$(\\beta \\circ \\alpha)_X = \\beta_X \\circ \\alpha_X$",
"q1c_natural": "vertical composition of natural transformations is computed component-wise",
"q2_slogan": "vertical composition is component-wise",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "C7",
"full_name": "CategoryTheory.Adjunction.homEquiv_naturality_left",
"file": "Mathlib/CategoryTheory/Adjunction/Basic.lean:227",
"difficulty": "Hard",
"kind": "theorem",
"q1a_lean": "for `F ⊣ G`, `Φ (F.map f ≫ g) = f ≫ Φ g`",
"q1b_latex": "$\\Phi(F(f) \\circ g) = f \\circ \\Phi(g)$ for the hom-equivalence of an adjunction $F \\dashv G$",
"q1c_natural": "the hom-set bijection of an adjunction is natural in the source object",
"q2_slogan": "adjunction hom-set bijection is natural in the source",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "C8",
"full_name": "CategoryTheory.Pretriangulated.triangleCategory",
"file": "Mathlib/CategoryTheory/Triangulated/Basic.lean:146",
"difficulty": "Hard",
"kind": "instance",
"q1a_lean": "`instance : Category (Triangle C)`",
"q1b_latex": "triangles in a pretriangulated category form a category",
"q1c_natural": "distinguished triangles in a pretriangulated category form their own category",
"q2_slogan": "triangles form a category",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "Cb1",
"full_name": "SimpleGraph",
"file": "Mathlib/Combinatorics/SimpleGraph/Basic.lean:92",
"difficulty": "Easy",
"kind": "structure",
"q1a_lean": "`Adj : V → V → Prop` symmetric and irreflexive",
"q1b_latex": "$G = (V, E)$ with $E$ symmetric and irreflexive on $V$",
"q1c_natural": "a vertex set with a symmetric, irreflexive adjacency relation",
"q2_slogan": "irreflexive symmetric adjacency on vertices",
"q3_nickname": "simple graph",
"q4_special_case": ""
},
{
"id": "Cb2",
"full_name": "YoungDiagram",
"file": "Mathlib/Combinatorics/Young/YoungDiagram.lean:66",
"difficulty": "Easy",
"kind": "structure",
"q1a_lean": "a `Finset (ℕ × ℕ)` that is a lower set",
"q1b_latex": "a finite lower set in $\\mathbb{N} \\times \\mathbb{N}$",
"q1c_natural": "a finite collection of cells forming a lower set in the integer grid",
"q2_slogan": "finite lower set of cells in the integer grid",
"q3_nickname": "Young diagram",
"q4_special_case": ""
},
{
"id": "Cb3",
"full_name": "Matroid",
"file": "Mathlib/Combinatorics/Matroid/Basic.lean:192",
"difficulty": "Hard",
"kind": "structure",
"q1a_lean": "ground set `E`, base predicate `IsBase`, indep predicate `Indep` satisfying exchange and maximality",
"q1b_latex": "a ground set $E$ with families $\\mathcal{B}, \\mathcal{I}$ of bases and independents satisfying exchange and maximality",
"q1c_natural": "a ground set with families of bases and independent sets satisfying exchange and maximality",
"q2_slogan": "combinatorial abstraction of linear independence",
"q3_nickname": "matroid",
"q4_special_case": ""
},
{
"id": "Cb4",
"full_name": "Combinatorics.Line",
"file": "Mathlib/Combinatorics/HalesJewett.lean:175",
"difficulty": "Hard",
"kind": "structure",
"q1a_lean": "`idxFun : ι → Option α` with at least one `none` (the free coordinate)",
"q1b_latex": "$\\ell : \\alpha \\to (\\iota \\to \\alpha)$ where some coordinates vary together and others are fixed",
"q1c_natural": "a parametric family of points in a hypercube where some coordinates vary together and others are fixed",
"q2_slogan": "non-trivial axis-parallel line in a hypercube",
"q3_nickname": "combinatorial line",
"q4_special_case": ""
},
{
"id": "Cb5",
"full_name": "SimpleGraph.adj_comm",
"file": "Mathlib/Combinatorics/SimpleGraph/Basic.lean:166",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`G.Adj u v ↔ G.Adj v u`",
"q1b_latex": "$u \\sim v \\iff v \\sim u$",
"q1c_natural": "adjacency in a simple graph is symmetric",
"q2_slogan": "edges of a simple graph are undirected",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "Cb6",
"full_name": "Finset.all_card_le_biUnion_card_iff_existsInjective'",
"file": "Mathlib/Combinatorics/Hall/Finite.lean:243",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`(∀ s : Finset ι, #s ≤ #(s.biUnion t)) ↔ ∃ f : ι → α, Injective f ∧ ∀ x, f x ∈ t x`",
"q1b_latex": "$\\forall S, |S| \\le \\left|\\bigcup_{i \\in S} t(i)\\right| \\iff \\exists f$ injective, $f(i) \\in t(i)$",
"q1c_natural": "a finite system has a system of distinct representatives iff every subfamily covers enough elements",
"q2_slogan": "Hall's condition characterizes existence of an SDR",
"q3_nickname": "Hall's marriage theorem",
"q4_special_case": "$n$ men and $n$ women have a perfect matching iff every $k$-subset of men collectively likes at least $k$ women"
},
{
"id": "Cb7",
"full_name": "Finset.exists_lt_card_fiber_of_nsmul_lt_card_of_maps_to",
"file": "Mathlib/Combinatorics/Pigeonhole.lean:220",
"difficulty": "Hard",
"kind": "theorem",
"q1a_lean": "`|t| • b < |s| → ∃ y ∈ t, b < |{x ∈ s | f x = y}|`",
"q1b_latex": "$|t| \\cdot b < |s| \\Rightarrow \\exists y \\in t,\\ b < |\\{x \\in s : f(x) = y\\}|$",
"q1c_natural": "if more than $b \\cdot |t|$ elements of $s$ map into $t$, some fiber has more than $b$ elements",
"q2_slogan": "more pigeons than holes×threshold ⇒ some hole exceeds threshold",
"q3_nickname": "pigeonhole principle (fiber form)",
"q4_special_case": "distributing 11 balls into 3 boxes gives some box with at least 4 balls"
},
{
"id": "Cb8",
"full_name": "instFintypeSimpleGraphOfDecidableEq",
"file": "Mathlib/Combinatorics/SimpleGraph/Basic.lean:114",
"difficulty": "Hard",
"kind": "instance",
"q1a_lean": "`[Fintype V] [DecidableEq V] : Fintype (SimpleGraph V)`",
"q1b_latex": "$V$ finite with decidable equality $\\Rightarrow$ $\\mathrm{SimpleGraph}\\,V$ is finite",
"q1c_natural": "when V is finite with decidable equality, the type of simple graphs on V is finite",
"q2_slogan": "simple graphs on a finite vertex set are finite",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "Cp1",
"full_name": "DFA",
"file": "Mathlib/Computability/DFA.lean:58",
"difficulty": "Easy",
"kind": "structure",
"q1a_lean": "`step : σ → α → σ`, `start : σ`, `accept : Set σ`",
"q1b_latex": "$(Q, \\Sigma, \\delta, q_0, F)$",
"q1c_natural": "a finite-state automaton with deterministic transition, start state, and accept set",
"q2_slogan": "deterministic finite automaton",
"q3_nickname": "DFA (deterministic finite automaton)",
"q4_special_case": ""
},
{
"id": "Cp2",
"full_name": "RegularExpression",
"file": "Mathlib/Computability/RegularExpressions.lean:47",
"difficulty": "Easy",
"kind": "inductive",
"q1a_lean": "6 constructors: `zero`, `epsilon`, `char`, `plus`, `comp`, `star`",
"q1b_latex": "$0,\\ \\varepsilon,\\ a,\\ r+s,\\ r\\cdot s,\\ r^*$",
"q1c_natural": "term language built from zero, epsilon, character, sum, concat, and Kleene star",
"q2_slogan": "term language for regular languages",
"q3_nickname": "regular expression",
"q4_special_case": ""
},
{
"id": "Cp3",
"full_name": "Nat.Partrec.Code",
"file": "Mathlib/Computability/PartrecCode.lean:76",
"difficulty": "Hard",
"kind": "inductive",
"q1a_lean": "8 constructors `zero, succ, left, right, pair, comp, prec, rfind'`",
"q1b_latex": "inductive Gödel codes for partial recursive functions on $\\mathbb{N}$",
"q1c_natural": "inductive codes parameterizing all partial recursive functions on naturals",
"q2_slogan": "Gödel codes for partial recursive functions",
"q3_nickname": "Gödel numbering of partial recursive functions",
"q4_special_case": ""
},
{
"id": "Cp4",
"full_name": "Nat.RecursiveIn",
"file": "Mathlib/Computability/RecursiveIn.lean:42",
"difficulty": "Hard",
"kind": "inductive",
"q1a_lean": "oracle-relativized partial recursive functions, with `oracle (g : ℕ →. ℕ) : g ∈ O → RecursiveIn O g`",
"q1b_latex": "inductive type for $f$ recursive in oracle $O$",
"q1c_natural": "inductive predicate for partial functions computable using a given oracle",
"q2_slogan": "partial recursive with access to an oracle",
"q3_nickname": "oracle computability",
"q4_special_case": ""
},
{
"id": "Cp5",
"full_name": "DFA.evalFrom_append_singleton",
"file": "Mathlib/Computability/DFA.lean:91",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`M.evalFrom s (x ++ [a]) = M.step (M.evalFrom s x) a`",
"q1b_latex": "$\\mathrm{eval}_s(x \\cdot a) = \\delta(\\mathrm{eval}_s(x), a)$",
"q1c_natural": "appending one symbol to a DFA run takes one extra transition",
"q2_slogan": "DFA appending one symbol = one transition step",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "Cp6",
"full_name": "DFA.mem_acceptsFrom",
"file": "Mathlib/Computability/DFA.lean:120",
"difficulty": "Easy",
"kind": "theorem",
"q1a_lean": "`x ∈ M.acceptsFrom s ↔ M.evalFrom s x ∈ M.accept`",
"q1b_latex": "$x \\in \\mathrm{acceptsFrom}(s) \\iff \\mathrm{eval}_s(x) \\in F$",
"q1c_natural": "a string is accepted iff its run ends in an accepting state",
"q2_slogan": "DFA acceptance = ending in an accept state",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "Cp7",
"full_name": "Nat.Partrec.Code.computable_recOn",
"file": "Mathlib/Computability/PartrecCode.lean:366",
"difficulty": "Hard",
"kind": "theorem",
"q1a_lean": "`Computable (fun a => Code.recOn (c a) ...)` given each branch is computable",
"q1b_latex": "structural recursion on partial recursive codes is itself computable",
"q1c_natural": "recursing on a Code with computable branches yields a computable function",
"q2_slogan": "recursion on Code is a computable operation",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "Cp8",
"full_name": "Primcodable.list",
"file": "Mathlib/Computability/Primrec/List.lean",
"difficulty": "Hard",
"kind": "instance",
"q1a_lean": "`[Primcodable α] : Primcodable (List α)`",
"q1b_latex": "$\\alpha$ Primcodable $\\Rightarrow$ $\\mathrm{List}\\,\\alpha$ Primcodable",
"q1c_natural": "lists over a Primcodable base type are themselves Primcodable",
"q2_slogan": "List preserves Primcodable",
"q3_nickname": "",
"q4_special_case": ""
},
{
"id": "Cd1",
"full_name": "Condensed",
"file": "Mathlib/Condensed/Basic.lean:45",
"difficulty": "Easy",
"kind": "def",
"q1a_lean": "`Sheaf (coherentTopology CompHaus) C`",
"q1b_latex": "$\\mathrm{Sheaf}(\\mathrm{CompHaus},\\,J_{\\mathrm{coh}};\\,C)$",
"q1c_natural": "sheaves on the coherent site of compact Hausdorff spaces valued in a category",
"q2_slogan": "sheaves on the coherent CompHaus site",
"q3_nickname": "condensed object",
"q4_special_case": ""
},
{
"id": "Cd2",
"full_name": "CondensedSet",
"file": "Mathlib/Condensed/Basic.lean:55",
"difficulty": "Easy",
"kind": "def",
"q1a_lean": "`Condensed.{u} (Type (u+1))`",
"q1b_latex": "$\\mathrm{Condensed}(\\mathbf{Set})$",
"q1c_natural": "condensed objects valued in sets",
"q2_slogan": "condensed sets = condensed objects in Set",
"q3_nickname": "condensed set",
"q4_special_case": ""
},
{
"id": "Cd3",
"full_name": "CondensedMod.IsSolid",
"file": "Mathlib/Condensed/Solid.lean:84",
"difficulty": "Hard",
"kind": "class",
"q1a_lean": "a condensed module `A` such that `IsIso ((yoneda.obj A).map (profiniteSolidification ...).op)`",
"q1b_latex": "condensed $R$-module $A$ on which the solidification map induces a Yoneda iso",
"q1c_natural": "a condensed module fixed (up to Yoneda iso) by the solidification functor",
"q2_slogan": "solid = solidification map is a Yoneda iso",
"q3_nickname": "solid module",
"q4_special_case": ""
},
{
"id": "Cd4",
"full_name": "Condensed.profiniteSolid",
"file": "Mathlib/Condensed/Solid.lean:49",
"difficulty": "Hard",
"kind": "def",
"q1a_lean": "`Profinite ⥤ CondensedMod R` sending `S` to `R[S]^solid`",
"q1b_latex": "$S \\mapsto R[S]^{\\mathrm{solid}}$ as a functor $\\mathrm{Profinite} \\to \\mathrm{CondensedMod}\\,R$",
"q1c_natural": "the functor sending a profinite set to its solid free R-module",
"q2_slogan": "profinite-to-solid free module functor",
"q3_nickname": "profinite solidification",
"q4_special_case": ""
},
{
"id": "Cd5",
"full_name": "Condensed.hasExactColimitsOfShape",
"file": "Mathlib/Condensed/AB.lean:37",
"difficulty": "Easy",
"kind": "lemma",
"q1a_lean": "`HasExactColimitsOfShape J (Condensed A)` given exactness on coefficients",
"q1b_latex": "$J$-shaped colimits in $\\mathrm{Condensed}\\,A$ exist and are exact when colimits in $A$ are",
"q1c_natural": "filtered colimits in the condensed category exist and remain exact",
"q2_slogan": "condensed inherits exact colimits from coefficient category",
"q3_nickname": "AB5 for condensed",