change in e1 with (b⎻* ∘ A o2 = b'⎻* ∘ A o2);
apply (.= e‡#);
intro x;
- change with (eq1 o3 (b⎻* (a'⎻* (A o1 x))) (b'⎻*(a'⎻* (A o1 x))));
- lapply (saturated o1 o2 a' (A o1 x):?) as X;
- [ apply ((saturation_idempotent ?? (A_is_saturation o1) x)^-1) ]
- change in X with (eq1 ? (a'⎻* (A o1 x)) (A o2 (a'⎻* (A o1 x))));
+ change with (b⎻* (a'⎻* (A o1 x)) = b'⎻*(a'⎻* (A o1 x)));
alias symbol "trans" = "trans1".
alias symbol "prop1" = "prop11".
- apply (.= †X);
- whd in e1;
- lapply (e1 (a'⎻* (A o1 x))) as X1;
- change in X1 with (eq1 (oa_P (carrbt o3)) (b⎻* (A o2 (a'⎻* (A o1 x)))) (b'⎻* (A o2 (a' \sup ⎻* (A o1 x)))));
- apply (.= X1);
+ apply (.= †(saturated o1 o2 a' (A o1 x) : ?));
+ [ apply ((saturation_idempotent ?? (A_is_saturation o1) x)^-1); ]
+ change in e1 with (∀x.b⎻* (A o2 x) = b'⎻* (A o2 x));
+ apply (.= (e1 (a'⎻* (A o1 x))));
alias symbol "invert" = "setoid1 symmetry".
- apply (†(X\sup -1));]
+ apply (†((saturated ?? a' (A o1 x) : ?) ^ -1));
+ apply ((saturation_idempotent ?? (A_is_saturation o1) x)^-1);]
| intros; simplify;
change with (((a34⎻* ∘ a23⎻* ) ∘ a12⎻* ) ∘ A o1 = ((a34⎻* ∘ (a23⎻* ∘ a12⎻* )) ∘ A o1));
apply rule (#‡ASSOC1\sup -1);