hermann on Sun, 12 Jan 2025 02:01:17 +0100


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: What’s the equivalent of Mathematica’s Function in Pari/Gp


On 2025-01-11 22:59, Laël Cellier wrote:
given I can’t afford
buying mathematica ?

There is an easy trick running Mathematica for free:
https://www.wolfram.com/legal/agreements/wolfram-mathematica-raspberry-pi/

"... WRI grants You a non-exclusive license to use the Product solely for personal or educational purposes on a Raspberry Pi computer ..."

I had many Raspberry computers before.
I bought the fastest (the Pi5) only for having a fast and free Mathematica execution environment.
The Pi5 runs with 2.4GHz default.
I was winner in chip lottery, was able to run it overclocked with 3GHz and force-turbo for weeks (3GHz permanently, now commented out):

pi@raspberrypi5:~ $ tail -2 /boot/firmware/config.txt
#arm_freq=3000
#force_turbo=1
pi@raspberrypi5:~ $

You can buy cheapest (2GB Ram) Pi5 for 50 USD only.
Only accessoir you need to buy in addition is active cooler for 5.95 USD to avoid burning the CPU.

https://forums.raspberrypi.com/download/file.php?id=65405

I have seldom need to use Mathematica because I do nearly everything with PARI/GP since quite some time. But it is good being able to just use it ...



simple question, in mathematica, I can write something like this :
Solve[((25)^2 + x RSA260)/(y) == (Floor[RSA260^(1/2)] + 1)^2, {x, y}, Integers]
where RSA260 is variable, and it returns me a value of x and y for
which the equation is true.

Given the intent is clear even without understand the Mathematica’s
language, what’s the equivalent of this Paris/Gp


pi@raspberrypi5:~ $ wolfram
Mathematica 14.1.0 Kernel for Linux ARM (64-bit)
Copyright 1988-2024 Wolfram Research, Inc.

In[1]:= RSA260=221128255295296664352810852550262309276120895024700153944137483191288229414020019865127297265697465990859
003300314000511707422045608592763579537571859542988389587092292384910067030341246205457845664136645406842143612930176940
20846391065875914794251435144458199

Out[1]= 22112825529529666435281085255026230927612089502470015394413748319128822941402001986512729726569746599085900330\

03140005117074220456085927635795375718595429883895870922923849100670303412462054578456641366454068421436129301769\

   4020846391065875914794251435144458199

In[2]:= Solve[((25)^2 + x RSA260)/(y) == (Floor[RSA260^(1/2)] + 1)^2, {x, y}, Integers]

Out[2]= {{x -> ConditionalExpression[104950442476936846355633461335106831855305632251003989407101101451057951229673392\

343776772452527721977065553705922254586142641494385727067450430472084032114945410140849686725952604747493302\

14565087861455459241427372303571065761871140566881851095906049654992837 +

2211282552952966643528108525502623092761208950247001539441374831912882294140200198651272972656974659908590033\

00314000511707422045663412222446877343849596346005808142408153081876256070646709168646852511804036098593787\

         94669961340279885370629131877531341079359556 C[1],

(C[1] ∈ Integers && C[1] >= 0) || (C[1] ∈ Integers && C[1] <= -1)],

y -> ConditionalExpression[1049504424769368463556334613351068318553056322510039894071011014510579512296733923437\

767724525277219770655537059222545861426414943597090153621050598882612129076043803044761397147779660347007377\

1090674598247995429411206087834031488640531845483210456376624365673 +

2211282552952966643528108525502623092761208950247001539441374831912882294140200198651272972656974659908590033\

00314000511707422045608592763579537571859542988389587092292384910067030341246205457845664136645406842143612\

         93017694020846391065875914794251435144458199 C[1],

(C[1] ∈ Integers && C[1] >= 0) || (C[1] ∈ Integers && C[1] <= -1)]}}

In[3]:=


Regards,

Hermann.