Commit 4933fa76 by Ralf Jung

### also provide a composition for the function space

parent cee2597b
 ... @@ -104,13 +104,22 @@ Proof. ... @@ -104,13 +104,22 @@ Proof. rewrite IH. done. rewrite IH. done. Qed. Qed. (** We can define the identity function of the [-t>] function space. *) (** We can define the identity function and composition of the [-t>] function space. *) Definition tele_id {TT : tele} : TT -t> TT := tele_bind id. Definition tele_id {TT : tele} : TT -t> TT := tele_bind id. Lemma tele_id_eq {TT : tele} (x : TT) : Lemma tele_id_eq {TT : tele} (x : TT) : tele_id x = x. tele_id x = x. Proof. unfold tele_id. rewrite tele_app_bind. done. Qed. Proof. unfold tele_id. rewrite tele_app_bind. done. Qed. Definition tele_compose {TT1 TT2 TT3 : tele} : (TT2 -t> TT3) → (TT1 -t> TT2) → (TT1 -t> TT3) := λ t1 t2, tele_bind (compose (tele_app t1) (tele_app t2)). Lemma tele_compose_eq {TT1 TT2 TT3 : tele} (f : TT2 -t> TT3) (g : TT1 -t> TT2) x : tele_compose f g \$ x = (f ∘ g) x. Proof. unfold tele_compose. rewrite tele_app_bind. done. Qed. (** Notation *) (** Notation *) Notation "'[tele' x .. z ]" := Notation "'[tele' x .. z ]" := (TeleS (fun x => .. (TeleS (fun z => TeleO)) ..)) (TeleS (fun x => .. (TeleS (fun z => TeleO)) ..)) ... ...
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!