risczero.com/blog
                                                        π 
                                                        RISC Zeroβs Path to The First Formally Verified RISC-V zkVM
                                                        
                                                    
                                                     
                                                    
                                                    
                                                    The lionβs share of security defects in ZK software come from circuits: one of the big reasons to use a zkVM like RISC Zeroβs is to make it simple to secure your application, because you can write your application in a high level language like Rust and donβt have to write your own circuits. Unfortunately, you still have to trust that we got ours right. Circuits encode a computation as a set of constraints, a bunch of equations that describe the relationship between inputs and outputs for the computation.