X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Flib%2Fhints_declaration.ma;fp=matita%2Fmatita%2Flib%2Fhints_declaration.ma;h=7dd0800d75b49b36cd151da0adbfa54d8bcc2ac8;hb=37905ef451d98f0c857d62876fdbe12f0ee8ccaf;hp=d04f453f2adad0ffa376932aaf26ccbd42ba15bc;hpb=2e06442aacce4c9c9ebbb5977fafebf8231cfc2a;p=helm.git diff --git a/matita/matita/lib/hints_declaration.ma b/matita/matita/lib/hints_declaration.ma index d04f453f2..7dd0800d7 100644 --- a/matita/matita/lib/hints_declaration.ma +++ b/matita/matita/lib/hints_declaration.ma @@ -56,6 +56,23 @@ notation > "≔ (list0 ( (list1 (ident x) sep , ) opt (: T) ) sep ,) opt (; (lis } }}. +(* it seems unbelivable, but it works! *) +notation > "≔ (list0 ( (list1 (ident x) sep , ) opt (: T) ) sep ,) opt (; (list1 (ident U ≟ term 19 V ) sep ,)) ⊢ term 19 Px ≡≡ term 19 Py" + with precedence 90 + for @{ ${ fold right + @{ ${ default + @{ ${ fold right + @{ 'hint_decl2 $Px $Py } + rec acc1 @{ let ( ${ident U} : ?) ≝ $V in $acc1} } } + @{ 'hint_decl2 $Px $Py } + } + } + rec acc @{ + ${ fold right @{ $acc } rec acc2 + @{ ∀${ident x}:${ default @{ $T } @{ ? } }.$acc2 } } + } + }}. + include "basics/pts.ma". definition hint_declaration_Type0 ≝ λA:Type[0] .λa,b:A.Prop. @@ -65,8 +82,8 @@ definition hint_declaration_CProp0 ≝ λA:CProp[0].λa,b:A.Prop. definition hint_declaration_CProp1 ≝ λA:CProp[1].λa,b:A.Prop. definition hint_declaration_CProp2 ≝ λa,b:CProp[2].Prop. -interpretation "hint_decl_Type2" 'hint_decl a b = (hint_declaration_Type2 a b). -interpretation "hint_decl_CProp2" 'hint_decl a b = (hint_declaration_CProp2 a b). +interpretation "hint_decl_Type2" 'hint_decl2 a b = (hint_declaration_Type2 a b). +interpretation "hint_decl_CProp2" 'hint_decl2 a b = (hint_declaration_CProp2 a b). interpretation "hint_decl_Type1" 'hint_decl a b = (hint_declaration_Type1 ? a b). interpretation "hint_decl_CProp1" 'hint_decl a b = (hint_declaration_CProp1 ? a b). interpretation "hint_decl_CProp0" 'hint_decl a b = (hint_declaration_CProp0 ? a b). @@ -104,4 +121,4 @@ unification hint 0 ≔ R : setoid; (* ---------------------------------------- *) ⊢ setoid ≡ target1 ? MR sol. -*) \ No newline at end of file +*)