Skip to main content

A high-level functional language for writing mathematically-precise specifications for neural networks.

Project description

PyPI GitHub tag (latest by date) GitHub Workflow Status readthedocs status pre-commit.ci status

Vehicle

Vehicle is a system for embedding logical specifications into neural networks. At its heart is the Vehicle specification language, a high-level, functional language for writing mathematically-precise specifications for your networks. For example, the following simple specification says that a network's output should be monotonically increasing with respect to its third input.

Example specification

These specifications can then automatically be compiled down to loss functions to be used when training your network. After training, the same specification can be compiled down to low-level neural network verifiers such as Marabou which either prove that the specification holds or produce a counter-example. Such a proof is far better than simply testing, as you can prove that the specification holds for all inputs. Verified specifications can also be exported to interactive theorem provers (ITPs) such as Agda. This in turn allows for the formal verification of larger software systems that use neural networks as subcomponents. The generated ITP code is tightly linked to the actual deployed network, so changes to the network will result in errors when checking the larger proof.

Documentation

Examples

Each of the following examples comes with an explanatory README file:

  • ACAS Xu - The complete specification of the ACAS Xu collision avoidance system from the Reluplex paper in a single file.

  • Car controller - A neural network controller that is formally proven to always keep a simple model of a car on the road in the face of noisy sensor data and an unpredictable cross-wind.

  • MNIST robustness - A classifier for the MNIST dataset that is proven to be robust around the images in the dataset.

In addition to the above, further examples of specifications can be found in the test suite and the corresponding output of the Vehicle compiler can be found here.

Support

If you are interested in adding support for a particular format/verifier/ITP then open an issue on the Issue Tracker to discuss it with us.

Neural network formats

Dataset formats

Verifier backends

Interactive Theorem Prover backends

Related papers

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

vehicle_lang-0.26.0-cp313-cp313-win_amd64.whl (13.8 MB view details)

Uploaded CPython 3.13Windows x86-64

vehicle_lang-0.26.0-cp313-cp313-musllinux_1_1_x86_64.whl (23.3 MB view details)

Uploaded CPython 3.13musllinux: musl 1.1+ x86-64

vehicle_lang-0.26.0-cp313-cp313-manylinux_2_28_x86_64.whl (22.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

vehicle_lang-0.26.0-cp313-cp313-macosx_11_0_arm64.whl (18.4 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

vehicle_lang-0.26.0-cp313-cp313-macosx_10_13_x86_64.whl (19.0 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

vehicle_lang-0.26.0-cp312-cp312-win_amd64.whl (13.8 MB view details)

Uploaded CPython 3.12Windows x86-64

vehicle_lang-0.26.0-cp312-cp312-musllinux_1_1_x86_64.whl (23.3 MB view details)

Uploaded CPython 3.12musllinux: musl 1.1+ x86-64

vehicle_lang-0.26.0-cp312-cp312-manylinux_2_28_x86_64.whl (22.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

vehicle_lang-0.26.0-cp312-cp312-macosx_11_0_arm64.whl (18.4 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

vehicle_lang-0.26.0-cp312-cp312-macosx_10_13_x86_64.whl (19.0 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

vehicle_lang-0.26.0-cp311-cp311-win_amd64.whl (13.8 MB view details)

Uploaded CPython 3.11Windows x86-64

vehicle_lang-0.26.0-cp311-cp311-musllinux_1_1_x86_64.whl (23.3 MB view details)

Uploaded CPython 3.11musllinux: musl 1.1+ x86-64

vehicle_lang-0.26.0-cp311-cp311-manylinux_2_28_x86_64.whl (22.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

vehicle_lang-0.26.0-cp311-cp311-macosx_11_0_arm64.whl (18.4 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

vehicle_lang-0.26.0-cp311-cp311-macosx_10_10_x86_64.whl (19.0 MB view details)

Uploaded CPython 3.11macOS 10.10+ x86-64

vehicle_lang-0.26.0-cp310-cp310-win_amd64.whl (13.8 MB view details)

Uploaded CPython 3.10Windows x86-64

vehicle_lang-0.26.0-cp310-cp310-musllinux_1_1_x86_64.whl (23.3 MB view details)

Uploaded CPython 3.10musllinux: musl 1.1+ x86-64

vehicle_lang-0.26.0-cp310-cp310-manylinux_2_28_x86_64.whl (22.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

vehicle_lang-0.26.0-cp310-cp310-macosx_11_0_arm64.whl (18.4 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

vehicle_lang-0.26.0-cp310-cp310-macosx_10_10_x86_64.whl (19.0 MB view details)

Uploaded CPython 3.10macOS 10.10+ x86-64

File details

Details for the file vehicle_lang-0.26.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 81f62fc0b082170b2e5f334d6e59be7c7266a8b3bf590b8610f193138a0484b8
MD5 e69e857a7382a5f8565571819b41a11e
BLAKE2b-256 558c809e7aaf58c22b972f09caacd7c3c5b5ed2a6aa9cfe5a8a814a9577408bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp313-cp313-win_amd64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp313-cp313-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp313-cp313-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 785c622eeff0b214b094cae507902e84b79e47b1e941d44be7a77e2cfaf4ed22
MD5 a665b47022091d409d345e3264af27db
BLAKE2b-256 8cbcdf91f753a55b3879921a9096217b6ae61034de2715391972989acc194b5b

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp313-cp313-musllinux_1_1_x86_64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d01e8d5f1c50ea2d401e7723c3f154442a3601bb06880c8c098adb16d45b496d
MD5 d99a64aa65f2b18e147aa117a33635b6
BLAKE2b-256 404de68ca94a48a301c40d2b4519639723460ff11f36ca8e758fd5ad42442648

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 be93c6ffd2173cbef58ed58b6a6dedcf686da62c2aeacd026c1c0b9f3721c542
MD5 eeb607b397a11f8a4ba318935518035f
BLAKE2b-256 d8482f9f6955a49b49d406e2d77b070d749cdacb995105026e33caced1f7bc16

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 04a0504c8379a4a801000a9e939df906847452df33c618a56c8b0abb584f6512
MD5 80e6d2e617b8abddd822cd7fb059e9fc
BLAKE2b-256 6a871ccfe4233d757d3a8cf9ae1f9f1649bd52811a5bfc84027a419241c0ebfe

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 7ff2d656a36ddcf787331f3288dc1525c10f000066780bb1746087db26ae3a33
MD5 416372a16b6011e20e0b2b149d2bb7ce
BLAKE2b-256 29988ca782e08ce6fa544a57e2f97b64a2d464484399e7fe0dc8f2c67acf632b

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp312-cp312-win_amd64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp312-cp312-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 3fdeeba16e6a000086da8186055da6e3566647632889b2bf187b32a99ba9d98a
MD5 70d4bb8d258c201bfa8b02a859f55f80
BLAKE2b-256 18bf4acf38a8a06164f6ee0f63ca9856f4f10844d75052e9cabb9a66c7cfce8d

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp312-cp312-musllinux_1_1_x86_64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 014b8007a37c72fdde41693c12094e133cf92d4e18498ffcbd35bc56ce1420c6
MD5 28429442a3a4a2cafeb071a07f9a2631
BLAKE2b-256 f24795ae65ba648924d7df77922f65babb923dbfdd2c47be33fdeeb182ef0a0f

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3d4a90b0478a985fe29dfbb3c5b88313ded799f1349bc8086a5237ece5661e58
MD5 5f0a3d0f67ea2f0c68e6dff643a2fcea
BLAKE2b-256 57cdcad4c592ece7decd08dbe9fd10f0994e95f956defe22a9f48f9087c77490

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 dc4a231075a719875262f54c82974e2f0f5c503f3f77d9dd1d282e32528ba76e
MD5 3ef49cc097af04bc296fa5089662ab53
BLAKE2b-256 faf014e87336b1f25cc51c22a490ccf101d422452e5e814922de4e006a07fc02

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 8331b883769b7cc2fe890909243e307025826f6f5ae81f3b2ca9de0b1875c7a5
MD5 a088dc52baa48e21eca0522ca56396d3
BLAKE2b-256 d5cfb82118f4e9675535adb6fe7e99174c73775c1b743fe9a39afc83551fa756

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp311-cp311-win_amd64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 dfa7123d4d668efcc17441dd430dfff2701f03ddb4f78501bb82b18aab9da047
MD5 e81df4dd3031a676318188f09de341c4
BLAKE2b-256 f013a17c9ea9d434f04ba554a7d5a27a7434bd5007718839b51c057b19152b9d

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp311-cp311-musllinux_1_1_x86_64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 105703070298bb131b0dc3e74e531d05cc004b9174f0b725f6e4d36c879a9ab7
MD5 1a61bb984e26cae3c4a78a8d3f7fc8d2
BLAKE2b-256 93bcff76ae7c8ae67c1600daeabcc089346dc8592021c88020f0a71473cc1549

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5eebd7f4fd150a0045c5515e887d90fb25c086cc5c3f84b16e9757d523d7fb82
MD5 dab78a64ff18593f2b1437ef9335b7d8
BLAKE2b-256 7bd31c9ac7be0b3186a821a604b3c46ecdf9766ba1acf3ae80d793759a99abac

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp311-cp311-macosx_10_10_x86_64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp311-cp311-macosx_10_10_x86_64.whl
Algorithm Hash digest
SHA256 b08828d5bf8008a8d46a557e6d017ae85f2cfcece5be81747b4b0cfa9d1d2dfe
MD5 208d262ba42024cf1eb2b86b7070f0b5
BLAKE2b-256 abf2f7c7f3f6e7d70e178f07d29e7b12ca783721f2fa6a5a1e3a90b446d682a2

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp311-cp311-macosx_10_10_x86_64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 1c09123c5dbcdf437aab6b5c676eb3ef9120c31b3c0ce8c85f458eb18906fae7
MD5 5badf7ac2193e0d442840416a9abd64c
BLAKE2b-256 148a853b5ae6d43f52ea391832a88af2d37ab11c5a231f1eb275c8ce8643e30a

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp310-cp310-win_amd64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 0dbd140bb94603f23e3b96ebbd53179b2a30f3f5c878ae23b966b513f180d033
MD5 deb1c2b4d120e46af4ef59254812ad2d
BLAKE2b-256 1732566cf5feb098ef799d8904d67f129223e35a013433cd1d1f1d86784dbf04

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp310-cp310-musllinux_1_1_x86_64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cc611a5962db60a89d6aca511c968e5edf82ee5a950a589c7d50fa0ef79df441
MD5 b577a34a1362e4344bf51fc4f751b4e9
BLAKE2b-256 c1b4a0fd5dee4c6a6177c497b9f7bc21ea8e51c75b67e3c91ca797635bae1d6b

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f58b94c9897f84792e4edae8016aa6d2ed21168c27341f2194d24550f7963d7b
MD5 ca4cc75f7504269e89cff3fcfddf3541
BLAKE2b-256 fd1dc8688c6ecdba58a7e2cf30ff1c567451e72839b47c6294ddd813009e70b4

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vehicle_lang-0.26.0-cp310-cp310-macosx_10_10_x86_64.whl.

File metadata

File hashes

Hashes for vehicle_lang-0.26.0-cp310-cp310-macosx_10_10_x86_64.whl
Algorithm Hash digest
SHA256 c5531e096ffea173e24cd735dc04706add64bf7f060f703d7d596b8493857c92
MD5 b6154f6b518e801c7bb4648d33f9ebf2
BLAKE2b-256 ebe2d666ff609c4660a5cef73e5c24916ba9d8a49cf3c96d970433ebff654d85

See more details on using hashes here.

Provenance

The following attestation bundles were made for vehicle_lang-0.26.0-cp310-cp310-macosx_10_10_x86_64.whl:

Publisher: ci.yml on vehicle-lang/vehicle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page