equal
deleted
inserted
replaced
429 |
429 |
430 lemma eq_mem [simp]: |
430 lemma eq_mem [simp]: |
431 "x \<in> (op =) y \<longleftrightarrow> x = y" |
431 "x \<in> (op =) y \<longleftrightarrow> x = y" |
432 by (auto simp add: mem_def) |
432 by (auto simp add: mem_def) |
433 |
433 |
434 instantiation pred :: (type) complete_boolean_algebra |
434 instantiation pred :: (type) complete_lattice |
435 begin |
435 begin |
436 |
436 |
437 definition |
437 definition |
438 "P \<le> Q \<longleftrightarrow> eval P \<le> eval Q" |
438 "P \<le> Q \<longleftrightarrow> eval P \<le> eval Q" |
439 |
439 |
480 |
480 |
481 lemma eval_Sup [simp]: |
481 lemma eval_Sup [simp]: |
482 "eval (\<Squnion>A) = SUPR A eval" |
482 "eval (\<Squnion>A) = SUPR A eval" |
483 by (simp add: Sup_pred_def) |
483 by (simp add: Sup_pred_def) |
484 |
484 |
|
485 instance proof |
|
486 qed (auto intro!: pred_eqI simp add: less_eq_pred_def less_pred_def) |
|
487 |
|
488 end |
|
489 |
|
490 lemma eval_INFI [simp]: |
|
491 "eval (INFI A f) = INFI A (eval \<circ> f)" |
|
492 by (unfold INFI_def) simp |
|
493 |
|
494 lemma eval_SUPR [simp]: |
|
495 "eval (SUPR A f) = SUPR A (eval \<circ> f)" |
|
496 by (unfold SUPR_def) simp |
|
497 |
|
498 instantiation pred :: (type) complete_boolean_algebra |
|
499 begin |
|
500 |
485 definition |
501 definition |
486 "- P = Pred (- eval P)" |
502 "- P = Pred (- eval P)" |
487 |
503 |
488 lemma eval_compl [simp]: |
504 lemma eval_compl [simp]: |
489 "eval (- P) = - eval P" |
505 "eval (- P) = - eval P" |
495 lemma eval_minus [simp]: |
511 lemma eval_minus [simp]: |
496 "eval (P - Q) = eval P - eval Q" |
512 "eval (P - Q) = eval P - eval Q" |
497 by (simp add: minus_pred_def) |
513 by (simp add: minus_pred_def) |
498 |
514 |
499 instance proof |
515 instance proof |
500 qed (auto intro!: pred_eqI simp add: less_eq_pred_def less_pred_def uminus_apply minus_apply) |
516 qed (auto intro!: pred_eqI simp add: uminus_apply minus_apply) |
501 |
517 |
502 end |
518 end |
503 |
|
504 lemma eval_INFI [simp]: |
|
505 "eval (INFI A f) = INFI A (eval \<circ> f)" |
|
506 by (unfold INFI_def) simp |
|
507 |
|
508 lemma eval_SUPR [simp]: |
|
509 "eval (SUPR A f) = SUPR A (eval \<circ> f)" |
|
510 by (unfold SUPR_def) simp |
|
511 |
519 |
512 definition single :: "'a \<Rightarrow> 'a pred" where |
520 definition single :: "'a \<Rightarrow> 'a pred" where |
513 "single x = Pred ((op =) x)" |
521 "single x = Pred ((op =) x)" |
514 |
522 |
515 lemma eval_single [simp]: |
523 lemma eval_single [simp]: |