Monadyczna logika drugiego rzędu dla manekinów

14

Jestem programistą z automatami, ale nie logiką.

Przeczytałem w artykułach, że te dwa są ze sobą ściśle powiązane. Deterministyczne automaty skończone (DFA), automaty drzewa i automaty z widocznym przesunięciem w dół są powiązane z logiką Monadic drugiego rzędu (MSO). Chociaż rozumiem automaty i ludzie (w dokumentach) próbowali mi wyjaśnić związek z MSO, zawsze zakładają silne zaplecze logiczne i zrozumienie MSO.

Kiedy patrzę na książki i kursy z logiki, przeważnie obsługują one tylko logikę pierwszego rzędu, która wydaje się dość prosta i składa się tylko z kilku pojęć: zmienne, lub, nie, sugeruje, dla wszystkich, istnieje itp.

Czy ktoś może mi wyjaśnić lub wskazać mi zasób, który może wyjaśnić:

  1. Czym jest logika drugiego rzędu w przeciwieństwie do logiki pierwszego rzędu?
  2. Czym jest logika monadyczna a nie monadyczna?
  3. Dlaczego ważne jest, aby logika drugiego rzędu była monadyczna, aby można było o niej zadecydować LUB dlaczego to niewłaściwe pytanie?
  4. Dlaczego rozstrzygająca jest logika monadyczna drugiego rzędu?
  5. Relacja z przynajmniej DFA?

Jeśli jest to zasób, fajnie byłoby założyć, że jestem programistą, a nie logikiem. Oznacza to, że chciałbym zrozumieć, jak zaimplementuję go jako kod, ponieważ do tego czasu matematyka wydaje mi się magią;)

Dziękuję za wszelką pomoc, którą możesz mi udzielić. Byłbym bardzo wdzięczny.

Walter Schulze
źródło
M[...M(x,y)...]

Odpowiedzi:

11
  1. Czym jest logika drugiego rzędu w przeciwieństwie do logiki pierwszego rzędu?
  2. Czym jest logika monadyczna a nie monadyczna?

x

RGB[x(xRxGxB)¬x((xRxG)(xGxB)(xBxR))xy(E(x,y)¬((xRyR)(xGyG)(xByB)))].

Innymi słowy, istnieją takie kolory czerwony, zielony i niebieski, że

  • każdy wierzchołek ma kolor
  • i żaden wierzchołek nie ma dwóch kolorów
  • a jeśli między dwoma wierzchołkami znajduje się krawędź, te dwa wierzchołki nie mają tego samego koloru.

kkk=11

  1. Dlaczego ważne jest, aby logika drugiego rzędu była monadyczna, aby można było o niej zadecydować LUB dlaczego to niewłaściwe pytanie?

  2. Dlaczego rozstrzygająca jest logika monadyczna drugiego rzędu?

Szczerze mówiąc, nie pamiętam problemów rozstrzygalności. Kluczową kwestią jest to, że pełna logika drugiego rzędu pozwala określić ilościowo istnienie liniowego rzędu domeny

Rxyz[(R(x,y)R(y,x))((R(x,y)R(y,x))x=y)((R(x,y)R(y,z))R(x,z))].

DDnnDnn

(Myślę, że jeśli twoja domena jest nieskończona, prawdopodobnie musisz dodatkowo określić, że porządek liniowy jest dyskretny i ma minimalny element; wtedy wiesz, że ma on początkowy segment, który jest izomorficzny do liczb naturalnych, i że powinno to być dość.)

R1RkφRiφ

  1. Relacja z przynajmniej DFA?

ΣRaaΣRa

kQ1,,QkQii

  • jQ1,,Qk
  • Q1
  • jQi(j+1)
  • ostateczna pozycja jest w stanie akceptacji.

jjj>jj

W tej chwili nie przypominam sobie dowodu na odwrót (że wszystko, co można zdefiniować w MSO, może zostać rozpoznane przez odpowiedni automat). Jeśli będę miał czas, sprawdzę to i opublikuję szkic.

iX1iX

Ra(i)iaiXiXi<jij

podstawowe automaty

,¬i,Xc

David Richerby
źródło
Dodano moją sugestię dotyczącą rozmowy. Oczekuje na zatwierdzenie przez @DavidRicherby
Hendrik Jan
Dziękuję za świetną odpowiedź. Nadal przetwarzam to wszystko i pracuję nad tym, szukam terminów, zastanawiam się, jak to zaimplementować itp. W międzyczasie myślę, że numer 3 był niewłaściwym pytaniem. Może raczej powinno tak być, dlaczego relacja między automatami i logiką jest tak ważna, że ​​jest o tym mowa w wielu artykułach?
Walter Schulze
Dziękuję za doskonałą odpowiedź!
Klas.