# Wolfram Function Repository

Instant-use add-on functions for the Wolfram Language

Function Repository Resource:

Compute the arithmetic derivative of a rational number

Contributed by:
Shenghui Yang (Wolfram Research)

ResourceFunction["ArithmeticD"][ find the arithmetic derivative |

Arithmetic derivative uses the explict formula of integer factorization from Barbeau's "Remarks on an arithmetic derivative".

The algorithm for finding the arithmetic derivative has the same complexity as integer factoriztion.

The arithmetic derivatives of 0 and 1 are zero.

The arithmetic derivative of any prime number is 1.

Arithmetic derivative follows Leibniz rule.

The second arithmetic derivative is the arithmetic derivative of the first arithmetic derivative; higher-order arithmetic derivatives are defined analogously.

Unlike the usual derivative studied in college calculus class, the arithmetic derivative does not obey linearity in general.

The arithmetic derivative behaves in ways that are not well understood in number theory; higher order derivatives present many unresolved properties.

Find the arithmetic derivative of 100:

In[1]:= |

Out[1]= |

Find the arithmetic derivative of the fraction :

In[2]:= |

Out[2]= |

Arithmetic derivate for any prime is 1:

In[3]:= |

Out[3]= |

Using Leibniz rule it is easy to find the formula for prime tower :

In[4]:= |

Out[4]= |

which is the same as :

In[5]:= |

Out[5]= |

Higher order arithmetic derivatives are defined successively by nesting the same operation multiple times:

In[6]:= |

Out[6]= |

In[7]:= |

Out[7]= |

Arithmetic derivative of an integer *n* has the following bounds: , where is PrimeOmega[*n*] and gives the number of prime factors counting multiplicities.

The equality of the lower bound holds if and only if :

In[8]:= |

Out[8]= |

The equality of the upper bound holds if and only if *n* is prime or a prime tower:

In[9]:= |

Out[9]= |

if and only if where *p* is any prime:

In[10]:= |

Out[10]= |

In[11]:= |

Out[11]= |

It is easy to see that is not a fixed point:

In[12]:= |

Out[12]= |

has nontrivial solution for some rational value *x*:

In[13]:= |

Out[13]= |

The arithmetic derivative does not obey linearity in general:

In[14]:= |

Out[14]= |

Clearly 1 is not same as :

In[15]:= |

Out[15]= |

However, if we find some *m* and *n* such that , then for all integer *k*. For instance:

In[16]:= |

Out[16]= |

In[17]:= |

Out[17]= |

In[18]:= |

Out[18]= |

Then the following also true:

In[19]:= |

Out[19]= |

The graph of for

In[20]:= |

Out[20]= |

We can define the arithmetic integral by solving the equation given *a*, . The algorithm can be implemented with simple search in the interval found in the aforementioned bounds:

For example, the integrals of 10 and 100:

In[21]:= |

Out[21]= |

In[22]:= |

Out[22]= |

We also can find the *a*'s that do not have their integrals less than 1000:

In[23]:= |

Out[18]= |

Here is a list of number with more than one integral:

In[24]:= |

Out[24]= |

The result means that 10 has two integrals, 12 has two integrals and so on.

The Goldbach conjecture implies that the differential equation has a positive integer solution for any natural number :

In[25]:= |

Out[25]= |

For instance as a sum of two primes:

In[26]:= |

Out[26]= |

By the Leibniz rule of arithmetic derivative, 35 is one solution for *n* such that the differential equation holds:

In[27]:= |

Out[27]= |

Twin prime conjecture implies that the differential equation has infinite number of solutions:

In[28]:= |

Out[28]= |

This is from the application of Leibniz rule on the arithmetic derivative of where *p* is any prime:

In[29]:= |

Out[29]= |

In[30]:= |

Out[30]= |

In general, . If is a prime again,

In[31]:= |

Out[31]= |

Thus we shall have infinite such if the conjecture holds.

- When the derivative of a number is not zero: The arithmetic derivative–Michael Penn YouTube
- A003415: a(n)= n' = arithmetic derivative of n: a(0) = a(1) = 0, a(prime) = 1, a(mn) = m*a(n) + n*a(m)–The On-Line Encyclopedia of Integer Sequences (OEIS)

- 1.0.1 – 15 June 2022
- 1.0.0 – 07 June 2022

This work is licensed under a Creative Commons Attribution 4.0 International License