WORD_ARITH_CONVwordsLib.WORD_ARITH_CONV : conv
Conversion based on WORD_ARITH_ss and
WORD_ARITH_EQ_ss.
The conversion WORD_ARITH_CONV converts word arithmetic
expressions into a canonical form.
WORD_ARITH_CONV fixes the sign of equalities.
> SIMP_CONV (std_ss++wordsLib.WORD_ARITH_ss++wordsLib.WORD_ARITH_EQ_ss) [] “$- a = b : 'a word”
Exception- HOL_ERR
(at Preterm.type-analysis: at line 1, character 83:
Type error in function application.
Function: $= ($- a) :(α word -> α word) -> bool
Argument: b :α word
Reason: Attempt to unify different type operators: min$fun and fcp$cart
) raised
> wordsLib.WORD_ARITH_CONV “$- a = b : 'a word”
Exception- HOL_ERR
(at Preterm.type-analysis: at line 1, character 35:
Type error in function application.
Function: $= ($- a) :(α word -> α word) -> bool
Argument: b :α word
Reason: Attempt to unify different type operators: min$fun and fcp$cart
) raised
The fragment WORD_ARITH_EQ_ss and conversion
WORD_CONV do not adjust the sign of equalities.
wordsLib.WORD_ARITH_ss,
wordsLib.WORD_ARITH_EQ_ss,
wordsLib.WORD_LOGIC_CONV,
wordsLib.WORD_MUL_LSL_CONV,
wordsLib.WORD_CONV,
wordsLib.WORD_BIT_EQ_CONV,
wordsLib.WORD_EVAL_CONV