From ce7bb3f1fb0279c67e73b717c9c12f332cbbe103 Mon Sep 17 00:00:00 2001 From: aaarrush9 Date: Fri, 5 Jul 2024 15:41:33 +0000 Subject: [PATCH] my new nada program --- nohup.out | 14 ++++++ .../client_code/run_my_first_program.py | 45 ++++++++++++++++++ .../nada-project.toml | 7 +++ .../nada_quickstart_programs/src/main.py | 45 ++++++++++++++++++ .../target/main.nada.bin | Bin 0 -> 4100 bytes .../target/secret_addition_complete.nada.bin | Bin 975 -> 975 bytes 6 files changed, 111 insertions(+) create mode 100644 nohup.out create mode 100644 quickstart/nada_quickstart_programs/nada-project.toml create mode 100644 quickstart/nada_quickstart_programs/src/main.py create mode 100644 quickstart/nada_quickstart_programs/target/main.nada.bin diff --git a/nohup.out b/nohup.out new file mode 100644 index 00000000..65cdbce9 --- /dev/null +++ b/nohup.out @@ -0,0 +1,14 @@ +ℹ️ cluster id is 9e68173f-9c23-4acc-ba81-4f079b639964 +ℹ️ using 256 bit prime +ℹ️ storing state in /tmp/.tmpB8yOrG (79.99Gbs available) +🏃 starting nilchain node in: /tmp/.tmpB8yOrG/nillion-chain +⛓ nilchain JSON RPC available at http://127.0.0.1:48102 +⛓ nilchain REST API available at http://localhost:26650 +⛓ nilchain gRPC available at localhost:26649 +🏃 starting node 12D3KooWMvw1hEqm7EWSDEyqTb6pNetUVkepahKY6hixuAuMZfJS +⏳ waiting until bootnode is up... +🏃 starting node 12D3KooWAiwGZUwSUaT2bYVxGS8jmfMrfsanZYkHwH3uL7WJPsFq +🏃 starting node 12D3KooWM3hsAswc7ZT6VpwQ1TCZU4GCYY55nLhcsxCcfjuixW57 +👛 funding nilchain keys +📝 nillion CLI configuration written to /root/.config/nillion/nillion-cli.yaml +🌄 environment file written to /root/.config/nillion/nillion-devnet.env diff --git a/quickstart/client_code/run_my_first_program.py b/quickstart/client_code/run_my_first_program.py index e69de29b..016f31be 100644 --- a/quickstart/client_code/run_my_first_program.py +++ b/quickstart/client_code/run_my_first_program.py @@ -0,0 +1,45 @@ +from nada_dsl import * + +def nada_main(): + # Define the parties for the users + user_1 = Party(name="User 1 🚉") + user_2 = Party(name="User 2 🚉") + + # Define secret inputs for the initial seats, booking requests, and cancellation requests + initial_seats = SecretInteger(Input(name="initial_seats", party=user_1)) # Total seats available + book_seats_user_1 = SecretInteger(Input(name="book_seats_user_1", party=user_1)) + cancel_seats_user_1 = SecretInteger(Input(name="cancel_seats_user_1", party=user_1)) + book_seats_user_2 = SecretInteger(Input(name="book_seats_user_2", party=user_2)) + cancel_seats_user_2 = SecretInteger(Input(name="cancel_seats_user_2", party=user_2)) + + # Calculate the new seat allocation after booking requests + seats_after_booking_user_1 = (initial_seats >= book_seats_user_1).if_else( + initial_seats - book_seats_user_1, + initial_seats + ) + + seats_after_booking_user_2 = (seats_after_booking_user_1 >= book_seats_user_2).if_else( + seats_after_booking_user_1 - book_seats_user_2, + seats_after_booking_user_1 + ) + + # Calculate the new seat allocation after cancellation requests + seats_after_cancellation_user_1 = seats_after_booking_user_2 + cancel_seats_user_1 + seats_after_cancellation_user_2 = seats_after_cancellation_user_1 + cancel_seats_user_2 + + # Output the final seat allocation + final_seats = Output(seats_after_cancellation_user_2, "final_seats", user_1) + + # Output individual bookings and cancellations + booked_seats_user_1 = Output(book_seats_user_1, "booked_seats_user_1", user_1) + cancelled_seats_user_1 = Output(cancel_seats_user_1, "cancelled_seats_user_1", user_1) + booked_seats_user_2 = Output(book_seats_user_2, "booked_seats_user_2", user_2) + cancelled_seats_user_2 = Output(cancel_seats_user_2, "cancelled_seats_user_2", user_2) + + return [ + final_seats, + booked_seats_user_1, + cancelled_seats_user_1, + booked_seats_user_2, + cancelled_seats_user_2 + ] \ No newline at end of file diff --git a/quickstart/nada_quickstart_programs/nada-project.toml b/quickstart/nada_quickstart_programs/nada-project.toml new file mode 100644 index 00000000..da166dde --- /dev/null +++ b/quickstart/nada_quickstart_programs/nada-project.toml @@ -0,0 +1,7 @@ +name = "nada_quickstart_programs" +version = "0.1.0" +authors = [""] + +[[programs]] +path = "src/main.py" +prime_size = 128 diff --git a/quickstart/nada_quickstart_programs/src/main.py b/quickstart/nada_quickstart_programs/src/main.py new file mode 100644 index 00000000..e1a8f1bf --- /dev/null +++ b/quickstart/nada_quickstart_programs/src/main.py @@ -0,0 +1,45 @@ +from nada_dsl import * + +def nada_main(): + # Define the parties for the users + user_1 = Party(name="User 1 🚉") + user_2 = Party(name="User 2 🚉") + + # Define secret inputs for the initial seats, booking requests, and cancellation requests + initial_seats = SecretInteger(Input(name="initial_seats", party=user_1)) # Total seats available + book_seats_user_1 = SecretInteger(Input(name="book_seats_user_1", party=user_1)) + cancel_seats_user_1 = SecretInteger(Input(name="cancel_seats_user_1", party=user_1)) + book_seats_user_2 = SecretInteger(Input(name="book_seats_user_2", party=user_2)) + cancel_seats_user_2 = SecretInteger(Input(name="cancel_seats_user_2", party=user_2)) + + # Calculate the new seat allocation after booking requests + seats_after_booking_user_1 = (initial_seats >= book_seats_user_1).if_else( + initial_seats - book_seats_user_1, + initial_seats + ) + + seats_after_booking_user_2 = (seats_after_booking_user_1 >= book_seats_user_2).if_else( + seats_after_booking_user_1 - book_seats_user_2, + seats_after_booking_user_1 + ) + + # Calculate the new seat allocation after cancellation requests + seats_after_cancellation_user_1 = seats_after_booking_user_2 + cancel_seats_user_1 + seats_after_cancellation_user_2 = seats_after_cancellation_user_1 + cancel_seats_user_2 + + # Output the final seat allocation + final_seats = Output(seats_after_cancellation_user_2, "final_seats", user_1) + + # Output individual bookings and cancellations + booked_seats_user_1 = Output(book_seats_user_1, "booked_seats_user_1", user_1) + cancelled_seats_user_1 = Output(cancel_seats_user_1, "cancelled_seats_user_1", user_1) + booked_seats_user_2 = Output(book_seats_user_2, "booked_seats_user_2", user_2) + cancelled_seats_user_2 = Output(cancel_seats_user_2, "cancelled_seats_user_2", user_2) + + return [ + final_seats, + booked_seats_user_1, + cancelled_seats_user_1, + booked_seats_user_2, + cancelled_seats_user_2 + ] \ No newline at end of file diff --git a/quickstart/nada_quickstart_programs/target/main.nada.bin b/quickstart/nada_quickstart_programs/target/main.nada.bin new file mode 100644 index 0000000000000000000000000000000000000000..a8cf3ff40dc14ac3427c0a744d378a899682e64e GIT binary patch literal 4100 zcmb7HON$dh5RPwL--v=J*kl!wHHw*wAgnCt!9A#pt|E%WHtFc->?F=i)I|}m-UP*i z7a#Zo#9!ba687Y>H>ahEpJa4;U_TkS1W& zZb#Ob?>72$9}>p8Z9uDdRzdCt$Xx)5JgHH-C{_J9r2u}Z?f&xqC7VSIoR_BKF!dDB zuxiL#44~?jLipqU&JBRp0qhTeUWfiLeArCoBp&YE1I|2D?H%Z=$wog$45*1c z6M+)|_8ma~OEy|~u@T&pfV*nR?t?Kla(AyYCP$d9#jtg^75Ry1G_EWz2Foq1ueNHi zJZSvxit(3{k857}?1!l}sLiX;Q+SXLjjNrD7((vmS?L(#TLF#6Z(f@@3L^t?6vRJ* z&MoNYhDIFcX#CCb)AQvJhq!~6{NB#z;rF?-@MIPPgj zP9Fgr8k0BgY>>`AGISXz*DDf3C>qbbGOE6p43wK}vWx+uF+ox-G7xwgtib#^=-pJ% z*oR=cfd;X>m!xg`h<7NQt4$ zidf~MKgjfNytH#IX0C5BD;7Xxxsl2xHCuPy7WL*>EaJq>kqTmEtGViCst|EH92H}` z_L3L+>Ch5*$HeJFk*TL6l^1zS$h0TyB_WG=kp5fJ=%qITkh!6a%%_EVsIta9+Oi&$ zByu#_`4HF^$VHiSM~N&(8ZZ}F<7Z+wVM(GLDJQMdjD#=wt!{J6LE1eE?TD+*9HQ|~}4MW$MK%C(jF+3+A zgruV}>1sXef$pZodh=p(4G9dkr)$ZT8fVCrD5WnFr|iBjr7H+*2#e8mVMB>FiyhH{ zb!}9@xuK6m{ebq%QFCyf)?m-5lyVxHjas7asKI`)$B$a%=4V}*xgT*KiWaJ)8-rolYHDrsp rEZfL|))|J|YLunouKt0cadJ1_Od-eic#$>atcS|ZHf5C~&F0=;%5cXsB d1_l%1C