To naprawdę idzie bardzo głęboko. Dziwne, że Wikipedia nigdy o tym nie wspomina.
To, czego szukasz, to bardzo twarde dowody, które prawdopodobnie można uzyskać za pomocą takich rzeczy, jak dowody Fitch . Więc staramy się odjąć rzeczy z naszych danych. Istnieje wiele konstruktorów Fitch, którzy wykonują dla ciebie dużo pracy. Ale niektóre ćwiczenia nie mają tego udowodnić.
Nie wiem, czy użytkownik powinien wykonać obliczenia. Jeśli tak, pamiętaj o takich rzeczach jak 3SAT , które są nierozwiązywalnym problemem dla czasu wielomianowego.
Jeśli chodzi o struktury danych, których chcesz użyć, myślę, że chcesz mieć jakąś Rule
klasę. Reguła może być dowolna, w zależności od typu. W logice predykatów nie ma wielu reguł , więc można to obejść przez dziedziczenie (if, iff i, lub, nie ...). Zasady te należy jedynie ocenić. Jedyne, co może zrobić reguła, to zwrócenie wartości prawda lub fałsz. Ponieważ to właśnie robisz z logiką predykatów. Na uniwersytecie John Kelly polecił mi przeczytać tę książkę .
Wracając do zajęć: Powinieneś zobaczyć te problemy tak, jakbyś widział wdrożenie normalnych obliczeń za pomocą matematyki. Co to jest +
operator? Zawiera dwa parametry, które mogą być nowym równaniem lub tylko liczbą. Myślę, że masz to samo z Regułami. Mogą mieć nowe reguły jako parametr lub po prostu wartość logiczną (tzw. Predykat).
Mam nadzieję, że to ci bardzo pomaga, zwłaszcza referencje. Jeśli chcesz dowiedzieć się więcej lub pójdę w złym kierunku, powiedz mi.