reserve x for object;
reserve D for set;
reserve p for PartialPredicate of D;
reserve D for non empty set;
reserve p,q,r for PartialPredicate of D;

theorem Th14:
  PP_or(p,PP_or(q,r)) = PP_or(PP_or(p,q),r)
  proof
    set qr = PP_or(q,r);
    set a = PP_or(p,qr);
    set pq = PP_or(p,q);
    set b = PP_or(pq,r);
A1: dom qr = {d where d is Element of D:
     d in dom q & q.d = TRUE or d in dom r & r.d = TRUE
     or d in dom q & q.d = FALSE & d in dom r & r.d = FALSE} by Def4;
A2: dom a = {d where d is Element of D:
     d in dom p & p.d = TRUE or d in dom qr & qr.d = TRUE
     or d in dom p & p.d = FALSE & d in dom qr & qr.d = FALSE} by Def4;
A3: dom pq = {d where d is Element of D:
     d in dom p & p.d = TRUE or d in dom q & q.d = TRUE
     or d in dom p & p.d = FALSE & d in dom q & q.d = FALSE} by Def4;
A4: dom b = {d where d is Element of D:
     d in dom pq & pq.d = TRUE or d in dom r & r.d = TRUE
     or d in dom pq & pq.d = FALSE & d in dom r & r.d = FALSE} by Def4;
    thus dom a = dom b
    proof
      thus dom a c= dom b
      proof
        let d be object;
        assume d in dom a;
        then per cases by Th8;
        suppose d in dom p & p.d = TRUE;
          then d in dom pq & pq.d = TRUE by A3,Def4;
          hence thesis by A4;
        end;
        suppose that
A5:       d in dom qr and
A6:       qr.d = TRUE;
          d in dom q & q.d = TRUE or d in dom r & r.d = TRUE
            or d in dom q & q.d = FALSE & d in dom r & r.d = FALSE
            by A5,Th8;
          then per cases by A6,Def4;
          suppose d in dom q & q.d = TRUE;
            then d in dom pq & pq.d = TRUE by A3,Def4;
            hence thesis by A4;
          end;
          suppose d in dom r & r.d = TRUE;
            hence thesis by A4;
          end;
        end;
        suppose that
A7:       d in dom p and
A8:      p.d = FALSE and
A9:      d in dom qr and
A10:      qr.d = FALSE;
A11:      d in dom q & q.d = TRUE or d in dom r & r.d = TRUE
          or d in dom q & q.d = FALSE & d in dom r & r.d = FALSE
          by A9,Th8;
          then d in dom pq & pq.d = FALSE by A3,A7,A8,A10,Def4;
          hence thesis by A4,A11,Th11;
        end;
      end;
      let d be object;
      assume d in dom b;
      then per cases by Th8;
      suppose that
A12:    d in dom pq and
A13:    pq.d = TRUE;
        d in dom p & p.d = TRUE or d in dom q & q.d = TRUE
        or d in dom p & p.d = FALSE & d in dom q & q.d = FALSE
        by A12,Th8;
        then d in dom p & p.d = TRUE or d in dom qr & qr.d = TRUE
        by A1,A13,Def4;
        hence thesis by A2;
      end;
      suppose d in dom r & r.d = TRUE;
        then d in dom qr & qr.d = TRUE by A1,Def4;
        hence thesis by A2;
      end;
      suppose that
A14:    d in dom pq and
A15:    pq.d = FALSE and
A16:    d in dom r and
A17:    r.d = FALSE;
A18:    d in dom p & p.d = TRUE or d in dom q & q.d = TRUE
        or d in dom p & p.d = FALSE & d in dom q & q.d = FALSE
        by A14,Th8;
        then d in dom qr & qr.d = FALSE by A1,A15,A16,A17,Def4;
        hence thesis by A2,A18,Def4;
      end;
    end;
    let d be object;
    assume d in dom a;
    then per cases by Th8;
    suppose
A19:  d in dom p & p.d = TRUE;
      then
A20:  d in dom pq by A3;
      pq.d = TRUE by A19,Def4;
      hence b.d = TRUE by A20,Def4
      .= a.d by A19,Def4;
    end;
    suppose
A21:  d in dom qr & qr.d = TRUE;
      then d in dom q & q.d = TRUE or d in dom r & r.d = TRUE
      or d in dom q & q.d = FALSE & d in dom r & r.d = FALSE
      by Th8;
      then d in dom pq & pq.d = TRUE or d in dom r & r.d = TRUE
      by A3,A21,Def4;
      hence b.d = TRUE by Def4
      .= a.d by A21,Def4;
    end;
    suppose that
A22:  d in dom p & p.d = FALSE and
A23:  d in dom qr & qr.d = FALSE;
A24:  d in dom q & q.d = TRUE or d in dom r & r.d = TRUE
      or d in dom q & q.d = FALSE & d in dom r & r.d = FALSE
      by A23,Th8;
      then d in dom pq & pq.d = FALSE by A3,A22,A23,Def4;
      hence b.d = FALSE by A23,A24,Def4
      .= a.d by A22,A23,Def4;
    end;
  end;
