Hyle-org / examples

Collection of example contracts to be deployed on Hylé
2 stars 10 forks source link

Fibonacci examples on Hylé #12

Open s0lness opened 3 months ago

s0lness commented 3 months ago

Proving the Nth number of the Fibonacci sequence & verifying it on Hylé, very similar to the Collatz Conjecture example program we already have (documentation).

Aggregating programs in different languages (Circom, Rust, Noir, Cairo. ) to perform this would be a great tutorial for Hylé.

0xTitan commented 3 months ago

Would love to work on this one, i already implemented prime number verification on hylé : https://github.com/0xTitan/hyle_prime_number I could use same approach for Fibonacci. Thanks

s0lness commented 3 months ago

That's super cool! Didi you mangae to deploy a contract on Hylé?

Le mer. 21 août 2024 à 10:21, 0xTitan @.***> a écrit :

Would love to work on this one, i already implemented prime number verification on hylé : https://github.com/0xTitan/hyle_prime_number I could use same approach for Fibonacci. Thanks

— Reply to this email directly, view it on GitHub https://github.com/Hyle-org/examples/issues/12#issuecomment-2301577105, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKNZQCSJKBNFX7AFT4BFAVLZSRL2PAVCNFSM6AAAAABM3R4HZCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMBRGU3TOMJQGU . You are receiving this because you authored the thread.Message ID: @.***>

0xTitan commented 3 months ago

I had issue at that time to deploy the contract. I will retry and use telegram support if needed.

0xTitan commented 3 months ago

I am applying to this issue via OnlyDust platform.

My background and how it can be leveraged

I already try Hylé on my own by doing prime number check in rust. I have knowledge in cairo and i started to look at circom for a project i'm working on.

How I plan on tackling this issue

Will use the same approach as i did for prime number check here : https://github.com/0xTitan/hyle_prime_number

PoulavBhowmick03 commented 3 months ago

I am applying to this issue via OnlyDust platform.

My background and how it can be leveraged

I'm Poulav Bhowmick, a software engineer at Invisible Studios with a robust background in TypeScript, Rust, Solidity Cairo, fullstack development and blockchain technology. My experience includes building robust applications, optimizing functionalities and blockchain integration. I have actively participated in events and open source contributions, enhancing my capability to tackle real-world tech challenges. My projects can be viewed on my GitHub Profile and OnlyDust Profile. Plus I´m active member of Starknet community🇷.

How I plan on tackling this issue

I will be working on implementing a Fibonacci sequence example for Hylé, similar to the existing Collatz Conjecture program. Here's the plan:

Define the Problem:

The goal is to prove the Nth number of the Fibonacci sequence and verify it on Hylé. This involves writing a program that computes the Fibonacci sequence and integrates it with Hylé's zero-knowledge proof system. Program Implementation:

CLI Application: Extend the current CLI tool to handle Fibonacci sequence computations. The commands will include Next for computing the next Fibonacci number and Reset for resetting the sequence. Proof Function: Modify the prove function to handle Fibonacci calculations. It will involve updating the state transition logic to compute Fibonacci numbers based on the input. Hylé Program: Implement the logic for computing the Fibonacci sequence in the Hylé program. This will involve updating the main function to include Fibonacci logic instead of the Collatz Conjecture. Integration and Testing:

Verification: Ensure the program generates correct Fibonacci numbers and that the proof is correctly generated and verified using Hylé. Documentation: Update the documentation to include examples of how to use the new Fibonacci program and explain the proof generation process. Code Review:

After implementing the changes, I will submit a pull request with the updated code and documentation. I will also provide detailed comments and explanations for the modifications made. Feel free to provide any feedback or additional suggestions!

bitfalt commented 3 months ago

I am applying to this issue via OnlyDust platform.

My background and how it can be leveraged

Hii, my name is Daniel and I'm a software and web3 developer. I've done smart contracts using Cairo and recently started exploring Rust. I'm also doing a Starknet Bootcamp where I learned about provable languages, zk-proofs and the basics of a program. I'm also a member of the Dojo Coding community.

How I plan on tackling this issue

The way I would tackle the issue is in the following way:

ScottyDavies commented 3 months ago

I am applying to this issue via OnlyDust platform.

My background and how it can be leveraged

As a software engineer, my background can be leveraged to contribute to the Fibonacci sequence verification program for Hylé. I have a strong understanding of cryptographic primitives, experience with zero-knowledge proofs, and expertise in a wide range of programming languages, including Circom, Rust, Noir, and Cairo.

How I plan on tackling this issue

I would approach this issue with following steps Understand the Cryptographic Foundations: First, I would familiarize myself with the cryptographic concepts behind SNARK-based verification, such as elliptic curve cryptography and zero-knowledge proofs. Set up the Development Environment: I would set up a development environment that includes the necessary tools and libraries for working with Hylé, such as Circom, snarkJS, and any frontend frameworks or libraries. Implement the Verification UI: I would design and implement a user-friendly interface that allows users to input the Nth Fibonacci number and the corresponding proof. This would involve creating the necessary UI components and integrating them with the backend verification logic. Integrate with the Hylé Smart Contract: Next, I would integrate the frontend UI with the Hylé smart contract that handles the Fibonacci sequence verification. This would involve designing the contract's interface and ensuring seamless communication between the frontend and the contract. Optimize the User Experience: To provide a smooth and efficient user experience, I would focus on optimizing the UI, ensuring responsive design, and implementing features like loading indicators, error handling, and clear feedback to the user. Implement Cross-Language Interoperability: To create a comprehensive tutorial, I would work with the backend developers to integrate the Fibonacci sequence verification programs written in Circom, Rust, Noir, and Cairo. This would involve designing the necessary interfaces and ensuring smooth communication between the different language implementations. Test and Iterate: Throughout the development process, I would thoroughly test the Fibonacci sequence verification functionality, both on the frontend and the backend, and iterate on the design and implementation to ensure correctness, reliability, and overall user satisfaction.

ShantelPeters commented 3 months ago

I am applying to this issue via OnlyDust platform.

My background and how it can be leveraged

With experience in frontend and blockchain development, particularly with Starknet and Cairo, I can effectively tackle the task of proving and verifying the Nth number of the Fibonacci sequence. My background in deploying smart contracts and integrating blockchain functionality will help in implementing this proof in various languages (Circom, Rust, Noir, Cairo) and creating a comprehensive tutorial for Hylé.

How I plan on tackling this issue

To prove the Nth number of the Fibonacci sequence and verify it on Hylé, I would:

  1. Implement Proofs: Develop Fibonacci sequence proofs in Circom, Rust, Noir, and Cairo, leveraging their respective zk-friendly features.
  2. Verification on Hylé: Integrate these proofs into Hylé for verification, ensuring compatibility and correctness.
  3. Create Tutorial: Document the process, including code examples and explanations, to serve as a comprehensive guide for Hylé users.
chachaleo commented 3 months ago

I am applying to this issue via OnlyDust platform.

My background and how it can be leveraged

I have a degree in applied mathematics engineering and have worked as a ZKML Engineer, I have experience in provable mathematics

How I plan on tackling this issue

Take example on the conjecture example from the docs

wraitii commented 3 months ago

Hello all, thanks for applying 😄

Assigning this one to @0xTitan Keep in mind that we support Cairo but not starknet extensions. We have Risc0 in Collatz and Cairo in Vibe Check.

You've joined TG already, I think that's the best place for questions. We try to keep the docs at https://docs.hyle.eu up-to-date but things change quickly.