File: bug_20224.v

package info (click to toggle)
coq 9.1.0%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 35,964 kB
  • sloc: ml: 239,908; sh: 4,355; python: 2,985; ansic: 2,644; makefile: 874; lisp: 171; javascript: 63; xml: 24; sed: 2
file content (15 lines) | stat: -rw-r--r-- 692 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

Notation "g 'o' f" := ((fun g0 f0 x => g0 (f0 x)) g f) (at level 40, left associativity) : function_scope.

Polymorphic Definition eq_sym {A} {x y : A} (p:x = y) : y = x := match p with eq_refl => eq_refl end.

Polymorphic Definition transport {A : Type} (P : A -> Type) {x y : A} (p : x = y) (u : P x) : P y
  := match p with eq_refl => u end.

Polymorphic Definition transport_arrow'@{a b | } {A : Type@{a}} {B:A->Type@{b}} {C : A -> Type@{b}}
  {x1 x2 : A} (p : x1 = x2) (f : B x1 -> C x1)
  : transport (fun x => B x -> C x) p f = transport _ p o f o transport _ (eq_sym p).
Proof.
  destruct p; auto.
Defined.
(* Universe constraints are not implied by the ones declared: b <= eq.u0 *)