reserve i for Nat, x,y for set;
reserve S for non empty non void ManySortedSign;
reserve X for non-empty ManySortedSet of S;

theorem Th55:
  for B being bool-correct non empty non void BoolSignature
  for C being non empty non void ConnectivesSignature
  st the carrier' of B misses the carrier' of C
  holds B+*C is bool-correct
  proof
    let B be bool-correct non empty non void BoolSignature;
    let C be non empty non void ConnectivesSignature;
    assume A1: the carrier' of B misses the carrier' of C;
    set S = B+*C;
A2: the connectives of S = (the connectives of B)^the connectives of C
    by Def52; then
A3: len the connectives of S = (len the connectives of B)+
    len the connectives of C by FINSEQ_1:22;
A4: len the connectives of B >= 3 by Def30;
    hence len the connectives of S >= 3 by A3,NAT_1:12;
A5: now
      let i be Nat;
      assume 1 <= i & i <= len the connectives of B; then
A6:   i in dom the connectives of B by FINSEQ_3:25; then
      (the connectives of B).i in the carrier' of B by FUNCT_1:102; then
A7:   (the connectives of B).i nin the carrier' of C by A1,XBOOLE_0:3;
A8:   dom the Arity of C = the carrier' of C &
      dom the ResultSort of C = the carrier' of C by FUNCT_2:def 1;
      the Arity of S = (the Arity of B)+*the Arity of C &
      the ResultSort of S = (the ResultSort of B)+*the ResultSort of C
      by Th51; then
A9:   (the Arity of S).((the connectives of B).i) =
      (the Arity of B).((the connectives of B).i) &
      (the ResultSort of S).((the connectives of B).i) =
      (the ResultSort of B).((the connectives of B).i) by A7,A8,FUNCT_4:11;
      thus
A10:   (the connectives of S).i = (the connectives of B).i
      by A2,A6,FINSEQ_1:def 7;
      let x; let I be Element of B; let J be Element of S;
      assume
A11:   I = J & (the connectives of B).i is_of_type x,I;
      thus (the connectives of S).i is_of_type x,J
      by A9,A11,A10;
    end;
A12: the bool-sort of S = the bool-sort of B by Def52;
A13: 1 <= len the connectives of B by A4,XXREAL_0:2;
    (the connectives of B).1 is_of_type {}, the bool-sort of B by Def30;
    hence (the connectives of S).1 is_of_type {}, the bool-sort of S
    by A5,A12,A13;
A14: 2 <= len the connectives of B by A4,XXREAL_0:2;
    (the connectives of B).2 is_of_type <*the bool-sort of B*>,
    the bool-sort of B by Def30;
    hence (the connectives of S).2 is_of_type <*the bool-sort of S*>,
    the bool-sort of S by A5,A12,A14;
    (the connectives of B).3 is_of_type
    <*the bool-sort of B, the bool-sort of B*>, the bool-sort of B by Def30;
    hence thesis by A5,A4,A12;
  end;
