const ordinal : set prop const In : set set prop term iIn = In infix iIn 2000 2000 axiom ordinal_Hered: !x:set.ordinal x -> !y:set.y iIn x -> ordinal y const SetAdjoin : set set set const Sing : set set const ordsucc : set set const Empty : set axiom tagged_eqE_eq: !x:set.!y:set.ordinal x -> ordinal y -> SetAdjoin x (Sing (ordsucc Empty)) = SetAdjoin y (Sing (ordsucc Empty)) -> x = y const Repl : set (set set) set axiom ReplE_impred: !x:set.!f:set set.!y:set.y iIn Repl x f -> !P:prop.(!z:set.z iIn x -> y = f z -> P) -> P lemma !x:set.!y:set.!z:set.ordinal x -> ordinal y -> z iIn x -> SetAdjoin y (Sing (ordsucc Empty)) = SetAdjoin z (Sing (ordsucc Empty)) -> y = z -> y iIn x claim !x:set.!y:set.ordinal x -> ordinal y -> SetAdjoin y (Sing (ordsucc Empty)) iIn Repl x (\z:set.SetAdjoin z (Sing (ordsucc Empty))) -> y iIn x