tło
Obliczenia na liczbach rzeczywistych są bardziej skomplikowane niż obliczenia na liczbach naturalnych, ponieważ liczby rzeczywiste są obiektami nieskończonymi i istnieje niezliczona liczba liczb rzeczywistych, dlatego liczb rzeczywistych nie można wiernie przedstawić za pomocą ciągów skończonych nad skończonym alfabetem.
W przeciwieństwie do klasycznego obliczania ciągów skończonych, w którym różne modele obliczeń, takie jak: rachunek lambda, maszyny Turinga, funkcje rekurencyjne ... okazują się równoważne (przynajmniej w przypadku obliczania funkcji na ciągach), istnieją różne proponowane modele obliczeń liczby rzeczywiste, które nie są kompatybilne. Na przykład w modelu TTE (patrz także [Wei00]), który jest najbliższy klasycznemu modelowi maszyny Turinga, liczby rzeczywiste są reprezentowane za pomocą nieskończonych taśm wejściowych (takich jak wyrocznie Turinga) i nie można zdecydować o porównaniu i relacje równości między dwiema danymi liczbami rzeczywistymi (w skończonym czasie). Z drugiej strony w modelach BBS / real-RAM, które są podobne do modelu maszyny RAM, mamy zmienne, które mogą przechowywać dowolne liczby rzeczywiste, a porównania i równość należą do operacji atomowych modelu. Z tego i podobnych powodów wielu ekspertów twierdzi, że modele BSS / rzeczywistej pamięci RAM nie są realistyczne (nie można ich wdrożyć, przynajmniej nie na obecnych komputerach cyfrowych) i wolą TTE lub inne modele równoważne od TTE, takie jak efektywny model teoretyczny domeny, Model Ko-Friedmana itp.
Jeśli dobrze zrozumiałem , domyślnym modelem obliczeń stosowanym w geometrii obliczeniowej jest model BSS (inaczej real-RAM , patrz [BCSS98]).
Z drugiej strony wydaje mi się, że przy implementacji algorytmów w geometrii obliczeniowej (np. LEDA ) mamy do czynienia tylko z liczbami algebraicznymi i nie mamy do czynienia z żadnymi nieskończonymi obiektami lub obliczeniami wyższego typu (czy to prawda?). Tak więc wydaje mi się (prawdopodobnie naiwnie), że można również użyć klasycznego modelu obliczeń na łańcuchach skończonych, aby poradzić sobie z tymi liczbami i użyć zwykłego modelu obliczeń (który jest również używany do implementacji algorytmów) w celu omówienia poprawności i złożoności algorytmów.
Pytania:
Jakie są powody, dla których naukowcy zajmujący się geometrią obliczeniową wolą korzystać z modelu BSS / real-RAM? (powody specyficznej geometrii obliczeniowej dla zastosowania modelu BSS / real-RAM)
Jakie są problemy z (prawdopodobnie naiwnym) pomysłem, o którym wspominałem w poprzednim akapicie? (przy użyciu klasycznego modelu obliczeń i ograniczania danych wejściowych do liczb algebraicznych w geometrii obliczeniowej)
Uzupełnienie:
Istnieje również złożoność problemu algorytmów, bardzo łatwo jest wybrać następujący problem w modelu BSS / real-RAM:
Biorąc pod uwagę dwa zestawy i dodatnich liczb całkowitych, czy ?T ∑ s ∈ S √
Chociaż nie jest znany żaden skuteczny algorytm całkowitej liczby pamięci RAM do jego rozwiązania. Dzięki JeffE za przykład.
Bibliografia:
- Lenore Blum, Felipe Cucker, Michael Shub i Stephen Smale, „Complexity and Real Computation”, 1998
- Klaus Weihrauch, „ Computable Analysis, An Introduction ”, 2000