eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingIle zajmie komputerowi mnożenie liczb rzędu 2^128Re: Ile zajmie komputerowi mnożenie liczb rzędu 2^128
  • X-Received: by 2002:a05:620a:126d:: with SMTP id b13mr5999112qkl.486.1575511877051;
    Wed, 04 Dec 2019 18:11:17 -0800 (PST)
    X-Received: by 2002:a05:620a:126d:: with SMTP id b13mr5999112qkl.486.1575511877051;
    Wed, 04 Dec 2019 18:11:17 -0800 (PST)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!feeder.erje.net
    !2.eu.feeder.erje.net!feeds.phibee-telecom.net!newsreader4.netcologne.de!news.n
    etcologne.de!peer03.ams1!peer.ams1.xlned.com!news.xlned.com!peer03.am4!peer.am4
    .highwinds-media.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-medi
    a.com!g89no6429989qtd.0!news-out.google.com!w29ni89qtc.0!nntp.google.com!g89no6
    429987qtd.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Wed, 4 Dec 2019 18:11:16 -0800 (PST)
    In-Reply-To: <d...@g...com>
    Complaints-To: g...@g...com
    Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=185.186.156.102;
    posting-account=5sNFBgoAAAAxlae8lv99mPyGsDs6ynwB
    NNTP-Posting-Host: 185.186.156.102
    References: <b...@g...com>
    <qs878c$luk$1@dont-email.me>
    <5...@g...com>
    <d...@g...com>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <8...@g...com>
    Subject: Re: Ile zajmie komputerowi mnożenie liczb rzędu 2^128
    From: o...@g...com
    Injection-Date: Thu, 05 Dec 2019 02:11:17 +0000
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: quoted-printable
    X-Received-Bytes: 4446
    X-Received-Body-CRC: 2103450594
    Xref: news-archive.icm.edu.pl pl.comp.programming:214505
    [ ukryj nagłówki ]

    > swoje droga esli to jest iteracja na stalej 2^128 - 5 to wynik konkretnej liczby
    iteracji na tym (np 100) jest znany i nie trzeba tego liczyc wiec wyliczenie tego
    wynosi 0 czasu (i dlatego tez niekonkretne pytaia sa nie tylko niecialawe ale i
    denerwujace (ziew))

    To jest tylko część bardziej złożonego problemu nad którym się głowię. Może on wyda
    Ci się ciekawszy. Rozważmy funkcje rekurencyjne o następującej definicji:

    f(x) = a/2*x+b/2 - gdy x jest nieparzyste
    f(x) = x2 - gdy x jest parzyste

    a i b to jakieś liczby nieparzyste, a x może być dowolną liczbą naturalną. Określając
    a i b dostajemy jakiś ciąg zdefiniowany za pomocą funkcji rekurencyjnej.
    Najsłynniejszym z nich jest ciąg Collatza, którego dotyczy nierozwiązania do dziś
    hipoteza. Ciąg Collatza dostaniemy dla a=3 i b=1. Weźmy pary a, b z przedziału
    (-7,-5, ..., 5, 7). Będzie ich tyle co wariacji z powtórzeniami, 2-wyrazowych, w
    zbiorze 8-elementowym, czyli 64. Dla każdej z takich 64 par a i b mamy zdefiniowaną
    jakąś funkcję rekurencyjną. To co chcę oszacować, to ile zajmie policzenie w każdej z
    tych 64 funkcji n iteracji dla kolejnych liczb naturalnych z przedziału od 1 do 2^n.
    Np. dla a=5 i b=3 oraz n=3 mamy do policzenia iteracje dla liczb 1,2,3,...,8:

    1,4,2,1
    2,1,4,2
    3,9,24,12
    4,2,1,4
    5,14,7,19
    6,3,9,24
    7,19,49,124
    8,4,2,1

    Rzecz w tym, że interesują mnie duże n, rzędu minimum 50, a najlepiej rzędu 100. Nie
    wiem, czy to jest bardziej interesujące? Na pewno żaden komputer tego nie policzy w
    żadnym czasie np. dla n=128. Łatwo policzyć, że, jeśli średnio taki ciąg jest liczony
    np. przez 100 mikrosekund, to obliczenia dla 64 par a i b zajmą
    64*100*1/1000000*2^128 sekund, czyli może jeszcze nastąpi to przed śmiercią cieplną
    Wszechświata, a może nie. Dlatego trzeba policzyć średni przypadek i ten, który
    podałem jest średnim przypadkiem, można bowiem udowodnić, że średnio w tych ciągach w
    przedziale liczb od 1 do 2^n wystąpi tyle samo mnożeń z dodawaniem, co dzieleń.
    Natomiast potrzebuję to oszacować, bo zamierzam stworzyć algorytm, który będzie się
    wymagał obliczenia losowego x z przedziału od 1 do 2^n dla losowej pary a i b. I chcę
    wiedzieć ile średnio zajmie to czasu. W szczególności jakie maksymalne n mogę
    przyjąć, aby taki pojedynczy ciąg był liczony około 0,1 mikrosekundy.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: