From 492467015ec8a339eefd816a818e73cbc3fcece8 Mon Sep 17 00:00:00 2001 From: Kamen Mladenov Date: Thu, 30 Jan 2025 13:09:53 +0200 Subject: feat(guests): Add a second example guest --- guests/fibonacci/Cargo.lock | 14 ++++++++++++++ guests/fibonacci/Cargo.toml | 10 ++++++++++ guests/fibonacci/default_public_input.toml | 2 ++ guests/fibonacci/src/lib.rs | 15 +++++++++++++++ 4 files changed, 41 insertions(+) create mode 100644 guests/fibonacci/Cargo.lock create mode 100644 guests/fibonacci/Cargo.toml create mode 100644 guests/fibonacci/default_public_input.toml create mode 100644 guests/fibonacci/src/lib.rs (limited to 'guests') diff --git a/guests/fibonacci/Cargo.lock b/guests/fibonacci/Cargo.lock new file mode 100644 index 0000000..e312d61 --- /dev/null +++ b/guests/fibonacci/Cargo.lock @@ -0,0 +1,14 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "fibonacci" +version = "0.1.0" +dependencies = [ + "guests_macro", +] + +[[package]] +name = "guests_macro" +version = "0.1.0" diff --git a/guests/fibonacci/Cargo.toml b/guests/fibonacci/Cargo.toml new file mode 100644 index 0000000..4fe043c --- /dev/null +++ b/guests/fibonacci/Cargo.toml @@ -0,0 +1,10 @@ +[package] +name = "fibonacci" +version = "0.1.0" +edition = "2021" + +[dependencies] +guests_macro = { version = "0.1.0", path = "../../guests_macro" } + +[features] +no_std = [] diff --git a/guests/fibonacci/default_public_input.toml b/guests/fibonacci/default_public_input.toml new file mode 100644 index 0000000..74b33bc --- /dev/null +++ b/guests/fibonacci/default_public_input.toml @@ -0,0 +1,2 @@ +n = 85 +fN = 259695496911122585 diff --git a/guests/fibonacci/src/lib.rs b/guests/fibonacci/src/lib.rs new file mode 100644 index 0000000..613a5fb --- /dev/null +++ b/guests/fibonacci/src/lib.rs @@ -0,0 +1,15 @@ +#![cfg_attr(feature = "no_std", no_std)] + +#[guests_macro::proving_entrypoint] +pub fn main(n: u8, fN: u64) -> bool { + let mut f0 = 0; + let mut f1 = 1; + + for _ in 1..n { + let fN = f0 + f1; + f0 = f1; + f1 = fN; + } + + f0 == fN +} -- cgit v1.2.3