X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fmatita%2Fcontribs%2Fdama%2Fdama%2Fsequence.ma;h=d3acf437ff68684cc089044582fd29c1ad81800e;hb=59f65aaf6f8d23748e1294ecabffffaa903ae657;hp=3bcb691a5119c9af37a776eacdee8b88939cd561;hpb=a39198af1a517ae1fd7fd5f439b7e7775a25979c;p=helm.git diff --git a/helm/software/matita/contribs/dama/dama/sequence.ma b/helm/software/matita/contribs/dama/dama/sequence.ma index 3bcb691a5..d3acf437f 100644 --- a/helm/software/matita/contribs/dama/dama/sequence.ma +++ b/helm/software/matita/contribs/dama/dama/sequence.ma @@ -14,8 +14,25 @@ include "nat/nat.ma". -definition sequence := λO:Type.nat → O. +inductive sequence (O:Type) : Type ≝ + | mk_seq : (nat → O) → sequence O. -definition fun_of_sequence: ∀O:Type.sequence O → nat → O ≝ λO.λx:sequence O.x. +definition fun_of_seq: ∀O:Type.sequence O → nat → O ≝ + λO.λx:sequence O.match x with [ mk_seq f ⇒ f ]. -coercion cic:/matita/dama/sequence/fun_of_sequence.con 1. +coercion cic:/matita/dama/sequence/fun_of_seq.con 1. + +notation < "hvbox((\lfloor term 19 p \rfloor) \sub ident i)" with precedence 90 +for @{ 'sequence (\lambda ${ident i} : $t . $p)}. + +notation > "hvbox((\lfloor term 19 p \rfloor) \sub ident i)" with precedence 90 +for @{ 'sequence (\lambda ${ident i} . $p)}. + +notation > "hvbox(\lfloor ident i, term 19 p \rfloor)" with precedence 90 +for @{ 'sequence (\lambda ${ident i} . $p)}. + +notation "a \sub i" left associative with precedence 70 + for @{ 'sequence_appl $a $i }. + +interpretation "sequence" 'sequence \eta.x = (mk_seq _ x). +interpretation "sequence element" 'sequence_appl s i = (fun_of_seq _ s i).