| is_referencevalue(initial_value(ty)) ⊦ initial_value(ty) = refval(jvmref) |
⊦ initial_value(boolean_type) = boolval(false)
⊦ initial_value(int_type) = intval(0)
⊦ initial_value(short_type) = shortval(0s)
⊦ initial_value(byte_type) = byteval(0b)
⊦ initial_value(long_type) = longval(0l)
⊦ initial_value(float_type) = floatval(0f)
⊦ initial_value(double_type) = doubleval(0d)
⊦ initial_value(char_type) = charval(mkchar(0))
⊦ initial_value(void_type) = refval(jvmref)
⊦ initial_value(abstract_type) = noval
⊦ initial_value(mkclasstype(class1)) = refval(jvmref)
⊦ initial_value(mkarraytype(ty)) = refval(jvmref)
[[CONCRETESIMPRULES : ([CSIMPGEN : javatype generated by boolean_type, int_type, short_type, byte_type, long_type, float_type, double_type, char_type, void_type, abstract_type, mkclasstype, mkarraytype;], [CSIMPSEQ : ⊦ ¬ is_referencevalue(noval)], [CSIMPSEQ : ⊦ refval(r) ≠ noval], [CSIMPSEQ : ⊦ refval(r) = refval(r0) ↔ r = r0], [CSIMPSEQ : ⊦ ¬ is_referencevalue(charval(jchar))], [CSIMPSEQ : ⊦ refval(r) ≠ charval(jchar)], [CSIMPSEQ : ⊦ ¬ is_referencevalue (doubleval(doublevar))], [CSIMPSEQ : ⊦ refval(r) ≠ doubleval(doublevar)], [CSIMPSEQ : ⊦ ¬ is_referencevalue (floatval(floatvar))], [CSIMPSEQ : ⊦ refval(r) ≠ floatval(floatvar)], [CSIMPSEQ : ⊦ ¬ is_referencevalue(longval(lo))], [CSIMPSEQ : ⊦ refval(r) ≠ longval(lo)], [CSIMPSEQ : ⊦ ¬ is_referencevalue(byteval(by))], [CSIMPSEQ : ⊦ byteval(by) ≠ refval(r)], [CSIMPSEQ : ⊦ ¬ is_referencevalue(shortval(sho))], [CSIMPSEQ : ⊦ shortval(sho) ≠ refval(r)], [CSIMPSEQ : ⊦ ¬ is_referencevalue (boolval(boolvar))], [CSIMPSEQ : ⊦ refval(r) ≠ boolval(boolvar)], [CSIMPSEQ : ⊦ intval(i) ≠ refval(r)], [CSIMPSEQ : ⊦ ¬ is_referencevalue(intval(i))])]]