리만 가설은 기본적으로 2,3,5,7,11,13,17,19.....이러한 프라임넘버(소수) 찾기 중에서 어떠한 법칙이 있어 얼마나 더 빨리 소수를 찾을 수 있을까에 대한 연구 과정 중에 나온 것임.
그런데 극도로 거대한 소수 즉 숫자 하나가 "100000.........1" 이렇게 나열되는 숫자의 양이 두꺼운 백과사전 텍스트 분량 보다 많을 때 이것을 최종적으로 소수인지를 확인하기 위해서는 해당 수 보다 작은 기존의 모든 소수로 다시 하나하나 인수분해를 해야 하는데 당연히 3으로도 인수분해를 해야 함.
그런데 내가 찾은 아이디어는 3으로 인수분해를 하지 않고 12로 인수분해를 했을 때 나누기의 몫이 아닌 나누고 난 후의 "나머지 값"이 1, 5, 7, 11 로 남는 경우의 수만이 소수일 가능성이 있고 나머지 값이 0,2,3,4,6,8,9,10 일 경우 아예 소수일 가능성이 없으니 3다음의 소수로 넘어갈 수 있게 됨.
이것은 극 거대 소수를 컴퓨터 연산으로 작업했을 때 엄청난 시간과 작업 횟수를 절약해 주는 것으로 매우 유익한 응용 알고리즘이 됨.
아래 nhk 방송 캡처 화면을 자세히 볼 필요 없이 대충 보기 바람. (오일러의 π^2/6 대목만 유의)
최초에 오일러가 제시한 답 π^2/6 을 다시 유도한 것으로 알 수 있는데 이 오일러의 답에서 분모와 분자에 곱하기 2를 해도 같은 값이며 이렇게 12로 나누었을 때 리만 가설이 제시한 4개의 제로점인 1, 5, 7, 11 이라는 항상 일정한 나머지 값이 그래프의 동일선상에 나타나는 것임.
모든 자연수는 12k, 12k+1, 12k+2, 12k+3, 12k+4, 12k+5, 12k+6, 12k+7, 12k+8, 12k+9, 12k+10, 12k+11의 꼴로 나타낼 수 있는데
이 중 2의 배수인 12k, 12k+2, 12k+4, 12k+6, 12k+8, 12k+10을 없애주면
12k+1, 12k+3, 12k+5, 12k+7, 12k+9, 12k+11
이 중 3의 배수인 12k+3, 12k+9를 없애주면
12k+1, 12k+5, 12k+7, 12k+11
네 자연수 모두 12로 나눈 나머지가 각각 1, 5, 7, 11
이것은 너무나 쉽고도 당연한 증명인데 이 증명이 리만 가설 문제의 해답이며 누구도 12로 나눠서 소수를 구할 생각을 하지 않았으나 이것을 컴퓨터 알고리즘으로 했을 때 엄청난 시간과 돈이 절약 됨.
다른 알고리즘 아무리 많고 좋아도 결국은 가장 컴퓨터 작업이 많은 3으로 인수분해하는 과정이 가장 긴 시간이 걸리는데, 나는 아예 3으로 인수분해하지 않고 12로 인수분해를 하며, 컴퓨터 작업으로는 다시 12로 인수분해할 필요도 없이 나머지 값 1,5,7,11 이라는 구간이 확정되면 1에서 5까지 네 칸, 5에서 7까지 두칸, 7에서 11까지 네 칸, 11에서 1까지 두 칸이 무한 반복되기 때문에 결국 두 칸, 네 칸의 반복으로 건너뛰어 3이나 12로 인수분해 한다는 의미도 없어지게 된다.
리먼가설은 맞냐 아니냐 증명하는거지 저거 푼다고 소인수분해하는법이 나오는것도 아니잖음?
ㅇㄱㄹㅇ
리만 가설은 오일러가 제시한 답 π^2/6 에서 시작하는데, 도대체 소수를 구하려고 하면서 분자에 원주율인 파이(π)가 왜 필요하냐? 게다가 파이의 2제곱이면 3.14 곱하기 3.14 라는 이야기인데 파이 자체가 무리수인데다 그걸 다시 제곱을 해서 뭘 어쩌자는 거야? 나도 내가 쓴 본문에서 원을 그려서 이해를 돕게 했지만 그것은 이해를 쉽게 하도록 돕고자 그린 것이지 실제 소수 찾기에서 원은 아무 필요도 없는 거다. 그런데 그런 소수찾기에서 원의 원주율을 공식으로 사용해서 유도하면 이 자체가 정신병인 것이다.
바로 위의 내 댓글은 이미 다른데서 써 놓았던 복붙한거다.
여기다 쓸게 아니라 학계에 발표해서 피어리뷰 받아야지
RSA가 소수로 암호화한다는데 좆된거아님?
구글에서 양자컴퓨터로 가장 어려운 작업을 수행했다고 기사가 나온 적이 있었는데 난 그걸 보자마자 거짓말로 봤다. 양자컴퓨터는 초전도체가 나와야 되는 건데 그게 구현됐을리가 없고 그냥 내 알고리즘 돌려서 거대 소수 빠르게 찾았을 거다.
지들이 알아서 하겠지.
애초에 걍 exponential 이 들어가면 해에서 파이는 존나 자주 튀어나오는데
어쨌든 소수찾기에서 파이로 유도하면 그 자체가 망상이지.
'제로점'은 complex domain인데 뭔 1 5 7 11이며 이미 비자명 제로점은 무한하다는게 알려져있는데 뭐가해답임
그리고 당연하게도 12×5+5는 65로 소수가 아니란다
넌 본문을 하나도 이해 못하고 쓰고 있다. 다시 읽어봐라. 나누기에서 몫이 아니라 나누고 난 후의 나머지가 1, 5, 7, 11 이다.
65를 혹시 12로 나눴을때 나머지가 5가 나오는것도 이해를 못함?
아 그건 너가 맞게 썼구나. 그런데 내 방식은 컴퓨터 소수 찾기에서 가장 작업량이 많은 3에 대해서 그 3을 아예 처음부터 인수분해 하지 않는 방식인 것이지, 7, 11, 13,......이렇게 소수로 다시 다 인수분해 해야 하는데 이건 어느 소수 찾기나 다 하는 거다.
3을 나누는걸 없애기 위해 더 큰 수 12로 나누고 거기에 포함되지 않은 5 7 11 13 같은 소수들의 배수인지 또 확인해야해서 그걸로 나누면 걍 연산량은 big o notation상 같고, 실제 연산량은 그것보다 더 높을거고 소수로 나누는 알고리즘 대신 메모리를 많이 써서 채로 내려버리는 방법도 있는데 1.비효율적이고 2.나머지 판별이라는 연산을 하나 더 처해서 느리고 ㅋㅋ 3을 나누기를 없애기 위해 똑같은 나누기연산인 12를 나누는게 어떻게 속도 증가를 이룰 수 있는지 설명좀ㅋㅋ
구간이 확정되면 1에서 5까지 네 칸, 5에서 7까지 두칸, 7에서 11까지 네 칸, 11에서 1까지 두 칸이 무한 반복되기 때문에 결국 두 칸, 네 칸의 반복으로 건너뛰어 3이나 12로 인수분해 한다는 의미도 없어지게 된다.
그렇게 치면 이세상 알려진 모든 소수를 곱한 값을 나눈 나머지를 그놈의 건너뛰고 하는 알고리즘으로 풀면 되는데 그런 건너뛰기를 순서대로 없애면 그게 바로 채란다
이 댓글은 게시물 작성자가 삭제하였습니다.
이 댓글은 게시물 작성자가 삭제하였습니다.
이 댓글은 게시물 작성자가 삭제하였습니다.
당연하지. 원래 소수찾기가 그런 것이니까. 하여튼 나는 남들 다하는 그리고 가장 작업이 복잡한 3으로 나누는 것을 아예 안하고 매번 2칸 4칸 건너뛰기로만 한다.그래서 내가 가장 빠르다.
ㅋㅋ 꼭 c로 짜서 속도테스트해봐~
넌 내가 말한 건너뛰기가 프로그램 상에서 어떻게 작동되는지 아직 저 방식에 익숙하지 않아서 감이 안 올 수 있긴 하지.
ㅋ
이 댓글은 게시물 작성자가 삭제하였습니다.
유전님 중성부력 이야기도 해주세요!! - dc App
이 댓글은 게시물 작성자가 삭제하였습니다.
이 댓글은 게시물 작성자가 삭제하였습니다.
이 댓글은 게시물 작성자가 삭제하였습니다.
이 댓글은 게시물 작성자가 삭제하였습니다.
이 댓글은 게시물 작성자가 삭제하였습니다.
이 댓글은 게시물 작성자가 삭제하였습니다.
이 댓글은 게시물 작성자가 삭제하였습니다.
이 댓글은 게시물 작성자가 삭제하였습니다.
이 댓글은 게시물 작성자가 삭제하였습니다.