2018viXraRequires access

How to Check if a Number is Prime Using a Finite Definite Integral

Jesús Fernández Sánchez

Open publisher page 0 citations

Abstract

b=0; p=input('Input a number : '); m=fix((p+1)/2); for k=2:m+1; fun=@(w) exp(p.*1j.*w).*exp(-2.*k.*1j.*w).*(1-exp(-m.*k.*1j.*w))./(1-exp(-k.*1j.*w)); a=integral(fun,-pi,pi); b=b+a; end; b=b/(2*pi); disp(b); Above simple MATLAB/Octave program, can detect if a number is prime or not. If the result is zero (considering zero being less than 1e-5), the number introduced is a prime. If the result is an integer, this result will tell us how many permutations of two divisors, the input number has. As you can check, no recurrent division by odd or prime numbers is done. Just this strange integral: 1/2π ∫_(-π)^π▒〖e^pjω (∑_(k=2)^(k=m+1)▒〖e^(-2kjω) ((1-e^(-mkjω))/(1-e^(-kjω) )) 〗)dω 〗 Being p the number that we want to check if it is a prime or not. And being m whatever integer number higher than (p+1)/2(the lowest, the most efficient the operation). As k and ω are independent variables, the sum can be taken outside the integral (as it is in the above program). To get to this point, we will do the following. First, we will create a domain with all the composite numbers. This is easy, as you can just multiply one by one all the integers (greater or equal than 2) in that domain. So, you will get all the composite numbers (not getting any prime) in that domain. Then, we will use the Fourier transform to change from this original domain (called discrete time domain in this regards) to the frequency domain. There, we can “ask”, using Parseval’s theorem, if a certain number is there or not. The use of Parseval’s theorem leads to the above integral. If the number p that we want to check is not in the domain, the result of the integral is zero and the number is a prime. If instead, the result is an integer, this integer will tell us how many permutations of two divisors the number p has. And, in consequence information how many factors, the number p has. So, for any number p lower than 2m-1, you can check if it is prime or not, just making the numerical definite integration (but even this integral, if no further developments are done, the numerical integration is inefficient computing-wise compared with brute-force checking for example). To be added, is the question regarding the level of accuracy needed (number of decimals and number of steps in the numerical integration) to have a reliable result for large numbers. This will be commented on the paper, but a separate study will be needed to have detailed conclusions. Of course, the best would be that in the future, an analytical result (or at least an approximation) for the summation or for the integration is achieved.

About this research paper

What this paper is about

b=0; p=input('Input a number : '); m=fix((p+1)/2); for k=2:m+1; fun=@(w) exp(p.*1j.*w).*exp(-2.*k.*1j.*w).*(1-exp(-m.*k.*1j.*w))./(1-exp(-k.*1j.*w)); a=integral(fun,-pi,pi); b=b+a; end; b=b/(2*pi); disp(b); Above simple MATLAB/Octave program, can detect if a number is prime or not. If the result is zero (considering zero being less than 1e-5), the number introduced is a prime. If the result is an integer, this result will tell us how many permutations of two divisors, the input number has. As you can check, no recurrent division by odd or prime numbers is done. Just this strange integral: 1/2π ∫_(-π)^π▒〖e^pjω (∑_(k=2)^(k=m+1)▒〖e^(-2kjω) ((1-e^(-mkjω))/(1-e^(-kjω) )) 〗)dω 〗 Being p the number that we want to check if it is a prime or not. And being m whatever integer number higher than (p+1)/2(the lowest, the most efficient the operation). As k and ω are independent variables, the sum can be taken outside the integral (as it is in the above program). To get to this point, we will do the following. First, we will create a domain with all the composite numbers. This is easy, as you can just multiply one by one all the integers (greater or equal than 2) in that domain. So, you will get all the composite numbers (not getting any prime) in that domain. Then, we will use the Fourier transform to change from this original domain (called discrete time domain in this regards) to the frequency domain. There, we can “ask”, using Parseval’s theorem, if a certain number is there or not. The use of Parseval’s theorem leads to the above integral. If the number p that we want to check is not in the domain, the result of the integral is zero and the number is a prime. If instead, the result is an integer, this integer will tell us how many permutations of two divisors the number p has. And, in consequence information how many factors, the number p has. So, for any number p lower than 2m-1, you can check if it is prime or not, just making the numerical definite integration (but even this integral, if no further developments are done, the numerical integration is inefficient computing-wise compared with brute-force checking for example). To be added, is the question regarding the level of accuracy needed (number of decimals and number of steps in the numerical integration) to have a reliable result for large numbers. This will be commented on the paper, but a separate study will be needed to have detailed conclusions. Of course, the best would be that in the future, an analytical result (or at least an approximation) for the summation or for the integration is achieved.

Why it matters

A significance statement is not available in the OpenAlex record.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

b=0; p=input('Input a number : '); m=fix((p+1)/2); for k=2:m+1; fun=@(w) exp(p.*1j.*w).*exp(-2.*k.*1j.*w).*(1-exp(-m.*k.*1j.*w))./(1-exp(-k.*1j.*w)); a=integral(fun,-pi,pi); b=b+a; end; b=b/(2*pi); disp(b); Above simple MATLAB/Octave program, can detect if a number is prime or not. If the result is zero (considering zero being less than 1e-5), the number introduced is a prime. If the result is an integer, this result will tell us how many permutations of two divisors, the input number has. As you can check, no recurrent division by odd or prime numbers is done. Just this strange integral: 1/2π ∫_(-π)^π▒〖e^pjω (∑_(k=2)^(k=m+1)▒〖e^(-2kjω) ((1-e^(-mkjω))/(1-e^(-kjω) )) 〗)dω 〗 Being p the number that we want to check if it is a prime or not. And being m whatever integer number higher than (p+1)/2(the lowest, the most efficient the operation). As k and ω are independent variables, the sum can be taken outside the integral (as it is in the above program). To get to this point, we will do the following. First, we will create a domain with all the composite numbers. This is easy, as you can just multiply one by one all the integers (greater or equal than 2) in that domain. So, you will get all the composite numbers (not getting any prime) in that domain. Then, we will use the Fourier transform to change from this original domain (called discrete time domain in this regards) to the frequency domain. There, we can “ask”, using Parseval’s theorem, if a certain number is there or not. The use of Parseval’s theorem leads to the above integral. If the number p that we want to check is not in the domain, the result of the integral is zero and the number is a prime. If instead, the result is an integer, this integer will tell us how many permutations of two divisors the number p has. And, in consequence information how many factors, the number p has. So, for any number p lower than 2m-1, you can check if it is prime or not, just making the numerical definite integration (but even this integral, if no further developments are done, the numerical integration is inefficient computing-wise compared with brute-force checking for example). To be added, is the question regarding the level of accuracy needed (number of decimals and number of steps in the numerical integration) to have a reliable result for large numbers. This will be commented on the paper, but a separate study will be needed to have detailed conclusions. Of course, the best would be that in the future, an analytical result (or at least an approximation) for the summation or for the integration is achieved.

Key concepts: Integer (computer science), Mathematics, Prime (order theory), Zero (linguistics), Combinatorics, Prime factor, Prime number, Simple (philosophy)

Related papers

Back to paper searchBrowse research topicsOriginal source
How to Check if a Number is Prime Using a Finite Definite Integral — Research Paper | ScholarLens