Examples (6)

 IMAGEの用例です.

# IMAGE;;
val it : thm = |- !s f. IMAGE f s = {y | ?x. x IN s /\ y = f x}

# g`y IN (IMAGE (\x. x+ &1) {x| &0 &1 &1 < y`

# e (REWRITE_TAC[IMAGE;IN_ELIM_THM]);;
val it : goalstack = 1 subgoal (1 total)

`(?x. &0 < x /\ y = x + &1) <=> &1 < y`

# e EQ_TAC;;
val it : goalstack = 2 subgoals (2 total)

`&1 < y ==> (?x. &0 < x /\ y = x + &1)`

`(?x. &0 < x /\ y = x + &1) ==> &1 < y`

# e STRIP_TAC;;
val it : goalstack = 1 subgoal (2 total)

0 [`&0 < x`]
1 [`y = x + &1`]

`&1 < y`

# e(ASM_REAL_ARITH_TAC);;
val it : goalstack = 1 subgoal (1 total)

`&1 < y ==> (?x. &0 < x /\ y = x + &1)`

# e STRIP_TAC;;
val it : goalstack = 1 subgoal (1 total)

0 [`&1 < y`]

`?x. &0 < x /\ y = x + &1`

# e(EXISTS_TAC `y- &1` );;
val it : goalstack = 1 subgoal (1 total)

0 [`&1 < y`]

`&0 < y - &1 /\ y = y - &1 + &1`

# e(ASM_REAL_ARITH_TAC);;
val it : goalstack = No subgoals