\lambda n:nat. \lambda H:n=n.\lambda g:(?\to (le n 0))\to True.(g \lambda f.(f n H)) ###### INTERPRETATION NUMBER 1 ###### ### (* disambiguation environment *) alias id True = cic:/Coq/Init/Logic/True.ind#1/1 alias id le = cic:/Coq/Init/Peano/le.ind#1/1 alias id nat = cic:/Coq/Init/Datatypes/nat.ind#1/1 alias num (instance 0) = "natural number" alias symbol "eq" (instance 0) = "leibnitz's equality" ### (* METASENV after disambiguation *) ### (* TERM after disambiguation *) [n:nat][H:(eq nat n n)][g:(((x:nat)((eq nat x x)->(le x O))->(le n O))->True)](g [f:(x:nat)((eq nat x x)->(le x O))](f n H)) ### (* TYPE_OF the disambiguated term *) (n:nat)(H:(eq nat n n))(g:(((x:nat)((eq nat x x)->(le x O))->(le n O))->True))True ### (* REDUCED disambiguated term *) [n:nat][H:(eq nat n n)][g:(((x:nat)((eq nat x x)->(le x O))->(le n O))->True)](g [f:(x:nat)((eq nat x x)->(le x O))](f n H))