diff --git a/README.md b/README.md index fd386dc..4ccb1ef 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,16 @@ miniSTARK allows you to prove the integrity of arbitrary computations to anyone In this example the prover generates a proof that proves integrity of a brainf**k program that outputs "Hello World". The verifier uses the proof, brainf\*\*k source code and output to verify execution integrity without executing the program at all. To run this demo locally: +### Prerequisites to run example +- Ensure `echo $CC` returns `gcc` #prerequisites i.e apples gcc distributed with xcode and +- Ensure `which gcc` returns `/usr/bin/gcc` (MacOSX users) +- Ensure `which cargo` in PATH is the rustup (i.e not homebrew rust install.. etc) version, should return $HOME/.cargo/bin/cargo + ```bash + +Ensure $CC = gcc `echo $CC` i.e apples gcc distributed with xcode and `which gcc` points to /usr/bin/gcc (MacOSX users) +Ensure cargo is the rustup (i.e not homebrew rust install.. etc) version `which cargo` should point to $HOME/.cargo/bin/cargo + # compile shaders (M1 Mac only) # make sure the latest Xcode is installed (cd gpu-poly && make) @@ -99,4 +108,4 @@ The representation of constraints in miniSTARK is much closer to a representatio - [StarkWare](https://starkware.co/) - The company started by the people who invented STARKs. There are so many great things to learn from the people at this company. It's great how public and open their educational material is. Check out: GOAT Eli Ben-Sasson's [STARK math thread](https://twitter.com/EliBenSasson/status/1578380154476208131), Cairo whitepaper ([Video](https://www.youtube.com/watch?v=DTVn0oYLVsE), [PDF](https://eprint.iacr.org/2021/1063.pdf)), [DEEP Method Medium article](https://medium.com/starkware/starkdex-deep-dive-the-stark-core-engine-497942d0f0ab). - [Alan Szepieniec](https://twitter.com/aszepieniec?lang=en) - The [Anatomy of a STARK](https://aszepieniec.github.io/stark-anatomy/) tutorial is (IMHO) the best end-to-end practical resource to understand STARKs. Read through this and the magic of STARKs will start to make sense. [BrainSTARK](https://aszepieniec.github.io/stark-brainfuck/brainfuck) is a fantastic sequel to the STARK Anatomy tutorial and is a practical guide to creating an AIR that proves programs written in the Brainf**k programming language. Check out miniSTARK's [brainf\*\*k example](examples/brainfuck/) which is an implementation of the BrainSTARK AIR. -- [Winterfell](https://github.com/novifinancial/winterfell) - A STARK prover and verifier developed at Facebook by [Bobbin Threadbare](https://twitter.com/bobbinth) and others. This repo was heavily used as a reference for several components: fast Merkle Tree, DEEP composition polynomial, channels, and STARK component traits. Bobbin has some great HackMD articles: [Miden VM program decoder](https://hackmd.io/_aaDBzbWRz6EwQQRtK1pzw), [Memory in Miden VM](https://hackmd.io/@bobbinth/HJr56BKKt), [u32 operations in Miden VM](https://hackmd.io/NC-yRmmtRQSvToTHb96e8Q#u32-operations-in-Miden-VM). \ No newline at end of file +- [Winterfell](https://github.com/novifinancial/winterfell) - A STARK prover and verifier developed at Facebook by [Bobbin Threadbare](https://twitter.com/bobbinth) and others. This repo was heavily used as a reference for several components: fast Merkle Tree, DEEP composition polynomial, channels, and STARK component traits. Bobbin has some great HackMD articles: [Miden VM program decoder](https://hackmd.io/_aaDBzbWRz6EwQQRtK1pzw), [Memory in Miden VM](https://hackmd.io/@bobbinth/HJr56BKKt), [u32 operations in Miden VM](https://hackmd.io/NC-yRmmtRQSvToTHb96e8Q#u32-operations-in-Miden-VM).