[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
[mizar] Weak types
Michael Nedzelsky wrote:
reserve x for SomePossibleEmptyType;
(*) (forall x holds P(X)) implies (ex x st P(x))
Obviously, this is not true in empty domain. Hence, if empty types will be
allowed, the rules of the game must be more complicated. Or I am missing
something here?
Let us try to prove it :-)
(for x holds P(x)) implies ex x st P(x)
proof
assume
Z: for x holds P(x);
take a;
thus P(a) by Z;
end;
So, to complete proof we need at least one term 'a' with the type
'SomePossibleEmptyType'. We cannot of course introduce 'a' by a Choice
Statement (Josef was once laughing on me, that I need nonemptiness of
types to be able to write 'consider a;'). But it is much more: we cannot
allow for a ground term, even in a relaxed meaning - with local
constants in it - with the type 'SomePossibleEmptyType'. Am I wrong?
So, what is that we need weak types for?
Greetings,
Andrzej