MCPcopy Create free account
hub / github.com/argumentcomputer/ix / mk_prop_structure_proj_test

Function mk_prop_structure_proj_test

crates/kernel/src/tutorial/defeq.rs:1891–1910  ·  view source on GitHub ↗

Helper: build test `name : PropStructure.{0,1} → resType := fun x => .proj PropStructure idx x`

(
    env: &mut KEnv<Meta>,
    name: &str,
    res_ty: ME,
    idx: u64,
  )

Source from the content-addressed store, hash-verified

1889 );
1890
1891 // Minimal recursor (Prop elimination only since it's a Prop structure)
1892 let ps_motive = pi(cnst("PropStructure", &[param(0), param(1)]), sort0());
1893 let ps_rec_ty = ipi(
1894 "motive",
1895 ps_motive,
1896 npi(
1897 "t",
1898 cnst("PropStructure", &[param(0), param(1)]),
1899 app(var(1), var(0)),
1900 ),
1901 );
1902 env.insert(
1903 ps_rec_id.clone(),
1904 KConst::Recr {
1905 name: mk_name("PropStructure.rec"),
1906 level_params: vec![mk_name("u"), mk_name("v")],
1907 k: false,
1908 is_unsafe: false,
1909 lvls: 2,
1910 params: 0,
1911 indices: 0,
1912 motives: 1,
1913 minors: 0,

Callers 6

good_proj_prop1Function · 0.85
bad_proj_prop2Function · 0.85
good_proj_prop3Function · 0.85
bad_proj_prop4Function · 0.85
bad_proj_prop5Function · 0.85
bad_proj_prop6Function · 0.85

Calls 10

uzeroFunction · 0.85
usuccFunction · 0.85
nlamFunction · 0.85
mk_defnFunction · 0.85
cnstFunction · 0.50
piFunction · 0.50
mk_idFunction · 0.50
varFunction · 0.50
cloneMethod · 0.45
insertMethod · 0.45

Tested by 6

good_proj_prop1Function · 0.68
bad_proj_prop2Function · 0.68
good_proj_prop3Function · 0.68
bad_proj_prop4Function · 0.68
bad_proj_prop5Function · 0.68
bad_proj_prop6Function · 0.68