Как быстро посчитать M! mod N?

Тема в разделе "WASM.A&O", создана пользователем UbIvItS, 16 май 2007.

  1. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.090
    вернёмеся-ка к сабжу: факториал можно разбивать на праймы, а посчитать верхнюю степень входа данного прайма в факториал легко, конечно, подход сильно омрачается тем, что праймов сильно много, но, могет быть, проблему можно обойти. короче, ещё посмотрю......
     
  2. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
  3. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.090
    crypto
    спасибо.
    а вот ещё один урлос, мне дал ECk, тоже любопытный: http://golovolomka.hobby.ru/books/gardner/bornnum.shtml
     
  4. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.090
    Кто-нить могет доказать, что 2X мин. сумма из всех возможных сумм множителей X^2?? И ещё: знает ли кто квадрат 2a+1, IsPrime(a)==true???
     
  5. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.090
    впрочем, судя по всему таких 2a+1 ====> нет
     
  6. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    UbIvItS
    Наверное потому, что квадрат вторника не равен 5.
     
  7. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.090
    crypto
    поясни, плзззз...
     
  8. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    UbIvItS
    Дык, очевидно же :)
     
  9. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.090
    crypto
    что такое вторник?:)
     
  10. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    UbIvItS
    А что такое
    и что такое
     
  11. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.090
    crypto
    X ==sqrt(X^2)
    2X==2*X ===========> пример: 36=6^2. возможные суммы множителей: 18+2; 9+4.......
    -------------------------
    ещё хотелось бы получить квадрат 2*a+1, a - простое число.

    ЗЫ
    sqrt - функция квадратного корня из числа; IsPrime - тест на простоту числа в Maple.
     
  12. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    UbIvItS
    Т.е. первое утверждение состоит в том, что если N = a*a, то минимальное значение суммы a+b при условии a*b=N, равно 2*N?
    Дык, это очевидно.
    Я тебе даже больше скажу, можно найти экстремум суммы x+y при условии x*y=N.
    Кстати, утверждение видимо относится только к представлению в виде суммы двух множителей..

    Второе утверждение по-прежнему туманно.
    ЗЫ
    Спасибо про sqrt, не знал:)
     
  13. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.090
    crypto
    не сочти за излишний педантизм:)), но всё-таки a1*b==N.
    честно говоря, док-ва не самая моя сильная сторона - я в основном сермяжный практик:))
    ну, вот, например, квадрат: 2*x+1=25=2*12+1, а мне нужен квадрат, где x - простое число и порыть вопрос есть ли такие квадраты - если есть, то как их много.
    я просто перестраховался - привычка: многих раздражает, но на деле очень полезная:))
    а+а, итак экстремум - нижний, а верхний мне не нужен.
     
  14. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.090
    мысли в слух:)):
    довольно легко доказать, что любой нечёт. квадрат принадлежит классу чисел 8*x+1, исходя из этого замечательного факта можно быстро узнать является ли X, в X^2-Y^2, нечётом. для этого достаточно условия: 2*N mod 8 == 2. доказывать не буду, впрочем, докво весьма простое........
     
  15. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.090
    это глупость - таких чисел быть не может:)). впрочем, речь не об этом, а вот о чём: разность квадатов может приводиться к виду: x-4^t*y или 4^t*x-y, дальше можно приводить к полиному второй степени и пременить методику вот отсюда: http://www.alpertron.com.ar/METHODS.HTM. хотя на эту бы связку я и копейки бы ставить бы не стал.........:dntknw:.
    я придумал более быстрый способ по вычленению x, но способ слишком узкополосный по видам чисел.
    Зы
    x, y - треугольные числа.
     
  16. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.090
    число на сайте RSA в 704 бит содержит один множитель не сейфпрайм..... интересно почему???:))
     
  17. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.090
    итак, имеем сис. ур-ий:

    2^x mod N
    3^x mod N
    ............................

    t^x mod N
    как можно вытянуть x более/менее оптимально???
     
  18. maxdiver

    maxdiver Max

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    308
    Адрес:
    Саратов
    UbIvItS
    Эээ, а где уравнения-то?
    2^x mod N = ???
    Если я всё-таки правильно тебя понял, то простейшим методом решения будет китайская теорема об остатках. Есть также более быстрый алгоритм Гарнера.
     
  19. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.090
    maxdiver
    чему равно каждое из t^x mod N известно: нужно x вытянуть.
     
  20. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.090
    мне стала интересна одна идея (как её реализовать более/менее оптимально пока непонятно, к сожалению:dntknw:(), но сама по себе интересна - заставить рса работать против себя самого: основная задача рса - это зная число e, найти незвестное d, но самое интересное, что задачу можно расширить: мы можем взять любое e1 и сломаем N, если найдём такое d1, что e1*d1 mod Phi(N)==1.