verus
Verified Rust for low-level systems code
File Explorer
Download Latest Version (.zip)- bug_report.md
- build.yml
- ci.yml
- coverage.yml
- crate-updates.yml
- nightly-verita.yml
- pages.yml
- README.md
- release.yml
- rolling-release.yml
- CODEOWNERS
- pull_request_template.md
- launch.json.template
- settings.json.template
- tasks.json.template
- settings.json
- ci.yml
- FUNDING.yml
- Cargo.toml
- update.rs
- anyhow-1.0.58.rs
- cargo-tally-1.0.8.rs
- cxx-1.0.69.rs
- erased-serde-0.3.21.rs
- serde-1.0.137.rs
- serde_derive-1.0.137.rs
- syn-1.0.97.rs
- Cargo.toml
- update-examples.rs
- .tokeignore
- input.rs
- output.prettyplease.rs
- output.rustc.rs
- output.rustfmt.rs
- round_trip.rs
- .gitignore
- Cargo.toml
- algorithm.rs
- attr.rs
- classify.rs
- convenience.rs
- data.rs
- expr.rs
- file.rs
- fixup.rs
- generics.rs
- item.rs
- iter.rs
- lib.rs
- lifetime.rs
- lit.rs
- mac.rs
- pat.rs
- path.rs
- precedence.rs
- ring.rs
- stmt.rs
- token.rs
- ty.rs
- test.rs
- test_precedence.rs
- .gitattributes
- .gitignore
- build.rs
- Cargo.toml
- LICENSE-APACHE
- LICENSE-MIT
- README.md
- ci.yml
- FUNDING.yml
- file.rs
- rust.rs
- cfg.rs
- clone.rs
- css.rs
- debug.rs
- eq.rs
- file.rs
- fold.rs
- full.rs
- gen.rs
- hash.rs
- json.rs
- lookup.rs
- main.rs
- operand.rs
- parse.rs
- snapshot.rs
- version.rs
- visit.rs
- visit_mut.rs
- workspace_path.rs
- Cargo.toml
- README.md
- Cargo.toml
- import.sh
- main.rs
- parse.rs
- README.md
- main.rs
- Cargo.toml
- README.md
- main.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- README.md
- main.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- README.md
- main.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- README.md
- README.md
- create_token_buffer.rs
- parse_file.rs
- parse_literal.rs
- .gitignore
- Cargo.toml
- lib.rs
- Cargo.toml
- clone.rs
- debug.rs
- eq.rs
- fold.rs
- hash.rs
- token.css
- visit.rs
- visit_mut.rs
- attr.rs
- bigint.rs
- buffer.rs
- classify.rs
- custom_keyword.rs
- custom_punctuation.rs
- data.rs
- derive.rs
- discouraged.rs
- drops.rs
- error.rs
- export.rs
- expr.rs
- ext.rs
- file.rs
- fixup.rs
- gen_helper.rs
- generics.rs
- group.rs
- ident.rs
- item.rs
- lib.rs
- lifetime.rs
- lit.rs
- lookahead.rs
- mac.rs
- macros.rs
- meta.rs
- op.rs
- parse.rs
- parse_macro_input.rs
- parse_quote.rs
- pat.rs
- path.rs
- precedence.rs
- print.rs
- punctuated.rs
- restriction.rs
- scan_expr.rs
- sealed.rs
- span.rs
- spanned.rs
- stmt.rs
- thread.rs
- token.rs
- tt.rs
- ty.rs
- verbatim.rs
- verus.rs
- whitespace.rs
- eq.rs
- mod.rs
- parse.rs
- visit.rs
- gen.rs
- mod.rs
- Cargo.toml
- lib.rs
- mod.rs
- issue1108.rs
- issue1235.rs
- mod.rs
- progress.rs
- mod.rs
- regression.rs
- test_asyncness.rs
- test_attribute.rs
- test_derive_input.rs
- test_expr.rs
- test_generics.rs
- test_grouping.rs
- test_ident.rs
- test_item.rs
- test_lit.rs
- test_meta.rs
- test_parse_buffer.rs
- test_parse_quote.rs
- test_parse_stream.rs
- test_pat.rs
- test_path.rs
- test_precedence.rs
- test_punctuated.rs
- test_receiver.rs
- test_round_trip.rs
- test_shebang.rs
- test_size.rs
- test_stmt.rs
- test_token_trees.rs
- test_ty.rs
- test_unparenthesize.rs
- test_visibility.rs
- zzz_stable.rs
- .gitattributes
- .gitignore
- build.rs
- Cargo.toml
- LICENSE-APACHE
- LICENSE-MIT
- README.md
- rustfmt.toml
- syn.json
- cuckoo.rs
- main.rs
- rwlock.rs
- assert_by_compute.rs
- bst_map.rs
- bst_map_generic.rs
- bst_map_type_invariant.rs
- calc.rs
- const.rs
- datatypes.rs
- equality.rs
- exec_attr.rs
- exec_spec_unverified.rs
- exec_spec_verified.rs
- ext_equal.rs
- external_trait_specs.rs
- getting_started.rs
- higher_order_fns.rs
- integers.rs
- interior_mutability.rs
- invariants.rs
- iterators.rs
- lib_examples.rs
- logatom.rs
- modes.rs
- nonlinear_bitvec.rs
- opaque.rs
- overflow.rs
- pervasive_example.rs
- quants.rs
- recursion.rs
- references.rs
- requires_ensures.rs
- requires_ensures_edit.rs
- strings.rs
- traits.rs
- circular_by_d.rs
- integer_ring.rs
- integer_ring_bound_check.rs
- agreement.rs
- count_to_two.rs
- log.rs
- monotonic_counter.rs
- oneshot.rs
- rwlock.rs
- strategy_option.rs
- counting_to_2.rs
- counting_to_n.rs
- counting_to_n_atomic.rs
- fifo.rs
- pcell_example.rs
- rc.rs
- ref_cell.rs
- unverified_counting_to_2.rs
- unverified_counting_to_n
- unverified_counting_to_n.rs
- unverified_fifo.rs
- unverified_rc.rs
- adder.rs
- adder_generic.rs
- adder_with_max.rs
- arc.rs
- conditional.rs
- counting.rs
- disk_example.rs
- dist_rwlock.rs
- flat_combine.rs
- interner.rs
- leader_election_complete.rs
- maps.rs
- petersons_algorithm.rs
- refinement.rs
- refinement_labels.rs
- rwlock.rs
- top_sort_dfs.rs
- chars_iterator.rs
- num.rs
- option_test.rs
- rc_test.rs
- result.rs
- template.rs
- vec_test.rs
- vecdeque_test.rs
- chapter-1-22.rs
- chapter-2-1.rs
- chapter-2-2.rs
- chapter-2-3.rs
- chapter-6-1.rs
- adts.rs
- adts_eq.rs
- assert_by_compute.rs
- assertions.rs
- assorted_demo.rs
- atomic_increment.rs
- atomics.rs
- basic_failure.rs
- basic_lock1.rs
- basic_lock2.rs
- bitmap.rs
- bitvector_basic.rs
- bitvector_equivalence.rs
- bitvector_garbage_collection.rs
- broadcast_proof.rs
- calc.rs
- cells.rs
- datatypes.rs
- debug.rs
- debug_expand.rs
- doubly_linked.rs
- doubly_linked_xor.rs
- entry_api.rs
- even_cell.rs
- exec_termination_example.rs
- extensionality.rs
- external.rs
- float.rs
- fun_ext.rs
- generics.rs
- helping.rs
- imo_1988_6.rs
- impl_basic.rs
- integers.rs
- invariants.rs
- logatom_lib.rs
- mergesort.rs
- modules.rs
- multiset.rs
- nevd_script.rs
- overflow.rs
- playground.rs
- power_of_2.rs
- prelude.rs
- proposal-rw2022.rs
- quantifiers.rs
- README.md
- recommends.rs
- recursion.rs
- recursive_types.rs
- rfmig_script.rs
- rw2022_script.rs
- rwlock_vstd.rs
- set_from_vec.rs
- statements.rs
- statics.rs
- structural.rs
- syntax.rs
- syntax_attr.rs
- test.rs
- test_expand_errors.rs
- thread.rs
- trait_for_fn.rs
- traits.rs
- trigger_loops.rs
- vectors.rs
- verified_vec.rs
- config.toml
- ast.rs
- ast_util.rs
- block_to_assert.rs
- closure.rs
- context.rs
- def.rs
- emitter.rs
- focus.rs
- lib.rs
- main.rs
- messages.rs
- model.rs
- parser.rs
- printer.rs
- profiler.rs
- remove_asserts.rs
- scope_map.rs
- singular_manager.rs
- smt_process.rs
- smt_verify.rs
- tests.rs
- typecheck.rs
- util.rs
- var_to_const.rs
- visitor.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- auto_spec.rs
- exec_spec.rs
- hooks.rs
- mod.rs
- set_build.rs
- spec_derive.rs
- atomic_ghost.rs
- attr_block_trait.rs
- attr_rewrite.rs
- calc_macro.rs
- enum_synthesize.rs
- fndecl.rs
- is_variant.rs
- lib.rs
- rustdoc.rs
- struct_decl_inv.rs
- structural.rs
- syntax.rs
- syntax_trait.rs
- topological_sort.rs
- unerased_proxies.rs
- Cargo.toml
- cli.rs
- lib.rs
- main.rs
- metadata.rs
- plan.rs
- subcommands.rs
- test_utils.rs
- toolchains.rs
- vstd_build.rs
- README.md
- test_build.rs
- test_focus.rs
- test_late_args.rs
- test_toolchain.rs
- test_verify.rs
- test_verus_arg_fwd.rs
- test_vstd_sources.rs
- 0.2026.06.07.cd03505.toml
- build.rs
- Cargo.toml
- create_manifest.rs
- installed.rs
- lib.rs
- tests.rs
- versions.rs
- Cargo.toml
- mut-ref-cons-example-1.png
- mut-ref-cons-example-2.png
- verus-analyzer-error-example.png
- verus-rust.svg
- verusdoc-example.png
- assert-mut-ref.md
- assert_assume.md
- assert_by.md
- assert_by_compute.md
- binary_search.md
- bitvec.md
- break.md
- breaking_proofs_into_pieces.md
- broadcast_proof.md
- calc.md
- call-from-unverified-code.md
- calling-unverified-from-verified.md
- calling-verified-from-unverified.md
- cargo_verus.md
- checklist.md
- complex_ownership.md
- concurrency.md
- const.md
- container_bst.md
- container_bst_all_source.md
- container_bst_clone.md
- container_bst_first_draft.md
- container_bst_generic.md
- container_bst_mut_refs.md
- container_bst_type_invariant.md
- contributed.md
- datatypes.md
- datatypes_enum.md
- datatypes_struct.md
- develop_proofs.md
- equality.md
- erasure.md
- exec_attr.md
- exec_closures.md
- exec_funs_as_values.md
- exec_lib.md
- exec_spec.md
- exec_termination.md
- exec_to_spec.md
- exists.md
- extensional_equality.md
- external_trait_specifications.md
- features.md
- for.md
- forall.md
- getting_started.md
- getting_started_cmd_line.md
- getting_started_vscode.md
- ghost_vs_exec.md
- guarantees.md
- higher-order-fns.md
- ide_support.md
- induction.md
- install-singular.md
- integers.md
- interacting-with-unverified-code.md
- interior_mutability.md
- invariants.md
- iterator-specs-finite.md
- iterator-specs-infinite.md
- iterator-specs.md
- iterators.md
- lex_mutual.md
- llmforverusproof.md
- llms.md
- logatom-call.md
- logatom-open.md
- logatom-spec.md
- logatom.md
- memory-safety.md
- modes.md
- multitriggers.md
- mutable-references.md
- mutation-references-borrowing.md
- nonlinear.md
- opaque.md
- operators.md
- overflow.md
- overview.md
- performance.md
- pervasive.md
- pointers.md
- prefix-and-or.md
- profiling.md
- projects.md
- proof_functions.md
- quantproofs.md
- quants.md
- recursion.md
- recursion_loops.md
- ref-extensional-equality.md
- reference-as.md
- reference-assert-by-prover.md
- reference-assert-by.md
- reference-assert-forall-by.md
- reference-assert.md
- reference-assume-specification.md
- reference-assume.md
- reference-at-sign.md
- reference-attributes.md
- reference-chained-op.md
- reference-decreases-to.md
- reference-decreases.md
- reference-exec-signature.md
- reference-flag-record.md
- reference-global.md
- reference-has.md
- reference-implication.md
- reference-is.md
- reference-matches.md
- reference-opens-invariants.md
- reference-pointers-cells.md
- reference-proof-signature.md
- reference-prover-mode-bit-vector.md
- reference-prover-mode-compute.md
- reference-prover-mode-integer-ring.md
- reference-prover-mode-nonlinear.md
- reference-recommends.md
- reference-returns.md
- reference-reveal-hide.md
- reference-reveal-strlit.md
- reference-signature-fnonce.md
- reference-signature-inheritance.md
- reference-spec-index.md
- reference-spec-signature.md
- reference-specification-language.md
- reference-type-invariants.md
- reference-types.md
- reference-unions.md
- reference-unwind-sig.md
- reference-var-modes.md
- requires_ensures.md
- smt_failures.md
- smt_perf_overview.md
- spec-arithmetic.md
- spec-bit-ops.md
- spec-choose.md
- spec-equality.md
- spec-expressions.md
- spec-operator-precedence.md
- spec-quantifiers.md
- spec-rust-subset.md
- spec_closures.md
- spec_functions.md
- spec_lib.md
- spec_vs_proof.md
- specs.md
- static.md
- strings.md
- SUMMARY.md
- syntax.md
- tcb.md
- traits.md
- triangle.md
- trigger-annotations.md
- verus_macro_intro.md
- verusdoc.md
- vstd.md
- while.md
- .gitignore
- book.toml
- custom-admonitions.py
- README.md
- verus-grammar.py
- Deprecated-and-recommended-syntax-and-upcoming-changes.md
- Goals.md
- Home.md
- Notes-on-Rust-ghost-types.md
- README.md
- Status-currently-supported-Rust-features.md
- Verus-Retreat-2023.md
- Verus-Retreat-2024.md
- modes.md
- record-history.md
- trait-implementation-notes.md
- trait-notes.md
- version-bumping.md
- default.html
- algoveri.md
- alpha-verus.md
- anvil.md
- atmosphere-kisv.md
- atmosphere-sosp.md
- auto-verus.md
- beyond-isolation.md
- cazamariposas.md
- cca-specs.md
- corten-mm.md
- expert-proof-writing.md
- exverus.md
- ghost-linear.md
- graphs.md
- hance-thesis.md
- ironfleet-kv.md
- kverus.md
- leaf.md
- llm-mainstream.md
- mimalloc.md
- nr.md
- owlc.md
- persistent-storage.md
- power.md
- practical-foundation.md
- proof-plumber.md
- psv.md
- rag-verus.md
- rlsf-verified.md
- rong-thesis.md
- safe-array.md
- safe-verus.md
- tla.md
- verdict.md
- vericoding.md
- vericontest.md
- verified-ostd.md
- verified-pagetable.md
- verismo.md
- veristruct.md
- verus-belt.md
- verusage.md
- verusyn.md
- vest.md
- base.css
- index.css
- .gitignore
- _config.yml
- award.jpg
- index.md
- Makefile
- counting-to-2.md
- counting-to-n-again.md
- counting-to-n.md
- hash-table.md
- producer-consumer-queue.md
- rc-exercises.md
- rc.md
- refcount.md
- rust-counting-to-2.md
- rust-counting-to-n.md
- rust-producer-consumer-queue.md
- rust-rc.md
- rwlock.md
- src-counting-to-2.md
- src-counting-to-n.md
- src-producer-consumer-queue.md
- src-rc.md
- counting-to-n-diagram.png
- fifo-head-tail.png
- fifo-protocol-perspective.png
- rc-ghost-diagram-ghost-only.png
- rc-ghost-diagram.png
- strategy-reference-examples.png
- birds-eye.md
- components.md
- high-level-idea.md
- intro.md
- invariants.md
- macro-generated-reference.md
- macro-high-level-reference.md
- monoid-formalism.md
- operations.md
- properties.md
- refinements-reference.md
- state-machine-reference.md
- strategy-bool.md
- strategy-constant.md
- strategy-count.md
- strategy-map.md
- strategy-multiset.md
- strategy-not-tokenized.md
- strategy-option.md
- strategy-persistent-bool.md
- strategy-persistent-map.md
- strategy-persistent-option.md
- strategy-reference.md
- strategy-set.md
- strategy-storage-map.md
- strategy-storage-option.md
- strategy-variable.md
- SUMMARY.md
- token-exchanges-as-transitions.md
- tokenization-reference.md
- tokenized-overview.md
- tokenized.md
- transition-language.md
- tutorial-again.md
- tutorial-by-example.md
- .gitignore
- book.toml
- default.html
- verus-color.png
- verus-color.svg
- verus-gray.png
- verus-gray.svg
- verus-text-dark.svg
- verus-text-light.svg
- base.css
- logo.css
- .gitignore
- _config.yml
- Gemfile
- Gemfile.lock
- jekyll-serve-docker.sh
- logo.html
- CARGO-VERUS.md
- migration-iterators.md
- migration-mut-ref.md
- project-goals.md
- verus-demo.png
- vscode-demo.gif
- zulip-icon-circle.svg
- attributes.rs
- automatic_derive.rs
- boundary_suggestions.rs
- buckets.rs
- cargo_verus.rs
- cargo_verus_dep_tracker.rs
- commands.rs
- config.rs
- context.rs
- debugger.rs
- def.rs
- driver.rs
- erase.rs
- expand_errors_driver.rs
- external.rs
- externs.rs
- file_loader.rs
- fn_call_to_vir.rs
- hir_hide_reveal_rewrite.rs
- import_export.rs
- lib.rs
- main.rs
- profiler.rs
- resolve_traits.rs
- reveal_hide.rs
- rust_intrinsics_to_vir.rs
- rust_to_vir.rs
- rust_to_vir_adts.rs
- rust_to_vir_base.rs
- rust_to_vir_ctor.rs
- rust_to_vir_expr.rs
- rust_to_vir_func.rs
- rust_to_vir_global.rs
- rust_to_vir_impl.rs
- rust_to_vir_trait.rs
- singular.rs
- spans.rs
- trait_check.rs
- trait_check_ast.rs
- trait_check_emit.rs
- trait_check_generate.rs
- trait_conflicts.rs
- user_filter.rs
- util.rs
- verifier.rs
- verus_items.rs
- build.rs
- Cargo.toml
- NOTES.md
- build_vstd.rs
- main.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- main.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- main.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- lib.rs
- main.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- .gitignore
- mod.rs
- adts.rs
- adts_generics.rs
- adts_opaque.rs
- arrays.rs
- assert_bitvector_by.rs
- assert_by_compute.rs
- assert_forall_by.rs
- assoc_type_impls.rs
- async_functions.rs
- atomic_lib.rs
- atomics.rs
- basic.rs
- bitvector.rs
- boundary_suggestions.rs
- broadcast_forall.rs
- btree.rs
- byte_char.rs
- byte_string.rs
- calc.rs
- cargo.rs
- cell_lib.rs
- char.rs
- choose.rs
- closures.rs
- compile.rs
- consts.rs
- contrib.rs
- control_flow.rs
- core_special_setup.rs
- cow.rs
- dafny_axioms.rs
- default_trait.rs
- eq_cmp.rs
- erase.rs
- examples.rs
- exec_closures.rs
- exec_spec_unverified.rs
- exec_spec_verified.rs
- exec_termination.rs
- expand_errors.rs
- expr_stmts.rs
- ext_equal.rs
- external_fn_specification.rs
- external_traits.rs
- external_type_specification.rs
- float.rs
- fndef_types.rs
- functions.rs
- generics.rs
- harness.rs
- hash.rs
- impl.rs
- index.rs
- inline.rs
- integer_ring.rs
- integers.rs
- iterators.rs
- layout.rs
- let_else.rs
- lifetime.rs
- literals.rs
- logatom.rs
- loop_isolation_boundary.rs
- loops.rs
- loops_havoc.rs
- loops_no_spinoff.rs
- maps.rs
- marker_traits.rs
- match.rs
- modes.rs
- modules.rs
- multiset.rs
- mut_refs.rs
- mut_refs_closures.rs
- mut_refs_libs.rs
- mut_refs_loops.rs
- mut_refs_modes.rs
- mut_refs_old.rs
- mut_refs_patterns.rs
- mut_refs_slices_arrays.rs
- mut_refs_temporaries.rs
- mut_refs_time_travel.rs
- mut_refs_unions.rs
- mutable_params.rs
- nested_items.rs
- never_type.rs
- no_cheating.rs
- nonlinear.rs
- opaque_reveal.rs
- opaque_types.rs
- open_invariant.rs
- operators.rs
- option.rs
- output_json.rs
- overflow.rs
- partial_eq.rs
- proof_closures.rs
- proof_in_spec.rs
- proph.rs
- prophecy.rs
- quantifiers.rs
- raw_ptrs.rs
- real.rs
- recommends.rs
- recursion.rs
- recursive_types.rs
- refs.rs
- regression.rs
- results.rs
- return.rs
- returns_postcondition.rs
- safe_api.rs
- scope.rs
- seqs.rs
- sets.rs
- shr_ref_struct_wrap.rs
- size_of.rs
- slices.rs
- spec_derive.rs
- state_machines.rs
- std.rs
- strings.rs
- struct_with_invariants.rs
- structural.rs
- summer_school.rs
- syntax_attr.rs
- traits.rs
- traits_dyn.rs
- traits_extend_ensures.rs
- traits_modules.rs
- traits_modules_pub_crate.rs
- triggers.rs
- ui.rs
- unions.rs
- unsafe.rs
- unwind.rs
- user_defined_type_invariants.rs
- utf8.rs
- vec.rs
- verifier_assume_allow.rs
- when_used_as_spec.rs
- z3_restart.rs
- Cargo.toml
- examples.rs
- lib.rs
- rust_code.rs
- Cargo.toml
- expr_use_visitor.rs
- upvar.rs
- LICENSE-APACHE
- LICENSE-MIT
- instruction.rs
- mod.rs
- parse.rs
- as_constant.rs
- as_operand.rs
- as_place.rs
- as_rvalue.rs
- as_temp.rs
- category.rs
- into.rs
- mod.rs
- stmt.rs
- buckets.rs
- match_pair.rs
- mod.rs
- test.rs
- user_ty.rs
- util.rs
- block.rs
- cfg.rs
- coverageinfo.rs
- misc.rs
- mod.rs
- scope.rs
- block.rs
- expr.rs
- mod.rs
- check_match.rs
- const_to_pat.rs
- migration.rs
- mod.rs
- constant.rs
- mod.rs
- print.rs
- util.rs
- check_tail_calls.rs
- check_unsafety.rs
- errors.rs
- lib.rs
- Cargo.toml
- LICENSE-APACHE
- LICENSE-MIT
- verus.rs
- verus_builder.rs
- verus_expr.rs
- verus_time_travel_prevention.rs
- ast.rs
- case_macro.rs
- check_bind_stmts.rs
- check_birds_eye.rs
- concurrency_tokens.rs
- field_access_visitor.rs
- ident_visitor.rs
- inherent_safety_conditions.rs
- lemmas.rs
- lib.rs
- parse_token_stream.rs
- parse_transition.rs
- safety_conditions.rs
- self_type_visitor.rs
- simplification.rs
- simplify_asserts.rs
- to_relation.rs
- to_token_stream.rs
- token_transition_checks.rs
- transitions.rs
- util.rs
- vstd_path.rs
- Cargo.toml
- main.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- config.toml
- attribution.rs
- cli.rs
- config.rs
- deps.rs
- files.rs
- lib.rs
- main.rs
- stats.rs
- syn_visitor.rs
- full.rs
- no_verus.rs
- spec_fn.rs
- verus_outside.rs
- mod.rs
- count.rs
- parseable.rs
- .gitignore
- Cargo.toml
- README.md
- .gitignore
- _common_string_search.sh
- panicked_in.sh
- README.md
- rlimit_exceeded.sh
- time_exceeded.sh
- build-run-log.sh
- coverage.sh
- docs-cargo.sh
- docs.sh
- get-cvc5.ps1
- get-cvc5.sh
- get-z3.ps1
- get-z3.sh
- render-verus-log-call-graphs.sh
- run-tests.sh
- rust-verify.sh
- update-rustc-forks.sh
- main.rs
- record.rs
- record_history.rs
- build.rs
- Cargo.toml
- main.rs
- Cargo.toml
- assoc_types_to_air.rs
- ast.rs
- ast_simplify.rs
- ast_sort.rs
- ast_to_sst.rs
- ast_to_sst_crate.rs
- ast_to_sst_func.rs
- ast_util.rs
- ast_visitor.rs
- autospec.rs
- bitvector_to_air.rs
- check_ast_flavor.rs
- closures.rs
- context.rs
- datatype_to_air.rs
- def.rs
- early_exit_cf.rs
- expand_errors.rs
- headers.rs
- heuristics.rs
- interpreter.rs
- inv_masks.rs
- layout.rs
- lib.rs
- messages.rs
- modes.rs
- opaque_type_to_air.rs
- patterns.rs
- place_preconditions.rs
- poly.rs
- prelude.rs
- printer.rs
- prune.rs
- reachability.rs
- recursion.rs
- recursive_types.rs
- resolution_inference.rs
- resolution_types.rs
- resolve_axioms.rs
- safe_api.rs
- scc.rs
- sst.rs
- sst_elaborate.rs
- sst_to_air.rs
- sst_to_air_func.rs
- sst_util.rs
- sst_vars.rs
- sst_visitor.rs
- traits.rs
- triggers.rs
- triggers_auto.rs
- unicode.rs
- user_defined_type_invariants.rs
- util.rs
- visitor.rs
- well_formed.rs
- Cargo.toml
- lib.rs
- Cargo.toml
- div_internals.rs
- div_internals_nonlinear.rs
- general_internals.rs
- mod.rs
- mod_internals.rs
- mod_internals_nonlinear.rs
- mul_internals.rs
- mul_internals_nonlinear.rs
- div_mod.rs
- logarithm.rs
- mod.rs
- mul.rs
- overflow.rs
- power.rs
- power2.rs
- README.md
- invcell.rs
- pcell.rs
- pcell_maybe_uninit.rs
- map.rs
- mod.rs
- multiset.rs
- option.rs
- seq.rs
- set.rs
- string.rs
- mod.rs
- agree.rs
- auth.rs
- exclusive.rs
- frac.rs
- mod.rs
- option.rs
- product.rs
- sum.rs
- frac_opt.rs
- ghost_var.rs
- imap.rs
- iset.rs
- map.rs
- mod.rs
- seq.rs
- set.rs
- algebra.rs
- lib.rs
- mod.rs
- pcm.rs
- relations.rs
- storage_protocol.rs
- alloc.rs
- atomic.rs
- bits.rs
- borrow.rs
- btree.rs
- char.rs
- clone.rs
- cmp.rs
- control_flow.rs
- convert.rs
- core.rs
- default.rs
- fmt.rs
- hash.rs
- iter.rs
- manually_drop.rs
- maybe_uninit.rs
- mod.rs
- nonzero.rs
- num.rs
- ops.rs
- option.rs
- range.rs
- result.rs
- slice.rs
- smart_ptrs.rs
- vec.rs
- vecdeque.rs
- array.rs
- atomic.rs
- atomic_ghost.rs
- bits.rs
- build.rs
- bytes.rs
- calc_macro.rs
- Cargo.toml
- cell.rs
- compute.rs
- endian.rs
- float.rs
- function.rs
- future.rs
- hash_map.rs
- hash_set.rs
- imap.rs
- imap_lib.rs
- invariant.rs
- iset.rs
- iset_lib.rs
- laws_cmp.rs
- laws_eq.rs
- layout.rs
- logatom.rs
- map.rs
- map_lib.rs
- math.rs
- modes.rs
- multiset.rs
- multiset_lib.rs
- pervasive.rs
- predicate.rs
- prelude.rs
- proph.rs
- raw_ptr.rs
- relations.rs
- rwlock.rs
- seq.rs
- seq_lib.rs
- set.rs
- set_lib.rs
- shared.rs
- simple_pptr.rs
- slice.rs
- SOURCES.md
- state_machine_internal.rs
- string.rs
- thread.rs
- tokens.rs
- utf8.rs
- view.rs
- vstd.rs
- wrapping.rs
- main.rs
- Cargo.toml
- .envrc
- .gitignore
- Cargo.lock
- Cargo.toml
- CODE.md
- external-deps.toml
- rustfmt.toml
- consts.rs
- issues-fetch.py
- issues-render-adopt-an-issue.py
- releases-fetch.py
- config.toml
- build.rs
- check.rs
- clean.rs
- clippy.rs
- cmd.rs
- fmt.rs
- metadata.rs
- mod.rs
- nextest.rs
- run.rs
- test.rs
- update.rs
- cli.rs
- context.rs
- macros.rs
- main.rs
- smt_solver.rs
- util.rs
- .gitignore
- Cargo.lock
- Cargo.toml
- README.md
- analyze.py
- get-stderr.py
- summarize.py
- config.rs
- dependencies.rs
- main.rs
- output.rs
- .gitignore
- Cargo.toml
- README.md
- run_configuration_all.toml
- activate
- activate.bat
- activate.fish
- activate.ps1
- shell.nix
- .git-blame-ignore-revs
- .gitignore
- BUILD.md
- CONTRIBUTING.md
- INSTALL.md
- LICENSE
- README.md
- rust-toolchain.toml
๐ Installation Guide
1. Get the code
git clone https://github.com/verus-lang/verus
Downloads the entire project code from GitHub to your computer.
cd verus
Moves into the project folder you just downloaded.
2. Rust
Medium RecommendedPrerequisites
- Git Needed to download the project code from GitHub.
- Rust (rustup) Installing via rustup also installs cargo.
cd dependencies/prettyplease
This project's files live in a subfolder, so move into it first.
cargo build --release
Compiles the Rust project.
cargo run
Builds and then immediately runs the program.
If cargo build finishes without errors, it worked. The executable is created under target/.
3. Ruby
EasyPrerequisites
cd source/docs/verus
This project's files live in a subfolder, so move into it first.
bundle install
Installs the Ruby libraries listed in the Gemfile.
If bundle install finishes without errors, continue with the run command from the README (e.g. rails server).
4. Make
MediumPrerequisites
- Git Needed to download the project code from GitHub.
- Make Usually pre-installed on Linux/macOS. On Windows, install separately (e.g. via MSYS2 or WSL).
cd source/docs/publications-and-projects
This project's files live in a subfolder, so move into it first.
make
Compiles the code based on the generated build configuration to produce an executable.
If it finishes without errors, it worked. Try running the generated executable directly.
// repository documentation
Was this content helpful?
(0 ratings)
