refactor theorem to ast for out file hashes, migrate old tests

This commit is contained in:
gluaxspeed 2021-07-16 03:20:36 -07:00
parent 8695b11ce0
commit 470a4075f8
331 changed files with 1061 additions and 7508 deletions

View File

@ -65,3 +65,6 @@ pub use phases::*;
pub mod option;
pub use option::*;
#[cfg(test)]
mod test;

View File

@ -26,7 +26,7 @@ use leo_test_framework::{
use serde_yaml::Value;
use snarkvm_curves::{bls12_377::Bls12_377, edwards_bls12::Fq};
use leo_compiler::{
use crate::{
compiler::Compiler,
errors::CompilerError,
targets::edwards_bls12::EdwardsGroupType,
@ -90,9 +90,9 @@ struct OutputItem {
struct CompileOutput {
pub circuit: SummarizedCircuit,
pub output: Vec<OutputItem>,
pub initial_theorem: String,
pub canonicalized_theorem: String,
pub type_inferenced_theorem: String,
pub initial_ast: String,
pub canonicalized_ast: String,
pub type_inferenced_ast: String,
}
impl Namespace for CompileNamespace {
@ -214,13 +214,13 @@ impl Namespace for CompileNamespace {
});
}
let initial_theorem: String = hash(
let initial_ast: String = hash(
Ast::from_json_file("/tmp/output/initial_ast.json".into())
.unwrap_or(Ast::new(Program::new("Error reading initial theorem.".to_string())))
.to_json_string()
.unwrap_or("Error converting ast to string.".to_string()),
);
let canonicalized_theorem: String = hash(
let canonicalized_ast: String = hash(
Ast::from_json_file("/tmp/output/canonicalization_ast.json".into())
.unwrap_or(Ast::new(Program::new(
"Error reading canonicalized theorem.".to_string(),
@ -228,7 +228,7 @@ impl Namespace for CompileNamespace {
.to_json_string()
.unwrap_or("Error converting ast to string.".to_string()),
);
let type_inferenced_theorem = hash(
let type_inferenced_ast = hash(
Ast::from_json_file("/tmp/output/type_inferenced_ast.json".into())
.unwrap_or(Ast::new(Program::new(
"Error reading type inferenced theorem.".to_string(),
@ -240,9 +240,9 @@ impl Namespace for CompileNamespace {
let final_output = CompileOutput {
circuit: last_circuit.unwrap(),
output: output_items,
initial_theorem,
canonicalized_theorem,
type_inferenced_theorem,
initial_ast,
canonicalized_ast,
type_inferenced_ast,
};
Ok(serde_yaml::to_value(&final_output).expect("serialization failed"))
}

View File

@ -1,359 +0,0 @@
{
"name": "",
"expected_input": [],
"imports": [],
"circuits": {},
"global_consts": {},
"functions": {
"{\"name\":\"main\",\"span\":\"{\\\"line_start\\\":1,\\\"line_stop\\\":1,\\\"col_start\\\":10,\\\"col_stop\\\":14,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\"function main(a: [group; (2, 1)]) {\\\"}\"}": {
"annotations": [],
"identifier": "{\"name\":\"main\",\"span\":\"{\\\"line_start\\\":1,\\\"line_stop\\\":1,\\\"col_start\\\":10,\\\"col_stop\\\":14,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\"function main(a: [group; (2, 1)]) {\\\"}\"}",
"input": [
{
"Variable": {
"identifier": "{\"name\":\"a\",\"span\":\"{\\\"line_start\\\":1,\\\"line_stop\\\":1,\\\"col_start\\\":15,\\\"col_stop\\\":16,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\"function main(a: [group; (2, 1)]) {\\\"}\"}",
"const_": false,
"mutable": true,
"type_": {
"Array": [
{
"Array": [
"Group",
[
{
"value": "1"
}
]
]
},
[
{
"value": "2"
}
]
]
},
"span": {
"line_start": 1,
"line_stop": 1,
"col_start": 15,
"col_stop": 16,
"path": "",
"content": "function main(a: [group; (2, 1)]) {"
}
}
}
],
"output": {
"Tuple": []
},
"block": {
"statements": [
{
"Definition": {
"declaration_type": "Let",
"variable_names": [
{
"mutable": true,
"identifier": "{\"name\":\"b\",\"span\":\"{\\\"line_start\\\":2,\\\"line_stop\\\":2,\\\"col_start\\\":7,\\\"col_stop\\\":8,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" let b = [true; (6, 5, 4, 3, 2)];\\\"}\"}",
"span": {
"line_start": 2,
"line_stop": 2,
"col_start": 7,
"col_stop": 8,
"path": "",
"content": " let b = [true; (6, 5, 4, 3, 2)];"
}
}
],
"type_": null,
"value": {
"ArrayInit": {
"element": {
"ArrayInit": {
"element": {
"ArrayInit": {
"element": {
"ArrayInit": {
"element": {
"ArrayInit": {
"element": {
"Value": {
"Boolean": [
"true",
{
"line_start": 2,
"line_stop": 2,
"col_start": 12,
"col_stop": 16,
"path": "",
"content": " let b = [true; (6, 5, 4, 3, 2)];"
}
]
}
},
"dimensions": [
{
"value": "2"
}
],
"span": {
"line_start": 2,
"line_stop": 2,
"col_start": 11,
"col_stop": 34,
"path": "",
"content": " let b = [true; (6, 5, 4, 3, 2)];"
}
}
},
"dimensions": [
{
"value": "3"
}
],
"span": {
"line_start": 2,
"line_stop": 2,
"col_start": 11,
"col_stop": 34,
"path": "",
"content": " let b = [true; (6, 5, 4, 3, 2)];"
}
}
},
"dimensions": [
{
"value": "4"
}
],
"span": {
"line_start": 2,
"line_stop": 2,
"col_start": 11,
"col_stop": 34,
"path": "",
"content": " let b = [true; (6, 5, 4, 3, 2)];"
}
}
},
"dimensions": [
{
"value": "5"
}
],
"span": {
"line_start": 2,
"line_stop": 2,
"col_start": 11,
"col_stop": 34,
"path": "",
"content": " let b = [true; (6, 5, 4, 3, 2)];"
}
}
},
"dimensions": [
{
"value": "6"
}
],
"span": {
"line_start": 2,
"line_stop": 2,
"col_start": 11,
"col_stop": 34,
"path": "",
"content": " let b = [true; (6, 5, 4, 3, 2)];"
}
}
},
"span": {
"line_start": 2,
"line_stop": 2,
"col_start": 3,
"col_stop": 34,
"path": "",
"content": " let b = [true; (6, 5, 4, 3, 2)];"
}
}
},
{
"Definition": {
"declaration_type": "Let",
"variable_names": [
{
"mutable": true,
"identifier": "{\"name\":\"c\",\"span\":\"{\\\"line_start\\\":3,\\\"line_stop\\\":3,\\\"col_start\\\":7,\\\"col_stop\\\":8,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" let c: [u32; (1, 2)] = [0u32; (1, 2)];\\\"}\"}",
"span": {
"line_start": 3,
"line_stop": 3,
"col_start": 7,
"col_stop": 8,
"path": "",
"content": " let c: [u32; (1, 2)] = [0u32; (1, 2)];"
}
}
],
"type_": {
"Array": [
{
"Array": [
{
"IntegerType": "U32"
},
[
{
"value": "2"
}
]
]
},
[
{
"value": "1"
}
]
]
},
"value": {
"ArrayInit": {
"element": {
"ArrayInit": {
"element": {
"Value": {
"Integer": [
"U32",
"0",
{
"line_start": 3,
"line_stop": 3,
"col_start": 27,
"col_stop": 31,
"path": "",
"content": " let c: [u32; (1, 2)] = [0u32; (1, 2)];"
}
]
}
},
"dimensions": [
{
"value": "2"
}
],
"span": {
"line_start": 3,
"line_stop": 3,
"col_start": 26,
"col_stop": 40,
"path": "",
"content": " let c: [u32; (1, 2)] = [0u32; (1, 2)];"
}
}
},
"dimensions": [
{
"value": "1"
}
],
"span": {
"line_start": 3,
"line_stop": 3,
"col_start": 26,
"col_stop": 40,
"path": "",
"content": " let c: [u32; (1, 2)] = [0u32; (1, 2)];"
}
}
},
"span": {
"line_start": 3,
"line_stop": 3,
"col_start": 3,
"col_stop": 40,
"path": "",
"content": " let c: [u32; (1, 2)] = [0u32; (1, 2)];"
}
}
},
{
"Definition": {
"declaration_type": "Let",
"variable_names": [
{
"mutable": true,
"identifier": "{\"name\":\"d\",\"span\":\"{\\\"line_start\\\":4,\\\"line_stop\\\":4,\\\"col_start\\\":7,\\\"col_stop\\\":8,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" let d = [0i8; (1)];\\\"}\"}",
"span": {
"line_start": 4,
"line_stop": 4,
"col_start": 7,
"col_stop": 8,
"path": "",
"content": " let d = [0i8; (1)];"
}
}
],
"type_": null,
"value": {
"ArrayInit": {
"element": {
"Value": {
"Integer": [
"I8",
"0",
{
"line_start": 4,
"line_stop": 4,
"col_start": 12,
"col_stop": 15,
"path": "",
"content": " let d = [0i8; (1)];"
}
]
}
},
"dimensions": [
{
"value": "1"
}
],
"span": {
"line_start": 4,
"line_stop": 4,
"col_start": 11,
"col_stop": 21,
"path": "",
"content": " let d = [0i8; (1)];"
}
}
},
"span": {
"line_start": 4,
"line_stop": 4,
"col_start": 3,
"col_stop": 21,
"path": "",
"content": " let d = [0i8; (1)];"
}
}
}
],
"span": {
"line_start": 1,
"line_stop": 7,
"col_start": 35,
"col_stop": 2,
"path": "",
"content": "function main(a: [group; (2, 1)]) {\n...\n}"
}
},
"span": {
"line_start": 1,
"line_stop": 7,
"col_start": 1,
"col_stop": 2,
"path": "",
"content": "function main(a: [group; (2, 1)]) {\n...\n}\n\n\n\n"
}
}
}
}

View File

@ -1,7 +0,0 @@
function main(a: [group; (2, 1)]) {
let b = [true; (6, 5, 4, 3, 2)];
let c: [u32; (1, 2)] = [0u32; (1, 2)];
let d = [0i8; (1)];
// let d = [true; 0];
// let e = [true; (0)];
}

View File

@ -1,3 +0,0 @@
function main() {
let a = [true; (0)];
}

View File

@ -1,438 +0,0 @@
{
"name": "",
"expected_input": [],
"imports": [],
"circuits": {
"{\"name\":\"Foo\",\"span\":\"{\\\"line_start\\\":1,\\\"line_stop\\\":1,\\\"col_start\\\":9,\\\"col_stop\\\":12,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\"circuit Foo {\\\"}\"}": {
"circuit_name": "{\"name\":\"Foo\",\"span\":\"{\\\"line_start\\\":1,\\\"line_stop\\\":1,\\\"col_start\\\":9,\\\"col_stop\\\":12,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\"circuit Foo {\\\"}\"}",
"members": [
{
"CircuitVariable": [
"{\"name\":\"x\",\"span\":\"{\\\"line_start\\\":2,\\\"line_stop\\\":2,\\\"col_start\\\":3,\\\"col_stop\\\":4,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" x: u32;\\\"}\"}",
{
"IntegerType": "U32"
}
]
},
{
"CircuitFunction": {
"annotations": [],
"identifier": "{\"name\":\"new\",\"span\":\"{\\\"line_start\\\":4,\\\"line_stop\\\":4,\\\"col_start\\\":12,\\\"col_stop\\\":15,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" function new() -> Self {\\\"}\"}",
"input": [],
"output": {
"Circuit": "{\"name\":\"Foo\",\"span\":\"{\\\"line_start\\\":1,\\\"line_stop\\\":1,\\\"col_start\\\":9,\\\"col_stop\\\":12,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\"circuit Foo {\\\"}\"}"
},
"block": {
"statements": [
{
"Definition": {
"declaration_type": "Let",
"variable_names": [
{
"mutable": true,
"identifier": "{\"name\":\"new\",\"span\":\"{\\\"line_start\\\":5,\\\"line_stop\\\":5,\\\"col_start\\\":9,\\\"col_stop\\\":12,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" let new: Self = Self {\\\"}\"}",
"span": {
"line_start": 5,
"line_stop": 5,
"col_start": 9,
"col_stop": 12,
"path": "",
"content": " let new: Self = Self {"
}
}
],
"type_": {
"Circuit": "{\"name\":\"Foo\",\"span\":\"{\\\"line_start\\\":1,\\\"line_stop\\\":1,\\\"col_start\\\":9,\\\"col_stop\\\":12,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\"circuit Foo {\\\"}\"}"
},
"value": {
"CircuitInit": {
"name": "{\"name\":\"Foo\",\"span\":\"{\\\"line_start\\\":1,\\\"line_stop\\\":1,\\\"col_start\\\":9,\\\"col_stop\\\":12,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\"circuit Foo {\\\"}\"}",
"members": [
{
"identifier": "{\"name\":\"x\",\"span\":\"{\\\"line_start\\\":6,\\\"line_stop\\\":6,\\\"col_start\\\":7,\\\"col_stop\\\":8,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" x: 1u32\\\"}\"}",
"expression": {
"Value": {
"Integer": [
"U32",
"1",
{
"line_start": 6,
"line_stop": 6,
"col_start": 10,
"col_stop": 14,
"path": "",
"content": " x: 1u32"
}
]
}
}
}
],
"span": {
"line_start": 5,
"line_stop": 7,
"col_start": 21,
"col_stop": 6,
"path": "",
"content": " let new: Self = Self {\n...\n };"
}
}
},
"span": {
"line_start": 5,
"line_stop": 7,
"col_start": 5,
"col_stop": 6,
"path": "",
"content": " let new: Self = Self {\n...\n };"
}
}
},
{
"Return": {
"expression": {
"Identifier": "{\"name\":\"new\",\"span\":\"{\\\"line_start\\\":9,\\\"line_stop\\\":9,\\\"col_start\\\":12,\\\"col_stop\\\":15,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" return new;\\\"}\"}"
},
"span": {
"line_start": 9,
"line_stop": 9,
"col_start": 5,
"col_stop": 15,
"path": "",
"content": " return new;"
}
}
}
],
"span": {
"line_start": 4,
"line_stop": 10,
"col_start": 26,
"col_stop": 4,
"path": "",
"content": " function new() -> Self {\n...\n }"
}
},
"span": {
"line_start": 4,
"line_stop": 10,
"col_start": 3,
"col_stop": 4,
"path": "",
"content": " function new() -> Self {\n...\n }\n\n\n\n"
}
}
},
{
"CircuitFunction": {
"annotations": [],
"identifier": "{\"name\":\"etc\",\"span\":\"{\\\"line_start\\\":12,\\\"line_stop\\\":12,\\\"col_start\\\":12,\\\"col_stop\\\":15,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" function etc() {\\\"}\"}",
"input": [],
"output": {
"Tuple": []
},
"block": {
"statements": [
{
"Assign": {
"operation": "Assign",
"assignee": {
"identifier": "{\"name\":\"y\",\"span\":\"{\\\"line_start\\\":13,\\\"line_stop\\\":13,\\\"col_start\\\":6,\\\"col_stop\\\":7,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" y[Self {x: 0}.func()] += 2;\\\"}\"}",
"accesses": [
{
"ArrayIndex": {
"Call": {
"function": {
"CircuitMemberAccess": {
"circuit": {
"CircuitInit": {
"name": "{\"name\":\"Foo\",\"span\":\"{\\\"line_start\\\":1,\\\"line_stop\\\":1,\\\"col_start\\\":9,\\\"col_stop\\\":12,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\"circuit Foo {\\\"}\"}",
"members": [
{
"identifier": "{\"name\":\"x\",\"span\":\"{\\\"line_start\\\":13,\\\"line_stop\\\":13,\\\"col_start\\\":14,\\\"col_stop\\\":15,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" y[Self {x: 0}.func()] += 2;\\\"}\"}",
"expression": {
"Value": {
"Implicit": [
"0",
{
"line_start": 13,
"line_stop": 13,
"col_start": 17,
"col_stop": 18,
"path": "",
"content": " y[Self {x: 0}.func()] += 2;"
}
]
}
}
}
],
"span": {
"line_start": 13,
"line_stop": 13,
"col_start": 8,
"col_stop": 19,
"path": "",
"content": " y[Self {x: 0}.func()] += 2;"
}
}
},
"name": "{\"name\":\"func\",\"span\":\"{\\\"line_start\\\":13,\\\"line_stop\\\":13,\\\"col_start\\\":20,\\\"col_stop\\\":24,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" y[Self {x: 0}.func()] += 2;\\\"}\"}",
"span": {
"line_start": 13,
"line_stop": 13,
"col_start": 8,
"col_stop": 24,
"path": "",
"content": " y[Self {x: 0}.func()] += 2;"
}
}
},
"arguments": [],
"span": {
"line_start": 13,
"line_stop": 13,
"col_start": 8,
"col_stop": 26,
"path": "",
"content": " y[Self {x: 0}.func()] += 2;"
}
}
}
}
],
"span": {
"line_start": 13,
"line_stop": 13,
"col_start": 6,
"col_stop": 27,
"path": "",
"content": " y[Self {x: 0}.func()] += 2;"
}
},
"value": {
"Binary": {
"left": {
"ArrayAccess": {
"array": {
"Identifier": "{\"name\":\"y\",\"span\":\"{\\\"line_start\\\":13,\\\"line_stop\\\":13,\\\"col_start\\\":6,\\\"col_stop\\\":7,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" y[Self {x: 0}.func()] += 2;\\\"}\"}"
},
"index": {
"Call": {
"function": {
"CircuitMemberAccess": {
"circuit": {
"CircuitInit": {
"name": "{\"name\":\"Foo\",\"span\":\"{\\\"line_start\\\":1,\\\"line_stop\\\":1,\\\"col_start\\\":9,\\\"col_stop\\\":12,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\"circuit Foo {\\\"}\"}",
"members": [
{
"identifier": "{\"name\":\"x\",\"span\":\"{\\\"line_start\\\":13,\\\"line_stop\\\":13,\\\"col_start\\\":14,\\\"col_stop\\\":15,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" y[Self {x: 0}.func()] += 2;\\\"}\"}",
"expression": {
"Value": {
"Implicit": [
"0",
{
"line_start": 13,
"line_stop": 13,
"col_start": 17,
"col_stop": 18,
"path": "",
"content": " y[Self {x: 0}.func()] += 2;"
}
]
}
}
}
],
"span": {
"line_start": 13,
"line_stop": 13,
"col_start": 8,
"col_stop": 19,
"path": "",
"content": " y[Self {x: 0}.func()] += 2;"
}
}
},
"name": "{\"name\":\"func\",\"span\":\"{\\\"line_start\\\":13,\\\"line_stop\\\":13,\\\"col_start\\\":20,\\\"col_stop\\\":24,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" y[Self {x: 0}.func()] += 2;\\\"}\"}",
"span": {
"line_start": 13,
"line_stop": 13,
"col_start": 8,
"col_stop": 24,
"path": "",
"content": " y[Self {x: 0}.func()] += 2;"
}
}
},
"arguments": [],
"span": {
"line_start": 13,
"line_stop": 13,
"col_start": 8,
"col_stop": 26,
"path": "",
"content": " y[Self {x: 0}.func()] += 2;"
}
}
},
"span": {
"line_start": 13,
"line_stop": 13,
"col_start": 6,
"col_stop": 32,
"path": "",
"content": " y[Self {x: 0}.func()] += 2;"
}
}
},
"right": {
"Value": {
"Implicit": [
"2",
{
"line_start": 13,
"line_stop": 13,
"col_start": 31,
"col_stop": 32,
"path": "",
"content": " y[Self {x: 0}.func()] += 2;"
}
]
}
},
"op": "Add",
"span": {
"line_start": 13,
"line_stop": 13,
"col_start": 6,
"col_stop": 32,
"path": "",
"content": " y[Self {x: 0}.func()] += 2;"
}
}
},
"span": {
"line_start": 13,
"line_stop": 13,
"col_start": 6,
"col_stop": 32,
"path": "",
"content": " y[Self {x: 0}.func()] += 2;"
}
}
}
],
"span": {
"line_start": 12,
"line_stop": 14,
"col_start": 18,
"col_stop": 4,
"path": "",
"content": " function etc() {\n...\n }"
}
},
"span": {
"line_start": 12,
"line_stop": 14,
"col_start": 3,
"col_stop": 4,
"path": "",
"content": " function etc() {\n...\n }"
}
}
}
]
}
},
"global_consts": {},
"functions": {
"{\"name\":\"main\",\"span\":\"{\\\"line_start\\\":17,\\\"line_stop\\\":17,\\\"col_start\\\":10,\\\"col_stop\\\":14,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\"function main() {\\\"}\"}": {
"annotations": [],
"identifier": "{\"name\":\"main\",\"span\":\"{\\\"line_start\\\":17,\\\"line_stop\\\":17,\\\"col_start\\\":10,\\\"col_stop\\\":14,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\"function main() {\\\"}\"}",
"input": [],
"output": {
"Tuple": []
},
"block": {
"statements": [
{
"Definition": {
"declaration_type": "Let",
"variable_names": [
{
"mutable": true,
"identifier": "{\"name\":\"foo\",\"span\":\"{\\\"line_start\\\":18,\\\"line_stop\\\":18,\\\"col_start\\\":7,\\\"col_stop\\\":10,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" let foo: Foo = Foo::new();\\\"}\"}",
"span": {
"line_start": 18,
"line_stop": 18,
"col_start": 7,
"col_stop": 10,
"path": "",
"content": " let foo: Foo = Foo::new();"
}
}
],
"type_": {
"Circuit": "{\"name\":\"Foo\",\"span\":\"{\\\"line_start\\\":18,\\\"line_stop\\\":18,\\\"col_start\\\":12,\\\"col_stop\\\":15,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" let foo: Foo = Foo::new();\\\"}\"}"
},
"value": {
"Call": {
"function": {
"CircuitStaticFunctionAccess": {
"circuit": {
"Identifier": "{\"name\":\"Foo\",\"span\":\"{\\\"line_start\\\":18,\\\"line_stop\\\":18,\\\"col_start\\\":18,\\\"col_stop\\\":21,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" let foo: Foo = Foo::new();\\\"}\"}"
},
"name": "{\"name\":\"new\",\"span\":\"{\\\"line_start\\\":18,\\\"line_stop\\\":18,\\\"col_start\\\":23,\\\"col_stop\\\":26,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" let foo: Foo = Foo::new();\\\"}\"}",
"span": {
"line_start": 18,
"line_stop": 18,
"col_start": 18,
"col_stop": 26,
"path": "",
"content": " let foo: Foo = Foo::new();"
}
}
},
"arguments": [],
"span": {
"line_start": 18,
"line_stop": 18,
"col_start": 18,
"col_stop": 28,
"path": "",
"content": " let foo: Foo = Foo::new();"
}
}
},
"span": {
"line_start": 18,
"line_stop": 18,
"col_start": 3,
"col_stop": 28,
"path": "",
"content": " let foo: Foo = Foo::new();"
}
}
}
],
"span": {
"line_start": 17,
"line_stop": 19,
"col_start": 17,
"col_stop": 2,
"path": "",
"content": "function main() {\n...\n}"
}
},
"span": {
"line_start": 17,
"line_stop": 19,
"col_start": 1,
"col_stop": 2,
"path": "",
"content": "function main() {\n...\n}"
}
}
}
}

View File

@ -1,19 +0,0 @@
circuit Foo {
x: u32;
function new() -> Self {
let new: Self = Self {
x: 1u32
};
return new;
}
function etc() {
y[Self {x: 0}.func()] += 2;
}
}
function main() {
let foo: Foo = Foo::new();
}

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +0,0 @@
function main () {
let x = [1u32; 5];
x[..2] += 1;
}

View File

@ -1,2 +0,0 @@
[main]
a: [group; (2, 1)] = [1group; (2, 1)];

View File

@ -1,97 +0,0 @@
// Copyright (C) 2019-2021 Aleo Systems Inc.
// This file is part of the Leo library.
// The Leo library is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// The Leo library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
// along with the Leo library. If not, see <https://www.gnu.org/licenses/>.
use crate::parse_program;
use leo_ast::Ast;
use leo_parser::parser;
pub fn parse_program_ast(file_string: &str) -> Ast {
const TEST_PROGRAM_PATH: &str = "";
let test_program_file_path = std::path::PathBuf::from(TEST_PROGRAM_PATH);
let mut ast = Ast::new(
parser::parse(test_program_file_path.to_str().expect("unwrap fail"), &file_string)
.expect("Failed to parse file."),
);
ast.canonicalize().expect("Failed to canonicalize program.");
ast
}
#[test]
fn test_big_self_in_circuit_replacement() {
// Check program is valid.
let program_string = include_str!("big_self_in_circuit_replacement.leo");
// Check we get expected ast.
let ast = parse_program_ast(program_string);
let expected_json = include_str!("big_self_in_circuit_replacement.json");
let expected_ast: Ast = Ast::from_json_string(expected_json).expect("Unable to parse json.");
assert_eq!(expected_ast, ast);
}
#[test]
fn test_big_self_outside_circuit_fail() {
// Check program is invalid.
let program_string = include_str!("big_self_outside_circuit_fail.leo");
let program = parse_program(program_string);
assert!(program.is_err());
}
#[test]
fn test_array_expansion() {
let program_string = include_str!("array_expansion.leo");
let ast = parse_program_ast(program_string);
let expected_json = include_str!("array_expansion.json");
let expected_ast: Ast = Ast::from_json_string(expected_json).expect("Unable to parse json.");
assert_eq!(expected_ast, ast);
}
#[test]
fn test_array_size_zero_fail() {
let program_string = include_str!("array_size_zero_fail.leo");
let program = parse_program(program_string);
assert!(program.is_err());
}
#[test]
fn test_compound_assignment() {
let program_string = include_str!("compound_assignment.leo");
let ast = parse_program_ast(program_string);
let expected_json = include_str!("compound_assignment.json");
let expected_ast: Ast = Ast::from_json_string(expected_json).expect("Unable to parse json.");
assert_eq!(expected_ast, ast);
}
#[test]
fn test_illegal_array_range_fail() {
// Check program is invalid.
let program_string = include_str!("illegal_array_range_fail.leo");
let program = parse_program(program_string);
assert!(program.is_err());
}
#[test]
fn test_string_transformation() {
let program_string = include_str!("string_transformation.leo");
let ast = parse_program_ast(program_string);
let expected_json = include_str!("string_transformation.json");
let expected_ast: Ast = Ast::from_json_string(expected_json).expect("Unable to parse json.");
assert_eq!(expected_ast, ast);
}

File diff suppressed because it is too large Load Diff

View File

@ -1,8 +0,0 @@
function main() {
let s = "\u{2764}ello, World!\u{DDDD}";
s[..2] = "he";
let x = false;
x = "test1" == "test2";
let z = [1u8, 2u8, 3u8, 4u8];
z[0.."test" == "test"? 2 : 2] = x[0..2];
}

View File

@ -1 +0,0 @@
[registers]

View File

@ -1,123 +0,0 @@
// Copyright (C) 2019-2021 Aleo Systems Inc.
// This file is part of the Leo library.
// The Leo library is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// The Leo library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
// along with the Leo library. If not, see <https://www.gnu.org/licenses/>.
// allow the use of EdwardsTestCompiler::parse_program_from_string for tests
#![allow(deprecated)]
pub mod canonicalization;
pub mod type_inference;
use leo_asg::{new_alloc_context, new_context, AsgContext};
use leo_compiler::{
compiler::Compiler,
errors::CompilerError,
group::targets::edwards_bls12::EdwardsGroupType,
ConstrainedValue,
OutputBytes,
};
use snarkvm_curves::edwards_bls12::Fq;
use snarkvm_r1cs::TestConstraintSystem;
use std::path::PathBuf;
pub const TEST_OUTPUT_DIRECTORY: &str = "/output/";
const EMPTY_FILE: &str = "";
pub type EdwardsTestCompiler = Compiler<'static, Fq, EdwardsGroupType>;
pub type EdwardsConstrainedValue = ConstrainedValue<'static, Fq, EdwardsGroupType>;
//convenience function for tests, leaks memory
pub(crate) fn make_test_context() -> AsgContext<'static> {
let allocator = Box::leak(Box::new(new_alloc_context()));
new_context(allocator)
}
fn new_compiler() -> EdwardsTestCompiler {
let program_name = "test".to_string();
let path = PathBuf::from("/test/src/main.leo");
let output_dir = PathBuf::from(TEST_OUTPUT_DIRECTORY);
EdwardsTestCompiler::new(program_name, path, output_dir, make_test_context(), None, None)
}
pub(crate) fn parse_program(program_string: &str) -> Result<EdwardsTestCompiler, CompilerError> {
let mut compiler = new_compiler();
compiler.parse_program_from_string(program_string)?;
Ok(compiler)
}
pub fn parse_program_with_input(
program_string: &str,
input_string: &str,
) -> Result<EdwardsTestCompiler, CompilerError> {
let mut compiler = new_compiler();
let path = PathBuf::new();
compiler.parse_input(input_string, &path, EMPTY_FILE, &path)?;
compiler.parse_program_from_string(program_string)?;
Ok(compiler)
}
pub fn parse_program_with_state(
program_string: &str,
state_string: &str,
) -> Result<EdwardsTestCompiler, CompilerError> {
let mut compiler = new_compiler();
let path = PathBuf::new();
compiler.parse_input(EMPTY_FILE, &path, state_string, &path)?;
compiler.parse_program_from_string(program_string)?;
Ok(compiler)
}
pub fn parse_program_with_input_and_state(
program_string: &str,
input_string: &str,
state_string: &str,
) -> Result<EdwardsTestCompiler, CompilerError> {
let mut compiler = new_compiler();
let path = PathBuf::new();
compiler.parse_input(input_string, &path, state_string, &path)?;
compiler.parse_program_from_string(&program_string)?;
Ok(compiler)
}
pub(crate) fn get_output(program: EdwardsTestCompiler) -> OutputBytes {
// synthesize the circuit on the test constraint system
let mut cs = TestConstraintSystem::<Fq>::new();
let output = program.compile_constraints(&mut cs).unwrap();
// assert the constraint system is satisfied
assert!(cs.is_satisfied());
output.into()
}
pub(crate) fn assert_satisfied(program: EdwardsTestCompiler) {
let empty_output_bytes = include_bytes!("compiler_output/empty.out");
let res = get_output(program);
// assert that the output is empty
assert_eq!(empty_output_bytes, res.bytes().as_slice());
}

File diff suppressed because it is too large Load Diff

View File

@ -1,27 +0,0 @@
circuit Foo {}
function two() -> u8 {
return 2u8;
}
const ONE = 1u8;
function main() {
const a = 1u8;
const b = 1field;
const c = 1group;
const d = (0, 1)group;
const e = aleo1qnr4dkkvkgfqph0vzc3y6z2eu975wnpz2925ntjccd5cfqxtyu8sta57j8;
const f = two();
const g = [0u8; (3, 2)];
const h = [[0u8; 3]; 2];
const i = [1u8, 1u8, 1u8];
const j = true;
const k = (1u8, 1u8);
const l = (1u8, 1u8, true);
const m = Foo {};
const n = 'a';
const o = "Hello, World!";
const p = [...[1u8], ...[2u8]];
const q = [...p, 3u8] == [1u8, 2u8, 3u8];
}

View File

@ -1,243 +0,0 @@
{
"name": "",
"expected_input": [],
"imports": [],
"circuits": {},
"global_consts": {},
"functions": {
"{\"name\":\"main\",\"span\":\"{\\\"line_start\\\":1,\\\"line_stop\\\":1,\\\"col_start\\\":10,\\\"col_stop\\\":14,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\"function main() {\\\"}\"}": {
"annotations": [],
"identifier": "{\"name\":\"main\",\"span\":\"{\\\"line_start\\\":1,\\\"line_stop\\\":1,\\\"col_start\\\":10,\\\"col_stop\\\":14,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\"function main() {\\\"}\"}",
"input": [],
"output": {
"Tuple": []
},
"block": {
"statements": [
{
"Definition": {
"declaration_type": "Let",
"variable_names": [
{
"mutable": true,
"identifier": "{\"name\":\"x\",\"span\":\"{\\\"line_start\\\":2,\\\"line_stop\\\":2,\\\"col_start\\\":9,\\\"col_stop\\\":10,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" let x = 10u16;\\\"}\"}",
"span": {
"line_start": 2,
"line_stop": 2,
"col_start": 9,
"col_stop": 10,
"path": "",
"content": " let x = 10u16;"
}
}
],
"type_": {
"IntegerType": "U16"
},
"value": {
"Value": {
"Integer": [
"U16",
"10",
{
"line_start": 2,
"line_stop": 2,
"col_start": 13,
"col_stop": 18,
"path": "",
"content": " let x = 10u16;"
}
]
}
},
"span": {
"line_start": 2,
"line_stop": 2,
"col_start": 5,
"col_stop": 18,
"path": "",
"content": " let x = 10u16;"
}
}
},
{
"Iteration": {
"variable": "{\"name\":\"i\",\"span\":\"{\\\"line_start\\\":3,\\\"line_stop\\\":3,\\\"col_start\\\":9,\\\"col_stop\\\":10,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" for i in 0..3 {\\\"}\"}",
"start": {
"Value": {
"Integer": [
"U32",
"0",
{
"line_start": 3,
"line_stop": 3,
"col_start": 14,
"col_stop": 15,
"path": "",
"content": " for i in 0..3 {"
}
]
}
},
"stop": {
"Value": {
"Integer": [
"U32",
"3",
{
"line_start": 3,
"line_stop": 3,
"col_start": 17,
"col_stop": 18,
"path": "",
"content": " for i in 0..3 {"
}
]
}
},
"block": {
"statements": [
{
"Assign": {
"operation": "Assign",
"assignee": {
"identifier": "{\"name\":\"x\",\"span\":\"{\\\"line_start\\\":4,\\\"line_stop\\\":4,\\\"col_start\\\":9,\\\"col_stop\\\":10,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" x -= 1;\\\"}\"}",
"accesses": [],
"span": {
"line_start": 4,
"line_stop": 4,
"col_start": 9,
"col_stop": 10,
"path": "",
"content": " x -= 1;"
}
},
"value": {
"Binary": {
"left": {
"Identifier": "{\"name\":\"x\",\"span\":\"{\\\"line_start\\\":4,\\\"line_stop\\\":4,\\\"col_start\\\":9,\\\"col_stop\\\":10,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" x -= 1;\\\"}\"}"
},
"right": {
"Value": {
"Integer": [
"U16",
"1",
{
"line_start": 4,
"line_stop": 4,
"col_start": 14,
"col_stop": 15,
"path": "",
"content": " x -= 1;"
}
]
}
},
"op": "Sub",
"span": {
"line_start": 4,
"line_stop": 4,
"col_start": 9,
"col_stop": 15,
"path": "",
"content": " x -= 1;"
}
}
},
"span": {
"line_start": 4,
"line_stop": 4,
"col_start": 9,
"col_stop": 15,
"path": "",
"content": " x -= 1;"
}
}
}
],
"span": {
"line_start": 3,
"line_stop": 5,
"col_start": 19,
"col_stop": 6,
"path": "",
"content": " for i in 0..3 {\n...\n }"
}
},
"span": {
"line_start": 3,
"line_stop": 5,
"col_start": 5,
"col_stop": 6,
"path": "",
"content": " for i in 0..3 {\n...\n }"
}
}
},
{
"Console": {
"function": {
"Assert": {
"Binary": {
"left": {
"Identifier": "{\"name\":\"x\",\"span\":\"{\\\"line_start\\\":6,\\\"line_stop\\\":6,\\\"col_start\\\":20,\\\"col_stop\\\":21,\\\"path\\\":\\\"\\\",\\\"content\\\":\\\" console.assert(x == 7u16);\\\"}\"}"
},
"right": {
"Value": {
"Integer": [
"U16",
"7",
{
"line_start": 6,
"line_stop": 6,
"col_start": 25,
"col_stop": 29,
"path": "",
"content": " console.assert(x == 7u16);"
}
]
}
},
"op": "Eq",
"span": {
"line_start": 6,
"line_stop": 6,
"col_start": 20,
"col_stop": 29,
"path": "",
"content": " console.assert(x == 7u16);"
}
}
}
},
"span": {
"line_start": 6,
"line_stop": 6,
"col_start": 5,
"col_stop": 29,
"path": "",
"content": " console.assert(x == 7u16);"
}
}
}
],
"span": {
"line_start": 1,
"line_stop": 7,
"col_start": 17,
"col_stop": 2,
"path": "",
"content": "function main() {\n...\n}"
}
},
"span": {
"line_start": 1,
"line_stop": 7,
"col_start": 1,
"col_stop": 2,
"path": "",
"content": "function main() {\n...\n}\n\n\n\n"
}
}
}
}

View File

@ -1,7 +0,0 @@
function main() {
let x = 10u16;
for i in 0..3 {
x -= 1;
}
console.assert(x == 7u16);
}

View File

@ -1,85 +0,0 @@
// Copyright (C) 2019-2021 Aleo Systems Inc.
// This file is part of the Leo library.
// The Leo library is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// The Leo library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
// along with the Leo library. If not, see <https://www.gnu.org/licenses/>.
use crate::{assert_satisfied, parse_program};
#[allow(unused)]
use leo_asg::{new_context, Asg, AsgContext};
use leo_ast::Ast;
use leo_compiler::TypeInferencePhase;
use leo_imports::ImportParser;
use leo_parser::parser;
thread_local! {
static THREAD_GLOBAL_CONTEXT: AsgContext<'static> = {
let leaked = Box::leak(Box::new(leo_asg::new_alloc_context()));
leo_asg::new_context(leaked)
}
}
pub fn thread_leaked_context() -> AsgContext<'static> {
THREAD_GLOBAL_CONTEXT.with(|f| *f)
}
pub fn parse_program_ast(file_string: &str) -> Ast {
const TEST_PROGRAM_PATH: &str = "";
let test_program_file_path = std::path::PathBuf::from(TEST_PROGRAM_PATH);
let mut ast = Ast::new(
parser::parse(test_program_file_path.to_str().expect("unwrap fail"), &file_string)
.expect("Failed to parse file."),
);
ast.canonicalize().expect("Failed to canonicalize program.");
let program = ast.clone().into_repr();
let asg = Asg::new(thread_leaked_context(), &program, &mut ImportParser::default())
.expect("Failed to create ASG from AST");
let new_ast = TypeInferencePhase::default()
.phase_ast(&program, &asg.into_repr())
.expect("Failed to produce type inference ast.");
new_ast
}
#[test]
fn test_basic() {
// Check program is valid.
let program_string = include_str!("basic.leo");
let program = parse_program(program_string).unwrap();
assert_satisfied(program);
// Check we get expected ast.
let ast = parse_program_ast(program_string);
let expected_json = include_str!("basic.json");
let expected_ast: Ast = Ast::from_json_string(expected_json).expect("Unable to parse json.");
assert_eq!(expected_ast, ast);
}
#[test]
fn test_for_loop_and_compound() {
// Check program is valid.
let program_string = include_str!("for_loop_and_compound.leo");
let program = parse_program(program_string).unwrap();
assert_satisfied(program);
// Check we get expected ast.
let ast = parse_program_ast(program_string);
let expected_json = include_str!("for_loop_and_compound.json");
let expected_ast: Ast = Ast::from_json_string(expected_json).expect("Unable to parse json.");
assert_eq!(expected_ast, ast);
}

View File

@ -0,0 +1,9 @@
/*
namespace: Compile
expectation: Fail
input_file: input/dummy.in
*/
function main() {
let a = [true; (0)];
}

View File

@ -0,0 +1,27 @@
/*
namespace: Compile
expectation: Pass
input_file: input/dummy.in
*/
circuit Foo {
x: u32;
function new() -> Self {
let new: Self = Self {
x: 1u32
};
return new;
}
function etc() {
let y = [0u32, 1, 2, 3];
y[Self {x: 0}.x] += 2;
}
}
function main(y: bool) -> bool {
let foo: Foo = Foo::new();
return foo.x == 1u32 && y;
}

View File

@ -1,3 +1,9 @@
/*
namespace: Compile
expectation: Fail
input_file: input/dummy.in
*/
circuit Foo {
x: u32;

View File

@ -1,3 +1,9 @@
/*
namespace: Compile
expectation: Pass
input_file: inputs/dummy.in
*/
circuit Foo {
f: u8;
y: (u8, u8);
@ -7,37 +13,33 @@ circuit Foo {
return 1u16;
}
}
function main() {
function main(k: bool) -> bool {
let x = 10u32;
x += 20;
console.assert(x == 30u32);
let w = 3u32;
w += x;
console.assert(w == 33u32);
let y = [1u8, 2u8, 3, 4];
y[0] += 3u8;
y[0..3][1] *= 3;
console.assert(y[0] == 4u8);
console.assert(y[1] == 6u8);
let z = (1u8, 2u8);
z.1 += 3u8;
console.assert(z.1 == 5u8);
let foo = Foo { f: 6u8, y: (1u8, 1u8) };
foo.f += 2u8;
console.assert(foo.f == 8u8);
let complex = 2u8;
complex += 22u8 - 2u8+ 1u8;
console.assert(complex == 23u8);
let a = [[0u8; 1]; 4];
a[2][0] += 1u8;
console.assert(a[2][0] == 1u8);
let b = [0u8; (4, 1)];
b[2][0] += 1u8;
console.assert(a[2][0] == 1u8);
return x == 30u32 && w == 33u32 && y[0] == 4u8 && y[1] == 6u8
&& z.1 == 5u8 && foo.f == 8u8 && a[2][0] == 1u8 && a[2][0] == 1u8
&& k;
}

View File

@ -0,0 +1,5 @@
[main]
k: bool = true;
[registers]
r0: bool = true;

View File

@ -0,0 +1,5 @@
[main]
s2: [char; 2] = "he";
[registers]
out: bool = true;

View File

@ -0,0 +1,14 @@
/*
namespace: Compile
expectation: Pass
input_file: inputs/two.in
*/
function main(s2: [char; 2]) -> bool {
let s = "\u{2764}ello, World!\u{DDDD}";
s[..2] = s2;
let x = "test1";
let z = [1u8, 2u8, 3u8, 4u8];
z[0.."test" == "test" ? 2 : 2] = [10u8, 10];
return z == [10u8, 10, 3, 4] && s == "hello, World!\u{DDDD}";
}

View File

@ -22,6 +22,6 @@ outputs:
a:
type: bool
value: "false"
initial_theorem: 1b4069c1fe2f0b258116c5864b19dfb2205e3cd8e13ea79d78fcdb0e9c1a8d50
canonicalized_theorem: 1b4069c1fe2f0b258116c5864b19dfb2205e3cd8e13ea79d78fcdb0e9c1a8d50
type_inferenced_theorem: d2aefbdd9fd4c931d4ee60f1a435f3da0d827e7425d2fd0a9868de22cc11ed73
initial_ast: 1b4069c1fe2f0b258116c5864b19dfb2205e3cd8e13ea79d78fcdb0e9c1a8d50
canonicalized_ast: 1b4069c1fe2f0b258116c5864b19dfb2205e3cd8e13ea79d78fcdb0e9c1a8d50
type_inferenced_ast: d2aefbdd9fd4c931d4ee60f1a435f3da0d827e7425d2fd0a9868de22cc11ed73

View File

@ -22,6 +22,6 @@ outputs:
a:
type: bool
value: "false"
initial_theorem: 975c6893ed20b632a3dc9c39f7fe9f381e7dda4b17b6c1f05ff7480e3bf2ee9d
canonicalized_theorem: 975c6893ed20b632a3dc9c39f7fe9f381e7dda4b17b6c1f05ff7480e3bf2ee9d
type_inferenced_theorem: bbc3818f0267a746d6ab324ef9b9de489ca65cd1624f528dae941841f39517af
initial_ast: 975c6893ed20b632a3dc9c39f7fe9f381e7dda4b17b6c1f05ff7480e3bf2ee9d
canonicalized_ast: 975c6893ed20b632a3dc9c39f7fe9f381e7dda4b17b6c1f05ff7480e3bf2ee9d
type_inferenced_ast: bbc3818f0267a746d6ab324ef9b9de489ca65cd1624f528dae941841f39517af

View File

@ -0,0 +1,5 @@
---
namespace: Compile
expectation: Fail
outputs:
- " --> compiler-test:4:13\n |\n 4 | let a = [true; (0)];\n | ^^^^^^^^^^^\n |\n = received dimension size of 0, expected it to be 1 or larger."

View File

@ -16,6 +16,6 @@ outputs:
out:
type: bool
value: "true"
initial_theorem: 9808de8c342c41e060d3d3134eb168c8d8cc3ff0641cb8d9779a1746b9fa1687
canonicalized_theorem: 1479a9afd623ad11ca137555fd86a3f0a6da39641d5b2da712273242541c246e
type_inferenced_theorem: 9bf998e088b9cce0f40a0326fa8e744c88d8168e04c563a2fbd6a57acd23da1f
initial_ast: 9808de8c342c41e060d3d3134eb168c8d8cc3ff0641cb8d9779a1746b9fa1687
canonicalized_ast: 1479a9afd623ad11ca137555fd86a3f0a6da39641d5b2da712273242541c246e
type_inferenced_ast: 9bf998e088b9cce0f40a0326fa8e744c88d8168e04c563a2fbd6a57acd23da1f

View File

@ -22,6 +22,6 @@ outputs:
x:
type: bool
value: "false"
initial_theorem: 25f4af112eb1512952d78bb7fa1d5287e3ab778255307f69304bbe1756575085
canonicalized_theorem: 248b7cc7462c3f035f337c9232a08bb5a911d7f4e153dd804a32bc597adb0210
type_inferenced_theorem: ebc3a5632c2d65e51cd9934b1ee4e395867808deeda3ecddfeaebb1b08093ed7
initial_ast: 25f4af112eb1512952d78bb7fa1d5287e3ab778255307f69304bbe1756575085
canonicalized_ast: 248b7cc7462c3f035f337c9232a08bb5a911d7f4e153dd804a32bc597adb0210
type_inferenced_ast: ebc3a5632c2d65e51cd9934b1ee4e395867808deeda3ecddfeaebb1b08093ed7

View File

@ -22,6 +22,6 @@ outputs:
x:
type: bool
value: "true"
initial_theorem: b3bae883863f88babaafa80d4c029974767fba5fea89ac8c2ab10512e61a38ba
canonicalized_theorem: 9070de3276acf8d06ac58439247130e444c9b02de25b968ad1fc746650a1896c
type_inferenced_theorem: 40a38002031be2cf0141c9ea33562fe69fc3891baeba9c92c487915b97d82507
initial_ast: b3bae883863f88babaafa80d4c029974767fba5fea89ac8c2ab10512e61a38ba
canonicalized_ast: 9070de3276acf8d06ac58439247130e444c9b02de25b968ad1fc746650a1896c
type_inferenced_ast: 40a38002031be2cf0141c9ea33562fe69fc3891baeba9c92c487915b97d82507

View File

@ -16,6 +16,6 @@ outputs:
x:
type: bool
value: "true"
initial_theorem: f5e4014d45239734a04d57c7b130fdf9752de245a4341062063aa5e818c5aa05
canonicalized_theorem: 8c16a6b011fc067411acaa497386bc5df9b96b91ef739f4992ba416ecf98bafc
type_inferenced_theorem: 17d810699ef381a0a9c4efcd2ad6da64b76ce5d629c05db7b2d07d563e077548
initial_ast: f5e4014d45239734a04d57c7b130fdf9752de245a4341062063aa5e818c5aa05
canonicalized_ast: 8c16a6b011fc067411acaa497386bc5df9b96b91ef739f4992ba416ecf98bafc
type_inferenced_ast: 17d810699ef381a0a9c4efcd2ad6da64b76ce5d629c05db7b2d07d563e077548

View File

@ -16,6 +16,6 @@ outputs:
x:
type: bool
value: "true"
initial_theorem: 25f4af112eb1512952d78bb7fa1d5287e3ab778255307f69304bbe1756575085
canonicalized_theorem: 248b7cc7462c3f035f337c9232a08bb5a911d7f4e153dd804a32bc597adb0210
type_inferenced_theorem: ebc3a5632c2d65e51cd9934b1ee4e395867808deeda3ecddfeaebb1b08093ed7
initial_ast: 25f4af112eb1512952d78bb7fa1d5287e3ab778255307f69304bbe1756575085
canonicalized_ast: 248b7cc7462c3f035f337c9232a08bb5a911d7f4e153dd804a32bc597adb0210
type_inferenced_ast: ebc3a5632c2d65e51cd9934b1ee4e395867808deeda3ecddfeaebb1b08093ed7

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: c45ead50a2983d040085c68b6ec28ab68cba08496478ff590b81205522acc59b
canonicalized_theorem: ad38508a91e16e3ed92d40962dc77e09264c6c7920a88f136f7e5919225becf4
type_inferenced_theorem: 8e0c3cf4e018444c0abbb52902ca70a413ab7cb2eee04d90598e034d3d67dbe7
initial_ast: c45ead50a2983d040085c68b6ec28ab68cba08496478ff590b81205522acc59b
canonicalized_ast: ad38508a91e16e3ed92d40962dc77e09264c6c7920a88f136f7e5919225becf4
type_inferenced_ast: 8e0c3cf4e018444c0abbb52902ca70a413ab7cb2eee04d90598e034d3d67dbe7

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 796cfe23085a2fd72700df353d266d3e2f62e893faeba8ed1af5ee5178f8e706
canonicalized_theorem: d06970075b65456a138d9286fd3c445c928a55bf9819d98603b494c38563eae1
type_inferenced_theorem: 41b1e49c972a34ed3d4629feabe3cb37f2078ba44fd1f3bee0a1888ca86f7ae4
initial_ast: 796cfe23085a2fd72700df353d266d3e2f62e893faeba8ed1af5ee5178f8e706
canonicalized_ast: d06970075b65456a138d9286fd3c445c928a55bf9819d98603b494c38563eae1
type_inferenced_ast: 41b1e49c972a34ed3d4629feabe3cb37f2078ba44fd1f3bee0a1888ca86f7ae4

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: cb893a674418ed59a6cb48487c45194d14fbd20bafed6c25069ec776dc8034cb
canonicalized_theorem: 81130092aaf4ba0f54d49bc07791bf17605571c6ce7d5e6f4ac657d5e10d6e42
type_inferenced_theorem: 95cbaf465a8177d13e7b2a6d3f7b5da59880158ad02df2c475f9e4a574e90771
initial_ast: cb893a674418ed59a6cb48487c45194d14fbd20bafed6c25069ec776dc8034cb
canonicalized_ast: 81130092aaf4ba0f54d49bc07791bf17605571c6ce7d5e6f4ac657d5e10d6e42
type_inferenced_ast: 95cbaf465a8177d13e7b2a6d3f7b5da59880158ad02df2c475f9e4a574e90771

View File

@ -22,6 +22,6 @@ outputs:
r:
type: "[u8; 3]"
value: "\"123\""
initial_theorem: 81dd2c459d5a1bff4963fb2cfdc67348183061934025b96739dc05c7b65a2a8b
canonicalized_theorem: 81dd2c459d5a1bff4963fb2cfdc67348183061934025b96739dc05c7b65a2a8b
type_inferenced_theorem: fcb8de69c92dff4a4adb8a160fc3b78042f394cd0dc627c5bf06820a095d7012
initial_ast: 81dd2c459d5a1bff4963fb2cfdc67348183061934025b96739dc05c7b65a2a8b
canonicalized_ast: 81dd2c459d5a1bff4963fb2cfdc67348183061934025b96739dc05c7b65a2a8b
type_inferenced_ast: fcb8de69c92dff4a4adb8a160fc3b78042f394cd0dc627c5bf06820a095d7012

View File

@ -16,6 +16,6 @@ outputs:
x:
type: bool
value: "true"
initial_theorem: ca5fc7bf19d8e6ee1b1421f1a37ea84c42bc89e8ac90711488bc17e996e88a91
canonicalized_theorem: ca5fc7bf19d8e6ee1b1421f1a37ea84c42bc89e8ac90711488bc17e996e88a91
type_inferenced_theorem: 2823901914ffea0d4cfcf449b9e45b46f67255e0b50f7a946b0552b240bedc0d
initial_ast: ca5fc7bf19d8e6ee1b1421f1a37ea84c42bc89e8ac90711488bc17e996e88a91
canonicalized_ast: ca5fc7bf19d8e6ee1b1421f1a37ea84c42bc89e8ac90711488bc17e996e88a91
type_inferenced_ast: 2823901914ffea0d4cfcf449b9e45b46f67255e0b50f7a946b0552b240bedc0d

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 9dad967730de4617fb8dad9001aac6a753f926236c99b39ea52d89fcff8c0750
canonicalized_theorem: 9dad967730de4617fb8dad9001aac6a753f926236c99b39ea52d89fcff8c0750
type_inferenced_theorem: fe9de3669f265236e4434434911e4672b7b61b7fa5f429de9cd8721424b07c35
initial_ast: 9dad967730de4617fb8dad9001aac6a753f926236c99b39ea52d89fcff8c0750
canonicalized_ast: 9dad967730de4617fb8dad9001aac6a753f926236c99b39ea52d89fcff8c0750
type_inferenced_ast: fe9de3669f265236e4434434911e4672b7b61b7fa5f429de9cd8721424b07c35

View File

@ -16,6 +16,6 @@ outputs:
x:
type: bool
value: "true"
initial_theorem: 2506cc8885eaae80a2ff90d1d231440dcfafd10fd8eb53317112ff2d2240d65e
canonicalized_theorem: 2506cc8885eaae80a2ff90d1d231440dcfafd10fd8eb53317112ff2d2240d65e
type_inferenced_theorem: bc0e1e40fcb7ac04e1dec943be5b93a1e39d43bee68a26713716765775674577
initial_ast: 2506cc8885eaae80a2ff90d1d231440dcfafd10fd8eb53317112ff2d2240d65e
canonicalized_ast: 2506cc8885eaae80a2ff90d1d231440dcfafd10fd8eb53317112ff2d2240d65e
type_inferenced_ast: bc0e1e40fcb7ac04e1dec943be5b93a1e39d43bee68a26713716765775674577

View File

@ -16,6 +16,6 @@ outputs:
x:
type: bool
value: "true"
initial_theorem: e238db049bc888e9243b421a188edbe5ae160127164b6bb75e54125052455565
canonicalized_theorem: e238db049bc888e9243b421a188edbe5ae160127164b6bb75e54125052455565
type_inferenced_theorem: e498240b5cb8c4d46a0b1035f208025df8e5feeabf9dddaa859a0a695ae8c5f6
initial_ast: e238db049bc888e9243b421a188edbe5ae160127164b6bb75e54125052455565
canonicalized_ast: e238db049bc888e9243b421a188edbe5ae160127164b6bb75e54125052455565
type_inferenced_ast: e498240b5cb8c4d46a0b1035f208025df8e5feeabf9dddaa859a0a695ae8c5f6

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: c650970b4c46e15ef7cac7663cef8cb18dc5c60e044d49741b727cd73b020b71
canonicalized_theorem: bd31242d7d82f9037c93875ddbba73c4b9ce9842a7b3c06363519b2aa35f59ac
type_inferenced_theorem: cd1b8009d96efc19823875d3f19e626cc23c8c61e66729d51c0349d748834d93
initial_ast: c650970b4c46e15ef7cac7663cef8cb18dc5c60e044d49741b727cd73b020b71
canonicalized_ast: bd31242d7d82f9037c93875ddbba73c4b9ce9842a7b3c06363519b2aa35f59ac
type_inferenced_ast: cd1b8009d96efc19823875d3f19e626cc23c8c61e66729d51c0349d748834d93

View File

@ -16,6 +16,6 @@ outputs:
x:
type: bool
value: "true"
initial_theorem: 42d14deb7baaf81b59723a453b1aa09e68bfc8677ce2903596de69ad6b7677ab
canonicalized_theorem: 42d14deb7baaf81b59723a453b1aa09e68bfc8677ce2903596de69ad6b7677ab
type_inferenced_theorem: 1559a3a4db454285ab969d20276d9112fca0b24f6726f64d4b0371dccde32abf
initial_ast: 42d14deb7baaf81b59723a453b1aa09e68bfc8677ce2903596de69ad6b7677ab
canonicalized_ast: 42d14deb7baaf81b59723a453b1aa09e68bfc8677ce2903596de69ad6b7677ab
type_inferenced_ast: 1559a3a4db454285ab969d20276d9112fca0b24f6726f64d4b0371dccde32abf

View File

@ -16,6 +16,6 @@ outputs:
x:
type: bool
value: "true"
initial_theorem: c7cf923f9ca2a963279a8ff7ae9aa0a11eaddc8ba3e107d48f3aef1d1c55a50f
canonicalized_theorem: c7cf923f9ca2a963279a8ff7ae9aa0a11eaddc8ba3e107d48f3aef1d1c55a50f
type_inferenced_theorem: 58b19d80de0abea85877257b60305e1f7b9d2e67044f60d0159699131d4ba6ec
initial_ast: c7cf923f9ca2a963279a8ff7ae9aa0a11eaddc8ba3e107d48f3aef1d1c55a50f
canonicalized_ast: c7cf923f9ca2a963279a8ff7ae9aa0a11eaddc8ba3e107d48f3aef1d1c55a50f
type_inferenced_ast: 58b19d80de0abea85877257b60305e1f7b9d2e67044f60d0159699131d4ba6ec

View File

@ -16,6 +16,6 @@ outputs:
x:
type: bool
value: "true"
initial_theorem: dbc983cae35c2cd763e9bc4505a2d1e6c063fa62ccdc858a75644175512c1558
canonicalized_theorem: dbc983cae35c2cd763e9bc4505a2d1e6c063fa62ccdc858a75644175512c1558
type_inferenced_theorem: 42686f9d46c46c829259d4b68643d144d126e61a899e3c413ea09d0ed12d24d1
initial_ast: dbc983cae35c2cd763e9bc4505a2d1e6c063fa62ccdc858a75644175512c1558
canonicalized_ast: dbc983cae35c2cd763e9bc4505a2d1e6c063fa62ccdc858a75644175512c1558
type_inferenced_ast: 42686f9d46c46c829259d4b68643d144d126e61a899e3c413ea09d0ed12d24d1

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 47b31a2f572f1ae29311322f9125a2c59dc4438ab06366b93f285fa0d8b0b23b
canonicalized_theorem: 47b31a2f572f1ae29311322f9125a2c59dc4438ab06366b93f285fa0d8b0b23b
type_inferenced_theorem: c18d0320e45339073f4e7057fe5aa3f268dc7597dfe4aef10a07f120bbdb4863
initial_ast: 47b31a2f572f1ae29311322f9125a2c59dc4438ab06366b93f285fa0d8b0b23b
canonicalized_ast: 47b31a2f572f1ae29311322f9125a2c59dc4438ab06366b93f285fa0d8b0b23b
type_inferenced_ast: c18d0320e45339073f4e7057fe5aa3f268dc7597dfe4aef10a07f120bbdb4863

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 9c0229a2b927c2bbbe66d555b1a9f40ce8a9a2a5ac5c2760f1f463be6674fe8b
canonicalized_theorem: eb2512a0873084cd830fab0a3cb008c7ca6e543d52b2ada5724379a9a56ef98a
type_inferenced_theorem: f114d26de89fc0b27bde7b06eca11c3faf77137fbdb5b56583ee7e9fba0db8f0
initial_ast: 9c0229a2b927c2bbbe66d555b1a9f40ce8a9a2a5ac5c2760f1f463be6674fe8b
canonicalized_ast: eb2512a0873084cd830fab0a3cb008c7ca6e543d52b2ada5724379a9a56ef98a
type_inferenced_ast: f114d26de89fc0b27bde7b06eca11c3faf77137fbdb5b56583ee7e9fba0db8f0

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: cc6ad9bf91f0055144e3267e0069b470f01e115d4e653f41059ba252a28f8208
canonicalized_theorem: 5e01d6c09abedddaabb2de1ae9ded2763f31736688a6c7ce89c6b719845680cc
type_inferenced_theorem: 577811bb30fc1e5f9ce24e162e1d87fcdce5d86d37d693f7e0a940a000d1b901
initial_ast: cc6ad9bf91f0055144e3267e0069b470f01e115d4e653f41059ba252a28f8208
canonicalized_ast: 5e01d6c09abedddaabb2de1ae9ded2763f31736688a6c7ce89c6b719845680cc
type_inferenced_ast: 577811bb30fc1e5f9ce24e162e1d87fcdce5d86d37d693f7e0a940a000d1b901

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: eb95146b4dcbaa16244c766c3a4ffc8b804b65ba20bc905cea8a464853603510
canonicalized_theorem: edb4d22d5499b13f5e3bffe2e770ea3207858f8c21c4020b76e3568d2cc1d2d8
type_inferenced_theorem: 3629aa30a841dd8f299c667a1c63443d5622712e9006b7f6bbfa9dd025cd798d
initial_ast: eb95146b4dcbaa16244c766c3a4ffc8b804b65ba20bc905cea8a464853603510
canonicalized_ast: edb4d22d5499b13f5e3bffe2e770ea3207858f8c21c4020b76e3568d2cc1d2d8
type_inferenced_ast: 3629aa30a841dd8f299c667a1c63443d5622712e9006b7f6bbfa9dd025cd798d

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 15baea7cfadb05d32f5cf5375a25208c42e173e7832c00c5fb7f9007aca5dc48
canonicalized_theorem: cd70c9c9f2d86b38d0e49d371fad697375cd6674206c9b3eb32e534a0367afe1
type_inferenced_theorem: 1cbb9181a67580fd51535f5273a2b8168270c3213061bcc5c6604b3af203d7b5
initial_ast: 15baea7cfadb05d32f5cf5375a25208c42e173e7832c00c5fb7f9007aca5dc48
canonicalized_ast: cd70c9c9f2d86b38d0e49d371fad697375cd6674206c9b3eb32e534a0367afe1
type_inferenced_ast: 1cbb9181a67580fd51535f5273a2b8168270c3213061bcc5c6604b3af203d7b5

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: a29044947f267f770abe4b67c6477ed5971c4b04d17a34a043f24be31dd3535c
canonicalized_theorem: 3a4f6774136e7b9453a58bfaecb228595ff94e55630476acc9e7b6b93a0169a2
type_inferenced_theorem: f8457618409d5f1508b82e155212a5d9321a11314b581f4f5062c220f99dcd11
initial_ast: a29044947f267f770abe4b67c6477ed5971c4b04d17a34a043f24be31dd3535c
canonicalized_ast: 3a4f6774136e7b9453a58bfaecb228595ff94e55630476acc9e7b6b93a0169a2
type_inferenced_ast: f8457618409d5f1508b82e155212a5d9321a11314b581f4f5062c220f99dcd11

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 611c6362e365456206304d7d28cc428bf49cf57d907fcfa5c106426f32e64515
canonicalized_theorem: 216d2e239b59ea1aefac5e503233ec6c1d3d480b5cc316d02f4910ee3eafd087
type_inferenced_theorem: 17de88a1fa4f500b91cdd10512bb892f88e8eb987fa5496f6a4d3441b9aef5b5
initial_ast: 611c6362e365456206304d7d28cc428bf49cf57d907fcfa5c106426f32e64515
canonicalized_ast: 216d2e239b59ea1aefac5e503233ec6c1d3d480b5cc316d02f4910ee3eafd087
type_inferenced_ast: 17de88a1fa4f500b91cdd10512bb892f88e8eb987fa5496f6a4d3441b9aef5b5

View File

@ -34,6 +34,6 @@ outputs:
x:
type: bool
value: "true"
initial_theorem: 457931d2a45a5872b3f523ee9ed3ae922635750e38048927ee39dcd2fdaf338d
canonicalized_theorem: 457931d2a45a5872b3f523ee9ed3ae922635750e38048927ee39dcd2fdaf338d
type_inferenced_theorem: 5268ad28b10aedcd44c0aafced11ed0351999fceb6a202ed5a1faf833da5c2c4
initial_ast: 457931d2a45a5872b3f523ee9ed3ae922635750e38048927ee39dcd2fdaf338d
canonicalized_ast: 457931d2a45a5872b3f523ee9ed3ae922635750e38048927ee39dcd2fdaf338d
type_inferenced_ast: 5268ad28b10aedcd44c0aafced11ed0351999fceb6a202ed5a1faf833da5c2c4

View File

@ -34,6 +34,6 @@ outputs:
x:
type: bool
value: "true"
initial_theorem: 57ab6c27f0cc1f947f533b8758a8d7643358eb972fa52d8e97fd12403a3a14e0
canonicalized_theorem: 57ab6c27f0cc1f947f533b8758a8d7643358eb972fa52d8e97fd12403a3a14e0
type_inferenced_theorem: 55a49f89b8b70b430ca8919b6dbbb3b350a98a8a9e498377d878dd4336a050e6
initial_ast: 57ab6c27f0cc1f947f533b8758a8d7643358eb972fa52d8e97fd12403a3a14e0
canonicalized_ast: 57ab6c27f0cc1f947f533b8758a8d7643358eb972fa52d8e97fd12403a3a14e0
type_inferenced_ast: 55a49f89b8b70b430ca8919b6dbbb3b350a98a8a9e498377d878dd4336a050e6

View File

@ -34,6 +34,6 @@ outputs:
x:
type: bool
value: "true"
initial_theorem: dcd562246dac98c86986cd3c8519ef6bab0d6ad9eb910ef2b797e25eebf66160
canonicalized_theorem: dcd562246dac98c86986cd3c8519ef6bab0d6ad9eb910ef2b797e25eebf66160
type_inferenced_theorem: ac5fc2712e702bdd3735bdac2885d028ed66ced47e0f3c310f8c17191a6aa9fe
initial_ast: dcd562246dac98c86986cd3c8519ef6bab0d6ad9eb910ef2b797e25eebf66160
canonicalized_ast: dcd562246dac98c86986cd3c8519ef6bab0d6ad9eb910ef2b797e25eebf66160
type_inferenced_ast: ac5fc2712e702bdd3735bdac2885d028ed66ced47e0f3c310f8c17191a6aa9fe

View File

@ -34,6 +34,6 @@ outputs:
x:
type: bool
value: "false"
initial_theorem: aa57c32deb2ca3f69aac1c8d6ab1c9ca787d7539d15dd6ae1d132c4bdf1628f0
canonicalized_theorem: aa57c32deb2ca3f69aac1c8d6ab1c9ca787d7539d15dd6ae1d132c4bdf1628f0
type_inferenced_theorem: 730367497b7b56381f29321e18eade74d70107a6d8c657b47022215015f53801
initial_ast: aa57c32deb2ca3f69aac1c8d6ab1c9ca787d7539d15dd6ae1d132c4bdf1628f0
canonicalized_ast: aa57c32deb2ca3f69aac1c8d6ab1c9ca787d7539d15dd6ae1d132c4bdf1628f0
type_inferenced_ast: 730367497b7b56381f29321e18eade74d70107a6d8c657b47022215015f53801

View File

@ -34,6 +34,6 @@ outputs:
x:
type: bool
value: "true"
initial_theorem: fe77500ebf653bfe8620287f2c9e52f0e985c915a09a285be3b659a308649a65
canonicalized_theorem: fe77500ebf653bfe8620287f2c9e52f0e985c915a09a285be3b659a308649a65
type_inferenced_theorem: 52112d0a4983f119ba82655780b8aead34d1cced758e5595ce62dbc717f95cae
initial_ast: fe77500ebf653bfe8620287f2c9e52f0e985c915a09a285be3b659a308649a65
canonicalized_ast: fe77500ebf653bfe8620287f2c9e52f0e985c915a09a285be3b659a308649a65
type_inferenced_ast: 52112d0a4983f119ba82655780b8aead34d1cced758e5595ce62dbc717f95cae

View File

@ -100,6 +100,6 @@ outputs:
r:
type: char
value: "'\\u{1f62d}'"
initial_theorem: 680d480560e2a187669f5bf3c328cee1865021cbe4c19f3350db843d312b6406
canonicalized_theorem: 680d480560e2a187669f5bf3c328cee1865021cbe4c19f3350db843d312b6406
type_inferenced_theorem: 385365a7d46c458c2d5f94690acc53191bf234bcdb928a9efc454c33ba06718a
initial_ast: 680d480560e2a187669f5bf3c328cee1865021cbe4c19f3350db843d312b6406
canonicalized_ast: 680d480560e2a187669f5bf3c328cee1865021cbe4c19f3350db843d312b6406
type_inferenced_ast: 385365a7d46c458c2d5f94690acc53191bf234bcdb928a9efc454c33ba06718a

View File

@ -100,6 +100,6 @@ outputs:
r:
type: char
value: "'a'"
initial_theorem: 66ea1340fc8ae77142ea3d254d8d3350a2775549ea7ba0ab550ec88b5c5721d4
canonicalized_theorem: 66ea1340fc8ae77142ea3d254d8d3350a2775549ea7ba0ab550ec88b5c5721d4
type_inferenced_theorem: 7b07de0d440a813b674c11dcc71fa4daee8224d5136844d66bc7fafa60f38725
initial_ast: 66ea1340fc8ae77142ea3d254d8d3350a2775549ea7ba0ab550ec88b5c5721d4
canonicalized_ast: 66ea1340fc8ae77142ea3d254d8d3350a2775549ea7ba0ab550ec88b5c5721d4
type_inferenced_ast: 7b07de0d440a813b674c11dcc71fa4daee8224d5136844d66bc7fafa60f38725

View File

@ -19,6 +19,6 @@ outputs:
r1:
type: bool
value: "true"
initial_theorem: 737b6db278359fac5760302a43f0f27b06e38d9dd6affce2b61946545cb475ac
canonicalized_theorem: 737b6db278359fac5760302a43f0f27b06e38d9dd6affce2b61946545cb475ac
type_inferenced_theorem: 07d7f6418670dca3233f14b5a7dbde73787168b2cb210f6a66860a0d9a0e9ea7
initial_ast: 737b6db278359fac5760302a43f0f27b06e38d9dd6affce2b61946545cb475ac
canonicalized_ast: 737b6db278359fac5760302a43f0f27b06e38d9dd6affce2b61946545cb475ac
type_inferenced_ast: 07d7f6418670dca3233f14b5a7dbde73787168b2cb210f6a66860a0d9a0e9ea7

View File

@ -100,6 +100,6 @@ outputs:
r:
type: char
value: "'\\u{1f62d}'"
initial_theorem: af450dbf8c804894b41a738de1832af3092cae4d2823b5839da8b7dd6a8679de
canonicalized_theorem: af450dbf8c804894b41a738de1832af3092cae4d2823b5839da8b7dd6a8679de
type_inferenced_theorem: ec94a20aaab8811399eb3cbd6b30345083f956510e3b5cf6ffb55d3087e83cc8
initial_ast: af450dbf8c804894b41a738de1832af3092cae4d2823b5839da8b7dd6a8679de
canonicalized_ast: af450dbf8c804894b41a738de1832af3092cae4d2823b5839da8b7dd6a8679de
type_inferenced_ast: ec94a20aaab8811399eb3cbd6b30345083f956510e3b5cf6ffb55d3087e83cc8

View File

@ -0,0 +1,21 @@
---
namespace: Compile
expectation: Pass
outputs:
- circuit:
num_public_variables: 0
num_private_variables: 1
num_constraints: 1
at: 042610d0fd1fe6d6ac112138f8755752f44c7d2a00f1b5960574d6da5cda393f
bt: e97756698880ab7555a959a5fb5c6b4e15bd64612aa677adbfe2d0bd91f0a83c
ct: cf1cbb66a638b4860a516671fb74850e6ccf787fe6c4c8d29e9c04efe880bd05
output:
- input_file: input/dummy.in
output:
registers:
r0:
type: bool
value: "true"
initial_ast: aa87a9d1c477e2d5b7ae824fb434188dd6c5c519dd27ebaecd30e44be401ee1b
canonicalized_ast: f188b62839a17478878fe1dfc9863bac20fa1c0c6cf51eae5e13c5f5f79f6c1a
type_inferenced_ast: 9e838aeeebdd2f800c2e7305614f123c27d8390fbadabf1bcb15dae6466669a6

View File

@ -0,0 +1,5 @@
---
namespace: Compile
expectation: Fail
outputs:
- " --> compiler-test:16:3\n |\n 16 | let foo: Self = Foo::new();\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^\n |\n = cannot call keyword `Self` outside of a circuit function"

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 69d5d1d8e5f05bad8d61b1c14fe6089e661c13e91160f7e4be416dca1a86e9db
canonicalized_theorem: 69d5d1d8e5f05bad8d61b1c14fe6089e661c13e91160f7e4be416dca1a86e9db
type_inferenced_theorem: c0295d3b69631f79838a642c667a7da8698eda4e20d287a5bf2693a0717a4978
initial_ast: 69d5d1d8e5f05bad8d61b1c14fe6089e661c13e91160f7e4be416dca1a86e9db
canonicalized_ast: 69d5d1d8e5f05bad8d61b1c14fe6089e661c13e91160f7e4be416dca1a86e9db
type_inferenced_ast: c0295d3b69631f79838a642c667a7da8698eda4e20d287a5bf2693a0717a4978

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 583cb3219a67fcbb30d241dec9e2860d99db27b109c8d095c10838ea342efd3c
canonicalized_theorem: 583cb3219a67fcbb30d241dec9e2860d99db27b109c8d095c10838ea342efd3c
type_inferenced_theorem: bbb33dca916b1310a58492ecd4bc74ed03ef3ab87870391839fc8b627f31e941
initial_ast: 583cb3219a67fcbb30d241dec9e2860d99db27b109c8d095c10838ea342efd3c
canonicalized_ast: 583cb3219a67fcbb30d241dec9e2860d99db27b109c8d095c10838ea342efd3c
type_inferenced_ast: bbb33dca916b1310a58492ecd4bc74ed03ef3ab87870391839fc8b627f31e941

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: e96236da6f97f8472930c05f30db95afa0c914060fe3ee908af57dbc1644f6b8
canonicalized_theorem: e96236da6f97f8472930c05f30db95afa0c914060fe3ee908af57dbc1644f6b8
type_inferenced_theorem: 933e32a944dbeba01b9c1600ccdec94370927087a3a2b5511bdf4767b5fecd7b
initial_ast: e96236da6f97f8472930c05f30db95afa0c914060fe3ee908af57dbc1644f6b8
canonicalized_ast: e96236da6f97f8472930c05f30db95afa0c914060fe3ee908af57dbc1644f6b8
type_inferenced_ast: 933e32a944dbeba01b9c1600ccdec94370927087a3a2b5511bdf4767b5fecd7b

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: u32
value: "100"
initial_theorem: 7a6b3abb44b3770f98b45c1f961539ae538e1b5fb2b62ae7bffeaf2209739bc3
canonicalized_theorem: 7a6b3abb44b3770f98b45c1f961539ae538e1b5fb2b62ae7bffeaf2209739bc3
type_inferenced_theorem: 88703ec6b9780a1e7629b14afd0e3da35ff4d68f968db2926242f745d6f61b4d
initial_ast: 7a6b3abb44b3770f98b45c1f961539ae538e1b5fb2b62ae7bffeaf2209739bc3
canonicalized_ast: 7a6b3abb44b3770f98b45c1f961539ae538e1b5fb2b62ae7bffeaf2209739bc3
type_inferenced_ast: 88703ec6b9780a1e7629b14afd0e3da35ff4d68f968db2926242f745d6f61b4d

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 76c7ce0af826afd3568deb3fb910dfbee9dc3b1db1f4a1ba6641e49f6d621a41
canonicalized_theorem: 9c79521d3198b8ed197251626ed0e20b483026151ca99b3fb349472c63a56cc5
type_inferenced_theorem: 1c97a2ba48df4c16b137bf9712981bad253c9585cd6e4fcae5635e0cd6d8d301
initial_ast: 76c7ce0af826afd3568deb3fb910dfbee9dc3b1db1f4a1ba6641e49f6d621a41
canonicalized_ast: 9c79521d3198b8ed197251626ed0e20b483026151ca99b3fb349472c63a56cc5
type_inferenced_ast: 1c97a2ba48df4c16b137bf9712981bad253c9585cd6e4fcae5635e0cd6d8d301

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 3709cdd3aeb7a84061aaafa3513872a4259583bcfcaa87b2b735610d54814fdf
canonicalized_theorem: 3709cdd3aeb7a84061aaafa3513872a4259583bcfcaa87b2b735610d54814fdf
type_inferenced_theorem: 0995eb0322eeddd4a46eadb17414ce9d79507948279f6a5cc570035c6cdc34ef
initial_ast: 3709cdd3aeb7a84061aaafa3513872a4259583bcfcaa87b2b735610d54814fdf
canonicalized_ast: 3709cdd3aeb7a84061aaafa3513872a4259583bcfcaa87b2b735610d54814fdf
type_inferenced_ast: 0995eb0322eeddd4a46eadb17414ce9d79507948279f6a5cc570035c6cdc34ef

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: f4796f1f9215d0c6d42478aae63b1495dfad36eaaec4a981dddac9def85ffef0
canonicalized_theorem: f4796f1f9215d0c6d42478aae63b1495dfad36eaaec4a981dddac9def85ffef0
type_inferenced_theorem: f808f56c8af9d6677bf54e7f777b3023f82144462df704dc4f3e39830be4c109
initial_ast: f4796f1f9215d0c6d42478aae63b1495dfad36eaaec4a981dddac9def85ffef0
canonicalized_ast: f4796f1f9215d0c6d42478aae63b1495dfad36eaaec4a981dddac9def85ffef0
type_inferenced_ast: f808f56c8af9d6677bf54e7f777b3023f82144462df704dc4f3e39830be4c109

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: b6df670bda418b0aa854ad50b4fef19b44de312f56894c5a1148f9b0a2d9afee
canonicalized_theorem: b6df670bda418b0aa854ad50b4fef19b44de312f56894c5a1148f9b0a2d9afee
type_inferenced_theorem: fcc852041018d4e7bde56fa9e0cd5c75642153a708f37aec9ce392d1a89c8a15
initial_ast: b6df670bda418b0aa854ad50b4fef19b44de312f56894c5a1148f9b0a2d9afee
canonicalized_ast: b6df670bda418b0aa854ad50b4fef19b44de312f56894c5a1148f9b0a2d9afee
type_inferenced_ast: fcc852041018d4e7bde56fa9e0cd5c75642153a708f37aec9ce392d1a89c8a15

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 4c74b65863cddde8ce523495358ab619ec48645dcb8409658a3fb3d7a3821d6d
canonicalized_theorem: b5697d5884139da5a68861213ff3c7660f694e682078e1bd350856206e0289b8
type_inferenced_theorem: ff4b8f91f014277d6bb2d8d82c31361e5a5c5a46ed87a1e61f0c2e2e8d5fd254
initial_ast: 4c74b65863cddde8ce523495358ab619ec48645dcb8409658a3fb3d7a3821d6d
canonicalized_ast: b5697d5884139da5a68861213ff3c7660f694e682078e1bd350856206e0289b8
type_inferenced_ast: ff4b8f91f014277d6bb2d8d82c31361e5a5c5a46ed87a1e61f0c2e2e8d5fd254

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 35f870f8ad050ad60461320ac83f5890b05a371e175ac567205ea82848f7b843
canonicalized_theorem: 35f870f8ad050ad60461320ac83f5890b05a371e175ac567205ea82848f7b843
type_inferenced_theorem: 4834243c03feb9cfedec039a852cdd27a9a78c1d77e402977056ab5e9a939ab3
initial_ast: 35f870f8ad050ad60461320ac83f5890b05a371e175ac567205ea82848f7b843
canonicalized_ast: 35f870f8ad050ad60461320ac83f5890b05a371e175ac567205ea82848f7b843
type_inferenced_ast: 4834243c03feb9cfedec039a852cdd27a9a78c1d77e402977056ab5e9a939ab3

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: deb8019cf05028fb78c7b991b9c34b3f57a3a451291fdcdeff3d309046146a01
canonicalized_theorem: deb8019cf05028fb78c7b991b9c34b3f57a3a451291fdcdeff3d309046146a01
type_inferenced_theorem: a6e408cad754cdd3adc08ca8506f63dd733e300bc821819fb417fa7060c8d044
initial_ast: deb8019cf05028fb78c7b991b9c34b3f57a3a451291fdcdeff3d309046146a01
canonicalized_ast: deb8019cf05028fb78c7b991b9c34b3f57a3a451291fdcdeff3d309046146a01
type_inferenced_ast: a6e408cad754cdd3adc08ca8506f63dd733e300bc821819fb417fa7060c8d044

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 8edf6af581db0a59ea7ef541bf7a69cbe2123d03e8b2b126f0d97f863e380a13
canonicalized_theorem: cfd575b43758d9e6fd65452f955f940a80b519bfec68f5d2f89a897d3bb93981
type_inferenced_theorem: 9fcbf7898afbf3d3c453387620845717512ed909d934470386975e5a11140b42
initial_ast: 8edf6af581db0a59ea7ef541bf7a69cbe2123d03e8b2b126f0d97f863e380a13
canonicalized_ast: cfd575b43758d9e6fd65452f955f940a80b519bfec68f5d2f89a897d3bb93981
type_inferenced_ast: 9fcbf7898afbf3d3c453387620845717512ed909d934470386975e5a11140b42

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: f61ad518c877d851b60248bd2868e80e44feeef578aaef2e6cfa30a6ac1dd325
canonicalized_theorem: c95d6c670a0843f7c11efb4bec4784890b8504bd3f9dc1d5cf950d0683e8538a
type_inferenced_theorem: 5db7661ac71e6ee9096571c88d1f36855db0d21f3b1757f5e07c3c85c6b2c8ea
initial_ast: f61ad518c877d851b60248bd2868e80e44feeef578aaef2e6cfa30a6ac1dd325
canonicalized_ast: c95d6c670a0843f7c11efb4bec4784890b8504bd3f9dc1d5cf950d0683e8538a
type_inferenced_ast: 5db7661ac71e6ee9096571c88d1f36855db0d21f3b1757f5e07c3c85c6b2c8ea

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 46fccf2a1d04ff7bbfb9a88eeceb6cfd39adcf7ce2e2323d4fb83f4ae3dba273
canonicalized_theorem: 222568f9f7b61876690514fdd2dd12419b2e889269a2b7aabd7223d291167da5
type_inferenced_theorem: f1a5656978bd48409401788332b1a1d90c969178e65af06b54d5b4445be84375
initial_ast: 46fccf2a1d04ff7bbfb9a88eeceb6cfd39adcf7ce2e2323d4fb83f4ae3dba273
canonicalized_ast: 222568f9f7b61876690514fdd2dd12419b2e889269a2b7aabd7223d291167da5
type_inferenced_ast: f1a5656978bd48409401788332b1a1d90c969178e65af06b54d5b4445be84375

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 6e01b3fd6a8b93c71386db6034a1b989a06cee469df2a634dddca7a8151fc8be
canonicalized_theorem: 6e01b3fd6a8b93c71386db6034a1b989a06cee469df2a634dddca7a8151fc8be
type_inferenced_theorem: b868fba47889acf8369e00b96440fe81ebfdba5dd042dc4bddd89f0bb945ac02
initial_ast: 6e01b3fd6a8b93c71386db6034a1b989a06cee469df2a634dddca7a8151fc8be
canonicalized_ast: 6e01b3fd6a8b93c71386db6034a1b989a06cee469df2a634dddca7a8151fc8be
type_inferenced_ast: b868fba47889acf8369e00b96440fe81ebfdba5dd042dc4bddd89f0bb945ac02

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: fb0bd30fe7fb8ec624c04628dc9bc3cfd384515ef0dfe0cfdfd36084f1b592ff
canonicalized_theorem: 9e5badf3fb1cd8940665b9ed9eb0a1e56d89dd0be61fca0436d0a30eb7e4c50c
type_inferenced_theorem: b08b23ad6859b39c79015dc41bfaa7ea5527db980706d1e6fc5e74c634a8b4c1
initial_ast: fb0bd30fe7fb8ec624c04628dc9bc3cfd384515ef0dfe0cfdfd36084f1b592ff
canonicalized_ast: 9e5badf3fb1cd8940665b9ed9eb0a1e56d89dd0be61fca0436d0a30eb7e4c50c
type_inferenced_ast: b08b23ad6859b39c79015dc41bfaa7ea5527db980706d1e6fc5e74c634a8b4c1

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: e04195ede456babe4121950806163d2cc8c1e4b0180a37969099749ae3dfc3b9
canonicalized_theorem: a8673bb8b05eb0289435b8b2335402f022df9ff46db523707cc61eca1b9679ad
type_inferenced_theorem: afeabed72941728dc8a8cc0ed27d1e8170f7dd477275be29e794b6c28142f2a7
initial_ast: e04195ede456babe4121950806163d2cc8c1e4b0180a37969099749ae3dfc3b9
canonicalized_ast: a8673bb8b05eb0289435b8b2335402f022df9ff46db523707cc61eca1b9679ad
type_inferenced_ast: afeabed72941728dc8a8cc0ed27d1e8170f7dd477275be29e794b6c28142f2a7

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 8865aeec0e88fe9923a55ba568c6615db5dcec6c2cfc127ecd2920b11e3455f7
canonicalized_theorem: 8865aeec0e88fe9923a55ba568c6615db5dcec6c2cfc127ecd2920b11e3455f7
type_inferenced_theorem: 3b24858f79ee4f4f795107ccf916d64b957cb0c81cfa4573c2cb5645b0541ef7
initial_ast: 8865aeec0e88fe9923a55ba568c6615db5dcec6c2cfc127ecd2920b11e3455f7
canonicalized_ast: 8865aeec0e88fe9923a55ba568c6615db5dcec6c2cfc127ecd2920b11e3455f7
type_inferenced_ast: 3b24858f79ee4f4f795107ccf916d64b957cb0c81cfa4573c2cb5645b0541ef7

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 70bf9e6efa84336b4d023dd5484ad15897678c9d4851b5d7cfdb8cb6b79facaa
canonicalized_theorem: 70bf9e6efa84336b4d023dd5484ad15897678c9d4851b5d7cfdb8cb6b79facaa
type_inferenced_theorem: b410b94ea2070cbfe393229700288a461896a65bb84feed3c0a006aae04566f8
initial_ast: 70bf9e6efa84336b4d023dd5484ad15897678c9d4851b5d7cfdb8cb6b79facaa
canonicalized_ast: 70bf9e6efa84336b4d023dd5484ad15897678c9d4851b5d7cfdb8cb6b79facaa
type_inferenced_ast: b410b94ea2070cbfe393229700288a461896a65bb84feed3c0a006aae04566f8

View File

@ -16,6 +16,6 @@ outputs:
- input_file: cond_2.in
output:
registers: {}
initial_theorem: d6aad3c859ad1b7f4d3d258c9489cd5a4c26b3a36b10b40dd823c976fb3e1000
canonicalized_theorem: 0291e08f42b60c0ef76f666e610bc7ef850f22e3cb849088f516e2feb312cf6e
type_inferenced_theorem: f414dd49f054e54d564501fa52bb266dd152d8c32a84dd54b61f782380d02dbe
initial_ast: d6aad3c859ad1b7f4d3d258c9489cd5a4c26b3a36b10b40dd823c976fb3e1000
canonicalized_ast: 0291e08f42b60c0ef76f666e610bc7ef850f22e3cb849088f516e2feb312cf6e
type_inferenced_ast: f414dd49f054e54d564501fa52bb266dd152d8c32a84dd54b61f782380d02dbe

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 40014c8e30c3aa703f4f0362a16df094a45d5f0df5a94dc26e96d87170784df7
canonicalized_theorem: 40014c8e30c3aa703f4f0362a16df094a45d5f0df5a94dc26e96d87170784df7
type_inferenced_theorem: fb64ba6e32355ee6df3bd9942ca209f35714ce61511a9b8b867a1587518647a8
initial_ast: 40014c8e30c3aa703f4f0362a16df094a45d5f0df5a94dc26e96d87170784df7
canonicalized_ast: 40014c8e30c3aa703f4f0362a16df094a45d5f0df5a94dc26e96d87170784df7
type_inferenced_ast: fb64ba6e32355ee6df3bd9942ca209f35714ce61511a9b8b867a1587518647a8

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 2c41e0c55e5a64fd04160a56adf627d90cdbf665ebf1a0fec4a2b9049234652a
canonicalized_theorem: 2c41e0c55e5a64fd04160a56adf627d90cdbf665ebf1a0fec4a2b9049234652a
type_inferenced_theorem: fa6ccd4112e58ba2e97f3e600dd5d4858c45bb39a858bdd1b1867f494758cbca
initial_ast: 2c41e0c55e5a64fd04160a56adf627d90cdbf665ebf1a0fec4a2b9049234652a
canonicalized_ast: 2c41e0c55e5a64fd04160a56adf627d90cdbf665ebf1a0fec4a2b9049234652a
type_inferenced_ast: fa6ccd4112e58ba2e97f3e600dd5d4858c45bb39a858bdd1b1867f494758cbca

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: e239286adc6d00ad3d4328d5911a60d5cf05612610f994faf05208420aa1ca6a
canonicalized_theorem: e239286adc6d00ad3d4328d5911a60d5cf05612610f994faf05208420aa1ca6a
type_inferenced_theorem: 8d10cefa3e8eb8f7d5668cb153ebc4574ca591905ab22f9ff7c81cb1be0fb110
initial_ast: e239286adc6d00ad3d4328d5911a60d5cf05612610f994faf05208420aa1ca6a
canonicalized_ast: e239286adc6d00ad3d4328d5911a60d5cf05612610f994faf05208420aa1ca6a
type_inferenced_ast: 8d10cefa3e8eb8f7d5668cb153ebc4574ca591905ab22f9ff7c81cb1be0fb110

View File

@ -22,6 +22,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: d81597e32ce19fd62ae7043b42bbd3fd71980c74b913081cb7ed65a249efea67
canonicalized_theorem: d81597e32ce19fd62ae7043b42bbd3fd71980c74b913081cb7ed65a249efea67
type_inferenced_theorem: 5e163645d00884a3abf845af25115c2479d13517733d42f2a11c092d040d83e8
initial_ast: d81597e32ce19fd62ae7043b42bbd3fd71980c74b913081cb7ed65a249efea67
canonicalized_ast: d81597e32ce19fd62ae7043b42bbd3fd71980c74b913081cb7ed65a249efea67
type_inferenced_ast: 5e163645d00884a3abf845af25115c2479d13517733d42f2a11c092d040d83e8

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: f2a4b944ccecd2be35bab0a4922fb96595b75007db6c35f4be3a1aac08426f9e
canonicalized_theorem: f2a4b944ccecd2be35bab0a4922fb96595b75007db6c35f4be3a1aac08426f9e
type_inferenced_theorem: bb0b9193a4d3b6d9a91a56820f902c17f0b64705cd6d85cb942479952ec95fab
initial_ast: f2a4b944ccecd2be35bab0a4922fb96595b75007db6c35f4be3a1aac08426f9e
canonicalized_ast: f2a4b944ccecd2be35bab0a4922fb96595b75007db6c35f4be3a1aac08426f9e
type_inferenced_ast: bb0b9193a4d3b6d9a91a56820f902c17f0b64705cd6d85cb942479952ec95fab

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: 057e2a8b0841e05d95c13c39d259a26fc12091362ef60f7291329a1a82f0af5e
canonicalized_theorem: 057e2a8b0841e05d95c13c39d259a26fc12091362ef60f7291329a1a82f0af5e
type_inferenced_theorem: 054b00815c79679a877ab34a89a5dbd27771f5896984c684bcc43a74c5792b32
initial_ast: 057e2a8b0841e05d95c13c39d259a26fc12091362ef60f7291329a1a82f0af5e
canonicalized_ast: 057e2a8b0841e05d95c13c39d259a26fc12091362ef60f7291329a1a82f0af5e
type_inferenced_ast: 054b00815c79679a877ab34a89a5dbd27771f5896984c684bcc43a74c5792b32

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: ca762bf3526c963a715e0b3ba8f439fde8cfc3466c92e8a76fd3fd78f3dcdcdb
canonicalized_theorem: ca762bf3526c963a715e0b3ba8f439fde8cfc3466c92e8a76fd3fd78f3dcdcdb
type_inferenced_theorem: 9d00a752fd798ce8b44834df8ed766eb9acd737fade0ed6af938f668c3560a25
initial_ast: ca762bf3526c963a715e0b3ba8f439fde8cfc3466c92e8a76fd3fd78f3dcdcdb
canonicalized_ast: ca762bf3526c963a715e0b3ba8f439fde8cfc3466c92e8a76fd3fd78f3dcdcdb
type_inferenced_ast: 9d00a752fd798ce8b44834df8ed766eb9acd737fade0ed6af938f668c3560a25

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: a60a2c808f9c8b475e8d4917307e483db1742b5baade6e826e56d848520f24a4
canonicalized_theorem: 9845ae56693cf58d9c1283d2bf2d1d5e8f2be7c2d018cbb689a6fb09ba952451
type_inferenced_theorem: aae7a9954e18cf849f41af233cedd6a472cdd59c6dfdfe25a2433f0a6eaf43c8
initial_ast: a60a2c808f9c8b475e8d4917307e483db1742b5baade6e826e56d848520f24a4
canonicalized_ast: 9845ae56693cf58d9c1283d2bf2d1d5e8f2be7c2d018cbb689a6fb09ba952451
type_inferenced_ast: aae7a9954e18cf849f41af233cedd6a472cdd59c6dfdfe25a2433f0a6eaf43c8

View File

@ -16,6 +16,6 @@ outputs:
r0:
type: bool
value: "true"
initial_theorem: a62620cae9946643df9ed0991a0f5134e786fac8d561fb15a33d710cf546799c
canonicalized_theorem: 1dc02f76c11beb5dfadc9b3d1f5423ad2bce40502600a42de066a88f97188ed4
type_inferenced_theorem: 41e32609589c1bcb33e9dcaea9864e8868b5d2028b65924a3145b3aae7c6166a
initial_ast: a62620cae9946643df9ed0991a0f5134e786fac8d561fb15a33d710cf546799c
canonicalized_ast: 1dc02f76c11beb5dfadc9b3d1f5423ad2bce40502600a42de066a88f97188ed4
type_inferenced_ast: 41e32609589c1bcb33e9dcaea9864e8868b5d2028b65924a3145b3aae7c6166a

View File

@ -16,6 +16,6 @@ outputs:
r:
type: bool
value: "true"
initial_theorem: 59a25bf44613617124a4aa8ea169751c096fb50c5e3797bfe33705febc4fe10d
canonicalized_theorem: 59a25bf44613617124a4aa8ea169751c096fb50c5e3797bfe33705febc4fe10d
type_inferenced_theorem: f8e5c1c95937d6f7bd04e009d65f2345281dd68e1669b2ecf740f4b071b106f6
initial_ast: 59a25bf44613617124a4aa8ea169751c096fb50c5e3797bfe33705febc4fe10d
canonicalized_ast: 59a25bf44613617124a4aa8ea169751c096fb50c5e3797bfe33705febc4fe10d
type_inferenced_ast: f8e5c1c95937d6f7bd04e009d65f2345281dd68e1669b2ecf740f4b071b106f6

View File

@ -16,6 +16,6 @@ outputs:
r:
type: bool
value: "true"
initial_theorem: 6fe0af537868b537a8e6b410439b669012cd211fdb988d8457ce6d893d579bfe
canonicalized_theorem: 6fe0af537868b537a8e6b410439b669012cd211fdb988d8457ce6d893d579bfe
type_inferenced_theorem: 8020277aecd403a5edbd722c320f25cdbd5ba5f930ea4e427929ab7373db8894
initial_ast: 6fe0af537868b537a8e6b410439b669012cd211fdb988d8457ce6d893d579bfe
canonicalized_ast: 6fe0af537868b537a8e6b410439b669012cd211fdb988d8457ce6d893d579bfe
type_inferenced_ast: 8020277aecd403a5edbd722c320f25cdbd5ba5f930ea4e427929ab7373db8894

View File

@ -16,6 +16,6 @@ outputs:
r:
type: bool
value: "true"
initial_theorem: ed504c4658bfd6d096a4f17fb16bdc8a587b6c91fc669ade95179d8792b1f4ea
canonicalized_theorem: ed504c4658bfd6d096a4f17fb16bdc8a587b6c91fc669ade95179d8792b1f4ea
type_inferenced_theorem: 920bb42e0ece95f8cd9f343296389f13255b1c3de14f5e13dfd17ff6d82b7137
initial_ast: ed504c4658bfd6d096a4f17fb16bdc8a587b6c91fc669ade95179d8792b1f4ea
canonicalized_ast: ed504c4658bfd6d096a4f17fb16bdc8a587b6c91fc669ade95179d8792b1f4ea
type_inferenced_ast: 920bb42e0ece95f8cd9f343296389f13255b1c3de14f5e13dfd17ff6d82b7137

View File

@ -16,6 +16,6 @@ outputs:
r:
type: bool
value: "true"
initial_theorem: 54be6c6fb3a49c107d7933f6d0db4e7f54f7db4afc0a77d1bc052cc1b542c96a
canonicalized_theorem: 54be6c6fb3a49c107d7933f6d0db4e7f54f7db4afc0a77d1bc052cc1b542c96a
type_inferenced_theorem: 849caf4c6446fd4a2360d48bcaf00af8ae24844e9e1aca30c34e77c0e5470d19
initial_ast: 54be6c6fb3a49c107d7933f6d0db4e7f54f7db4afc0a77d1bc052cc1b542c96a
canonicalized_ast: 54be6c6fb3a49c107d7933f6d0db4e7f54f7db4afc0a77d1bc052cc1b542c96a
type_inferenced_ast: 849caf4c6446fd4a2360d48bcaf00af8ae24844e9e1aca30c34e77c0e5470d19

View File

@ -16,6 +16,6 @@ outputs:
r:
type: bool
value: "false"
initial_theorem: d17e4bd13c8e5f3f01cdf41bddde1d8aec876f28b1756b74a78b525d0e97ea09
canonicalized_theorem: d17e4bd13c8e5f3f01cdf41bddde1d8aec876f28b1756b74a78b525d0e97ea09
type_inferenced_theorem: d8db1d4d4fb8b6de4e25a458bfe2cc29d100cf959b294a76086d4cbcb209e4c6
initial_ast: d17e4bd13c8e5f3f01cdf41bddde1d8aec876f28b1756b74a78b525d0e97ea09
canonicalized_ast: d17e4bd13c8e5f3f01cdf41bddde1d8aec876f28b1756b74a78b525d0e97ea09
type_inferenced_ast: d8db1d4d4fb8b6de4e25a458bfe2cc29d100cf959b294a76086d4cbcb209e4c6

View File

@ -16,6 +16,6 @@ outputs:
r:
type: bool
value: "true"
initial_theorem: 25f48855e80d5d6e0a6fe71d388d7eafd0559bd9b4c320ccb6a2c8af874352fa
canonicalized_theorem: 25f48855e80d5d6e0a6fe71d388d7eafd0559bd9b4c320ccb6a2c8af874352fa
type_inferenced_theorem: c43f0ac3e0fcb4580dac447b16530ac89d166c95a7a9497a274020c6d4ec75fb
initial_ast: 25f48855e80d5d6e0a6fe71d388d7eafd0559bd9b4c320ccb6a2c8af874352fa
canonicalized_ast: 25f48855e80d5d6e0a6fe71d388d7eafd0559bd9b4c320ccb6a2c8af874352fa
type_inferenced_ast: c43f0ac3e0fcb4580dac447b16530ac89d166c95a7a9497a274020c6d4ec75fb

Some files were not shown because too many files have changed in this diff Show More