24FreelanceRynek freelancerów, który nigdy nie śpi
Aktywny

Formalna weryfikacja w Coq i Gallina: dowody sprawdzane maszynowo

77 przeglądów#2339
Okres wystawienia12 dnido 21.11.2026
Opublikowane23.08.2026
Widoki7737 w ciągu 14 dni

O usłudze

Przetłumaczone
Jestem inżynierem dowodów i specjalizuję się w interaktywnym systemie dowodzenia twierdzeń Coq oraz jego języku specyfikacji Gallina. Moim zadaniem jest usunięcie frazy "prawdopodobnie działa" z twojego kodu i zastąpienie jej dowodem, który samodzielnie sprawdza maszyna. Mając algorytm, protokół lub stwierdzenie matematyczne, piszę jego specyfikację w Gallina, a następnie interaktywnie buduję dowód, że implementacja się z nim zgadza, obejmując wszystkie przypadki bez wyjątku. Nic nie jest brane na wiarę: każdy lemma jest wyprowadzana i ponownie sprawdzana przez kompilator coqc przy każdym budowaniu. Zwykle kontaktują się ze mną, aby formalnie udowodnić inwarianty struktur danych, uzasadnić zakończenie i poprawność funkcjonalną funkcji rekurencyjnych, zmechanizować twierdzenia z kombinatoryki, algebry lub logiki oraz modelować automaty skończone dla właściwości współbieżności i bezpieczeństwa. Biegle posługuję się językami taktycznymi Ltac i Ltac2, dyscypliną SSReflect wraz z biblioteką Mathematical Components, typami zależnymi, rekurencją dobrze ugruntowaną i predykatami indukcyjnymi. Gdy dowody się zbieżają, używam mechanizmu ekstrakcji Coq, aby uzyskać czysty kod wykonywalny w OCaml, który przenosi gwarancje dowodowe do produkcji; w razie potrzeby przygotowuję ekstrakcję do Haskella lub Schemy. Otrzymujesz udokumentowany rozwój Coq, który kompiluje się bez admit i zbędnych aksjomatów, czytelną specyfikację, wyodrębnione i przetestowane moduły oraz krótki raport na temat tego, co obiecują twierdzenia i gdzie leżą ich granice. Zmechanizowałem przejścia kompilatora, zweryfikowałem prymitywy arytmetyczne i kryptograficzne oraz przywróciłem skrypty dowodowe uszkodzone przez aktualizacje bibliotek. Jeśli potrzebujesz nie tylko próbki testowej, ale pewności, dostarczę ci wynik, który jest prawdziwy z definicji i pozostaje prawdziwy w miarę ewolucji kodu.
Freelancer contacts
E-mailShow
24
Dwadzieścia · wskazówka

Zanim zamówisz

  • Przejrzyj portfolio freelancera.
  • Opisz swoje zadanie i zapytaj o cenę oraz termin.
  • Sprawdź opinie od innych klientów.
  • Lub opublikuj projekt i porównaj kilka ofert.
Ta sama kategoria

Podobne usługi

Wszystkie usługi w kategorii
Dobrze wiedzieć
Jak mogę zamówić tę usługę?

Napisz do freelancera za pomocą formularza na tej stronie: opisz zadanie, termin i wynik, którego potrzebujesz.

Jak mogę sprawdzić freelancera?

Otwórz profil: ocena, portfolio i opinie od innych klientów pokazują doświadczenie w zadaniach podobnych do twoich.

Olena T.Ręcznie robione
Kontakt
FOR CLIENTS · SAFE DEAL ESCROW

Need a similar project? Post your task for free in 30 seconds

Get competitive bids from verified freelancers and release payment only when you approve the work via Safe Deal.

Post a Task for Free →How Safe Deal Works
FOR FREELANCERS · PAYORA 1-CLICK

Pin your profile to the TOP of the category for $5 / week

Boost your profile and portfolio to #1 in the directory (1-click crypto & fiat checkout via Payora) to get 5× more direct orders.

Pin Profile to TOP ($5/wk)Top Up via Payora