Pytania otagowane jako lambda-calculus

Rachunek λ jest formalnym systemem do definiowania funkcji, stosowania funkcji i rekurencji, który stanowi matematyczną podstawę programowania funkcjonalnego.


2
Jak kombinator Y ilustruje „niespójność rachunku Lambda”?
Na stronie Wikipedii dla Fixed Point Combinators jest napisany dość tajemniczy tekst Kombinator Y jest przykładem tego, co powoduje, że rachunek Lambda jest niespójny. Dlatego należy to traktować podejrzliwie. Można jednak bezpiecznie rozważyć kombinator Y, gdy jest on zdefiniowany tylko w logice matematycznej. Czy wdałem się w jakąś powieść szpiegowską? …

2
Kwantowy rachunek lambda
Klasycznie istnieją 3 popularne sposoby myślenia o obliczeniach: maszyna Turinga, obwody i rachunek lambda (używam tego jako haczyka dla większości widoków funkcjonalnych). Wszystkie 3 były owocnymi sposobami myślenia o różnych typach problemów, a różne dziedziny stosują różne formuły z tego powodu. Kiedy jednak pracuję z obliczeniami kwantowymi, zawsze myślę tylko …


2
Czy Lambda Calculus jest czysto składniowy?
Czytałem od kilku tygodni o rachunku Lambda, ale jeszcze nie widziałem niczego, co różni się materialnie od istniejących funkcji matematycznych i chcę wiedzieć, czy to tylko kwestia notacji, czy też są jakieś nowe właściwości lub reguły utworzone przez aksjomaty rachunku lambda, które nie mają zastosowania do każdej funkcji matematycznej. Na …

2
Charakterystyka terminów lambda, które mają typy związków
Wiele podręczników obejmuje typy przecięć w rachunku lambda. Reguły pisania dla przecięcia można zdefiniować w następujący sposób (na górze zwykłego rachunku lambda z podtypami): Γ⊢M:T1Γ⊢M:T2Γ⊢M:T1∧T2(∧I)Γ⊢M:⊤(⊤I)Γ⊢M.:T.1Γ⊢M.:T.2)Γ⊢M.:T.1∧T.2)(∧ja)Γ⊢M.:⊤(⊤ja) \dfrac{\Gamma \vdash M : T_1 \quad \Gamma \vdash M : T_2} {\Gamma \vdash M : T_1 \wedge T_2} (\wedge I) \qquad\qquad \dfrac{} {\Gamma \vdash M …

4
Czyste, intuicyjne wyprowadzenie kombinatora stałoprzecinkowego (kombinator Y)?
Kombinator stałoprzecinkowy FIX (znany również jako kombinator Y) w (niepoprawnym) rachunku lambda ( ) jest zdefiniowany jako:λλ\lambda FIX≜λf.(λx.f (λy.x x y)) (λx.f (λy.x x y))≜λf.(λx.f (λy.x x y)) (λx.f (λy.x x y))\triangleq \lambda f.(\lambda x. f~(\lambda y. x~x~y))~(\lambda x. f~(\lambda y. x~x~y)) Rozumiem jego cel i doskonale mogę śledzić wykonanie …


5
rachunek z odbiciem
Szukam prostego rachunku, który obsługuje rozumowanie na temat refleksji , a mianowicie introspekcji i manipulacji uruchomionymi programami. Czy istnieje nietypowe rozszerzenie -calculus, które umożliwia konwersję -terms do postaci, którą można manipulować składniowo, a następnie oceniać?λλλ\lambdaλλ\lambda Wyobrażam sobie, że rachunek składa się z dwóch głównych dodatkowych terminów: r e f l …

5
Dlaczego języki funkcjonalne Turing są kompletne?
Być może moje ograniczone rozumienie tematu jest nieprawidłowe, ale rozumiem do tej pory: Programowanie funkcjonalne oparte jest na rachunku Lambda Calculus opracowanym przez Alonzo Church. Programowanie imperatywne oparte jest na modelu maszyny Turinga, stworzonym przez Alana Turinga, ucznia Churcha. Rachunek Lambda jest tak potężny i zdolny jak Maszyna Turinga, co …

5
Rachunek lambda poza programowaniem funkcjonalnym?
Jestem studentem uniwersytetu i obecnie studiujemy rachunek Lambda Calculus. Nadal jednak trudno mi zrozumieć, dlaczego jest to dla mnie przydatne. Zdaję sobie sprawę, że jeśli wykonujesz mnóstwo programowania funkcjonalnego, może to być przydatne, ale uważam, że tak naprawdę nie jest ono potrzebne do nauki programowania funkcjonalnego, co myślisz? Po drugie, …

2
Co to jest równoważność beta?
W skrypcie, który obecnie czytam na rachunku lambda, równoważność beta jest zdefiniowana następująco: ββ\beta -equivalence ≡β≡β\equiv_\beta jest najmniejszym równoważności, który zawiera →β→β\rightarrow_\beta . Nie mam pojęcia co to znaczy. Czy ktoś może to wyjaśnić w prostszy sposób? Może z przykładem? Potrzebuję go do lematu wynikającego z twierdzenia Church-Russer, mówiąc: ≡β≡β\equiv_\beta↠ …


2
Zbiory podstawowe dla rachunku kombinatorycznego
Dobrze wiadomo, że kombinatory S i K tworzą zestaw podstawowy dla rachunku kombinatorycznego, w tym sensie, że wszystkie inne kombinatory można wyrazić za ich pomocą. Istnieje również podstawa Curry'ego B, C, K, W, która ma tę samą właściwość. Musi istnieć nieskończona liczba takich baz, ale nie znam żadnych innych. Wiem, …

4
Dlaczego ważne jest, aby funkcje były anonimowe w rachunku lambda?
Oglądałem wykład Jima Weiricha zatytułowany „ Przygody w programowaniu funkcjonalnym ”. W tym wykładzie wprowadza pojęcie kombinatorów Y, które zasadniczo znajduje punkt stały dla funkcji wyższego rzędu. Jedną z motywów, jak wspomina, jest możliwość wyrażenia funkcji rekurencyjnych za pomocą rachunku lambda, tak aby teoria Kościoła (wszystko, co można skutecznie obliczyć, …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.