Я пытаюсь доказать: (forall x, a -> b) /\ (exists x, a) -> (exists x, b)
.Доказательство (forall x, a -> b)/ (существует x, a) -> (существует x, b)
Я знаю, как доказать это, учитывая более прощающий набор аксиом и правил деривации, но то, что у меня есть, является немного ограничивающим.
Мои доступные правила вывода включают МОДУС-поненс: a, a->b |- b
и обобщение: a(x) |- forall(x, a(x))
включают также стандартные правила замещения.
Мои аксиомы:
1) Любая тавтология в условной логике с 3 булевыми переменными или меньше.
(Предположим, что стандартные определения для булевых операций: ~,/\, V, ->, < ->).
2) (forall x, a(x)) -> a(t)
(где Т 'замещаемая' для й в)
3) forall(x, a -> b) -> ((forall x, a) -> (forall x, b))
4) a -> (forall x, a)
(если й не свободны в)
5) forall(x, a) <--> ~exists(x, ~a)
Некоторых современных теорем у меня уже производном, которые могут быть полезны:
(forall x, a /\ b) <--> (forall x, a) /\ (forall x, b)
(forall x, a) -> (exists x, b)
Моя система вывод не имеет возможность временно ввести предположения, что не доказаны, как вы могли бы ожидать в системе естественного вычета.