reserve p,q,r,s,A,B for Element of PL-WFF,
  F,G,H for Subset of PL-WFF,
  k,n for Element of NAT,
  f,f1,f2 for FinSequence of PL-WFF;
reserve M for PLModel;

theorem
  p 'or' (q '&' r) <=> ((p 'or' q) '&' (p 'or' r)) is tautology
  proof
    let M;
    thus (SAT M).(p 'or' (q '&' r) <=> ((p 'or' q) '&' (p 'or' r)))
    = (SAT M).(p 'or' (q '&' r)) <=>
    (SAT M).((p 'or' q) '&' (p 'or' r)) by semequ2
    .= (SAT M).p 'or' (SAT M).(q '&' r) <=>
    (SAT M).((p 'or' q) '&' (p 'or' r)) by semdis2
    .= (SAT M).p 'or' ((SAT M).q '&' (SAT M).r) <=>
    (SAT M).((p 'or' q) '&' (p 'or' r)) by semcon2
    .= (SAT M).p 'or' ((SAT M).q '&' (SAT M).r) <=>
    ((SAT M).(p 'or' q) '&' (SAT M).(p 'or' r)) by semcon2
    .= (SAT M).p 'or' ((SAT M).q '&' (SAT M).r) <=>
    (((SAT M).p 'or' (SAT M).q) '&' (SAT M).(p 'or' r)) by semdis2
    .= (SAT M).p 'or' ((SAT M).q '&' (SAT M).r) <=>
    (((SAT M).p 'or' (SAT M).q) '&' ((SAT M).p 'or' (SAT M).r)) by semdis2
    .= 1 by th8a;
end;
