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 Th28:
  PP_or(PP_and(p,q),q) = q
  proof
    set a = PP_and(p,q);
    set o = PP_or(a,q);
A1: dom a = {d where d is Element of D:
     d in dom p & p.d = FALSE or d in dom q & q.d = FALSE
     or d in dom p & p.d = TRUE & d in dom q & q.d = TRUE} by Th16;
A2: dom o = {d where d is Element of D:
     d in dom a & a.d = TRUE or d in dom q & q.d = TRUE
     or d in dom a & a.d = FALSE & d in dom q & q.d = FALSE} by Def4;
    thus dom o = dom q
    proof
      thus dom o c= dom q
      proof
        let d be object;
        assume d in dom o;
        then per cases by Th8;
        suppose that
A3:       d in dom a and
A4:       a.d = TRUE;
          per cases by A3,Th17;
          suppose d in dom p & p.d = FALSE;
            hence thesis by A4,Th19;
          end;
          suppose d in dom q & q.d = FALSE
            or d in dom p & p.d = TRUE & d in dom q & q.d = TRUE;
            hence thesis;
          end;
        end;
        suppose d in dom q & q.d = TRUE
          or d in dom a & a.d = FALSE & d in dom q & q.d = FALSE;
          hence thesis;
        end;
      end;
      let d be object;
      assume
A5:   d in dom q;
      then per cases by Th3;
      suppose
A6:     q.d = FALSE;
        then
A7:     a.d = FALSE by A5,Th19;
        d in dom a by A1,A5,A6;
        hence thesis by A2,A5,A6,A7;
      end;
      suppose q.d = TRUE;
        hence thesis by A2,A5;
      end;
    end;
    let d be object;
    assume d in dom o;
    then per cases by Th8;
    suppose that
A8:   d in dom a and
A9:  a.d = TRUE;
      per cases by A8,Th17;
      suppose d in dom p & p.d = FALSE;
        hence thesis by A9,Th19;
      end;
      suppose d in dom q & q.d = FALSE;
        hence thesis by A9,Th19;
      end;
      suppose d in dom p & p.d = TRUE & d in dom q & q.d = TRUE;
        hence thesis by Def4;
      end;
    end;
    suppose d in dom q & q.d = TRUE;
      hence thesis by Def4;
    end;
    suppose d in dom a & a.d = FALSE & d in dom q & q.d = FALSE;
      hence thesis by Def4;
    end;
  end;
