book/TPiL/TypeClasses.lean

GitHub source file

148 declarations, 0 contain sorry, 0 declared as axioms

Imports (2)
  1. structure Ex.Add line 23 source

    Source comment

    ----

    Distinct definitions of this name: examples/Examples/InteractExample3g3kno8ekkpr.lean:2 (different declaration text), examples/Examples/InteractExamplextkkn9qu4li2b.lean:2 (same statement text; different proof or body). Qualify references as Ex.Add@path.

    structure Add (α : Type) where
    …

    Mentions: α

  2. structure Ex.Add line 35 source

    Distinct definitions of this name: examples/Examples/InteractExample3g3kno8ekkpr.lean:2 (different declaration text), examples/Examples/InteractExamplextkkn9qu4li2b.lean:2 (same declaration text). Qualify references as Ex.Add@path.

  3. def Ex.double line 37 source

    Distinct definitions of this name: examples/Examples/InteractExamplextkkn9qu4li2b.lean:4 (same statement text; different proof or body). Qualify references as Ex.double@path.

  4. structure Ex.Ex.Add line 50 source
  5. def Ex.Ex.double line 53 source

    Source comment

    ----
    def double (s : Add α) (x : α) : α :=
    …

    Mentions: Ex.Ex.s, Ex.Ex.Add, α, x

  6. class Ex.Ex.Add line 82 source

    Source comment

    ----
    class Add (α : Type) where
    …

    Mentions: α

  7. class Ex.Ex.Add line 98 source
  8. instance Ex.Ex.(instance at line 101) line 101 source

    Source comment

    ----
    instance : Add Nat where
    …

    Mentions: Ex.Ex.Add

  9. instance Ex.Ex.(instance at line 104) line 104 source
  10. instance Ex.Ex.(instance at line 107) line 107 source
  11. class Ex.Ex.Add line 117 source
  12. instance Ex.Ex.(instance at line 120) line 120 source

    Source comment

    ----
    instance : Add Nat where
    …

    Mentions: Ex.Ex.Add

  13. instance Ex.Ex.(instance at line 123) line 123 source
  14. instance Ex.Ex.(instance at line 126) line 126 source
  15. class Ex.Ex.Ex.Add line 138 source
  16. instance Ex.Ex.Ex.(instance at line 140) line 140 source
  17. instance Ex.Ex.Ex.(instance at line 142) line 142 source
  18. instance Ex.Ex.Ex.(instance at line 144) line 144 source
  19. def Ex.Ex.Ex.double line 147 source

    Source comment

    ----
    def double [Add α] (x : α) : α :=
    …

    Mentions: Ex.Ex.Ex.Add, α, x

  20. instance Ex.Ex.(instance at line 171) line 171 source
  21. def Ex.Ex.head line 185 source
  22. class Ex.Ex.Ex.Inhabited line 205 source

    Source comment

    ----
    class Inhabited (α : Type u) where
    …

    Mentions: α

  23. class Ex.Ex.Ex.Inhabited line 222 source
  24. instance Ex.Ex.Ex.(instance at line 225) line 225 source

    Source comment

    ----
    instance : Inhabited Bool where
    …

    Mentions: Ex.Ex.Ex.Inhabited

  25. instance Ex.Ex.Ex.(instance at line 228) line 228 source
  26. instance Ex.Ex.Ex.(instance at line 231) line 231 source
  27. instance Ex.Ex.Ex.(instance at line 234) line 234 source
  28. class Ex.Ex.Ex.Inhabited line 248 source
  29. instance Ex.Ex.Ex.(instance at line 250) line 250 source
  30. instance Ex.Ex.Ex.(instance at line 252) line 252 source
  31. instance Ex.Ex.Ex.(instance at line 254) line 254 source
  32. instance Ex.Ex.Ex.(instance at line 256) line 256 source
  33. instance Ex.Ex.(instance at line 283) line 283 source
  34. class Ex.Ex.Ex.Inhabited line 292 source
  35. instance Ex.Ex.Ex.(instance at line 294) line 294 source
  36. instance Ex.Ex.Ex.(instance at line 296) line 296 source
  37. opaque Ex.Ex.Ex.default line 298 source
  38. instance Ex.Ex.Ex.(instance at line 301) line 301 source

    Source comment

    ----
    instance [Inhabited α] [Inhabited β] : Inhabited (α × β) where
    …

    Mentions: Ex.Ex.Ex.Inhabited, α, β

  39. instance Ex.Ex.(instance at line 312) line 312 source
  40. def Ex.Ex.foo line 330 source
  41. theorem Ex.Ex.ex line 333 source
  42. structure Ex.Ex.Person line 359 source
  43. instance Ex.Ex.(instance at line 363) line 363 source
  44. structure Ex.Ex.Rational line 381 source
  45. instance Ex.Ex.(instance at line 386) line 386 source
  46. instance Ex.Ex.(instance at line 389) line 389 source
  47. structure Ex.Ex.Rational line 401 source
  48. instance Ex.Ex.(instance at line 406) line 406 source
  49. instance Ex.Ex.(instance at line 409) line 409 source
  50. class Ex.Ex.Monoid line 429 source
  51. instance Ex.Ex.(instance at line 433) line 433 source
  52. def Ex.Ex.getUnit line 436 source
  53. class Ex.Ex.Ex.HMul line 474 source

    Source comment

    ----
    class HMul (α : Type u) (β : Type v) (γ : outParam (Type w)) where
    …

    Mentions: α, β

  54. instance Ex.Ex.Ex.(instance at line 479) line 479 source
  55. instance Ex.Ex.Ex.(instance at line 482) line 482 source
  56. class Ex.Ex.Ex.HMul line 502 source

    Source comment

    ----
    class HMul (α : Type u) (β : Type v) (γ : outParam (Type w)) where
    …

    Mentions: α, β

  57. instance Ex.Ex.Ex.(instance at line 507) line 507 source
  58. instance Ex.Ex.Ex.(instance at line 510) line 510 source
  59. instance Ex.Ex.Ex.(instance at line 513) line 513 source
  60. class Ex.Ex.Ex.HMul line 555 source

    Source comment

    ----
    class HMul (α : Type u) (β : Type v) (γ : outParam (Type w)) where
    …

    Mentions: α, β

  61. instance Ex.Ex.Ex.(instance at line 560) line 560 source
  62. def Ex.Ex.Ex.xs line 563 source
  63. class Ex.Ex.Ex.HMul line 586 source

    Source comment

    ----
    class HMul (α : Type u) (β : Type v) (γ : outParam (Type w)) where
    …

    Mentions: α, β

  64. instance Ex.Ex.Ex.(instance at line 592) line 592 source
  65. def Ex.Ex.Ex.xs line 595 source
  66. structure Ex.Ex.Rational line 616 source
  67. instance Ex.Ex.(instance at line 622) line 622 source
  68. instance Ex.Ex.(instance at line 625) line 625 source
  69. class Ex.Ex.Ex.OfNat line 645 source

    Source comment

    ----
    class OfNat (α : Type u) (n : Nat) where
    …

    Mentions: α, n

  70. instance Ex.Ex.Ex.(instance at line 649) line 649 source
  71. class Ex.Ex.Ex.HMul line 652 source
  72. class Ex.Ex.Ex.Mul line 655 source
  73. instance Ex.Ex.Ex.(instance at line 659) line 659 source
  74. structure Ex.Ex.Point line 680 source
  75. def Ex.Ex.double line 689 source
  76. def Ex.Ex.triple line 701 source
  77. structure Ex.Ex.Point line 710 source
  78. instance Ex.Ex.addPoint line 714 source
  79. def Ex.Ex.double line 717 source
  80. def Ex.Ex.triple line 729 source
  81. structure Ex.Ex.Point line 744 source
  82. def Ex.Ex.Point.double line 753 source
  83. structure Ex.Ex.Point line 782 source
  84. def Ex.Ex.Point.double line 791 source
  85. class inductive Ex.Ex.Hidden.Decidable line 830 source

    Source comment

    ----
    class inductive Decidable (p : Prop) where
    …
  86. example Ex.Ex.(example at line 845) line 845 source
  87. def Ex.Ex.Hidden.ite line 852 source

    Source comment

    ----
    def ite {α : Sort u}
        (c : Prop) [h : Decidable c]
        (t e : α) : α :=
    …

    Mentions: α, Ex.Ex.Hidden.Decidable, t

  88. def Ex.Ex.Hidden.dite line 868 source

    Source comment

    ----
    def dite {α : Sort u}
        (c : Prop) [h : Decidable c]
        (t : c → α) (e : Not c → α) : α :=
    …

    Mentions: α, Ex.Ex.Hidden.Decidable, t

  89. example Ex.Ex.(example at line 882) line 882 source
  90. def Ex.Ex.step line 909 source
  91. instance Ex.Ex.of line 922 source
  92. instance Ex.Ex.Hidden.(instance at line 948) line 948 source
  93. example Ex.Ex.(example at line 967) line 967 source
  94. example Ex.Ex.(example at line 970) line 970 source
  95. example Ex.Ex.(example at line 973) line 973 source
  96. theorem Ex.Ex.ex line 976 source
  97. def Ex.Ex.foo line 1012 source
  98. def Ex.Ex.bar line 1013 source
  99. def Ex.Ex.Set line 1038 source
  100. example Ex.Ex.(example at line 1047) line 1047 source
  101. instance Ex.Ex.(instance at line 1050) line 1050 source
  102. class Ex.Ex.Foo line 1100 source
  103. instance Ex.Ex.(instance at line 1104) line 1104 source
  104. instance Ex.Ex.i2 line 1108 source
  105. example Ex.Ex.(example at line 1112) line 1112 source
  106. instance Ex.Ex.(instance at line 1115) line 1115 source
  107. example Ex.Ex.(example at line 1119) line 1119 source
  108. def Ex.Ex.Set line 1131 source
  109. instance Ex.Ex.(instance at line 1154) line 1154 source
  110. def Ex.Ex.Set line 1171 source
  111. def Ex.Ex.Set.empty line 1172 source
  112. def Ex.Ex.Set.mem line 1173 source
  113. def Ex.Ex.Set.singleton line 1174 source
  114. def Ex.Ex.Set.union line 1175 source
  115. def Ex.Ex.List.toSet line 1179 source

    Source comment

    ----
    def List.toSet : List α → Set α
      | []    => Set.empty
      | a::as => {a} ∪ as.toSet

    Mentions: α, Ex.Ex.Set, Ex.Ex.Set.empty, as

  116. instance Ex.Ex.(instance at line 1183) line 1183 source
  117. def Ex.Ex.s line 1186 source
  118. def Ex.Ex.Set line 1195 source
  119. def Ex.Ex.Set.empty line 1196 source
  120. def Ex.Ex.Set.mem line 1197 source
  121. def Ex.Ex.Set.singleton line 1198 source
  122. def Ex.Ex.Set.union line 1199 source
  123. def Ex.Ex.List.toSet line 1202 source
  124. instance Ex.Ex.(instance at line 1205) line 1205 source
  125. def Ex.Ex.s line 1208 source

    Source comment

    ----
    def s : Set Nat := {1}
    …

    Mentions: Ex.Ex.Set

  126. instance Ex.Ex.(instance at line 1219) line 1219 source
  127. structure Ex.Ex.Semigroup line 1234 source
  128. instance Ex.Ex.(instance at line 1239) line 1239 source
  129. structure Ex.Ex.Semigroup line 1246 source
  130. instance Ex.Ex.(instance at line 1251) line 1251 source
  131. instance Ex.Ex.(instance at line 1256) line 1256 source
  132. structure Ex.Ex.Semigroup line 1263 source
  133. instance Ex.Ex.(instance at line 1267) line 1267 source
  134. structure Ex.Ex.Semigroup line 1276 source
  135. instance Ex.Ex.(instance at line 1280) line 1280 source
  136. instance Ex.Ex.(instance at line 1283) line 1283 source

    Source comment

    ----
    instance : CoeSort Semigroup (Type u) where
    …

    Mentions: Ex.Ex.Semigroup

  137. example Ex.Ex.(example at line 1286) line 1286 source
  138. structure Ex.Ex.Semigroup line 1311 source
  139. instance Ex.Ex.(instance at line 1315) line 1315 source
  140. instance Ex.Ex.(instance at line 1317) line 1317 source
  141. structure Ex.Ex.Morphism line 1320 source

    Source comment

    ----
    structure Morphism (S1 S2 : Semigroup) where
    …

    Mentions: Ex.Ex.Semigroup

  142. structure Ex.Ex.Semigroup line 1332 source
  143. instance Ex.Ex.(instance at line 1336) line 1336 source
  144. instance Ex.Ex.(instance at line 1338) line 1338 source
  145. structure Ex.Ex.Morphism line 1340 source
  146. instance Ex.Ex.(instance at line 1344) line 1344 source

    Source comment

    ----
    instance (S1 S2 : Semigroup) :
        CoeFun (Morphism S1 S2) (fun _ => S1 → S2) where
    …

    Mentions: Ex.Ex.Semigroup, Ex.Ex.Morphism

  147. theorem Ex.Ex.resp_mul line 1348 source
  148. example Ex.Ex.(example at line 1352) line 1352 source