reserve N,M,K for ExtNat;
reserve X for ext-natural-membered set;

theorem
  for A, B being Sequence holds Card(A^B) = (Card A)^(Card B)
proof
  let A, B be Sequence;
  A1: dom Card(A^B) = dom(A^B) by CARD_3:def 2
    .= (dom A)+^(dom B) by ORDINAL4:def 1
    .= (dom Card A)+^(dom B) by CARD_3:def 2
    .= (dom Card A)+^(dom Card B) by CARD_3:def 2
    .= dom((Card A)^(Card B)) by ORDINAL4:def 1;
  now
    let x be object;
    assume x in dom Card(A^B);
    then A2: x in dom(A^B) by CARD_3:def 2;
    then reconsider C = x as Ordinal;
    x in (dom A)+^(dom B) by A2, ORDINAL4:def 1;
    then per cases by ORDINAL3:38;
    suppose A3: C in dom A;
      then A4: C in dom Card A by CARD_3:def 2;
      thus (Card(A^B)).x = card((A^B).x) by A2, CARD_3:def 2
        .= card(A.x) by A3, ORDINAL4:def 1
        .= (Card A).x by A3, CARD_3:def 2
        .= ((Card A)^(Card B)).x by A4, ORDINAL4:def 1;
    end;
    suppose ex D being Ordinal st D in dom B & C = (dom A)+^D;
      then consider D being Ordinal such that
        A5: D in dom B & C = (dom A)+^D;
      A6: D in dom Card B & C = (dom Card A)+^D by A5, CARD_3:def 2;
      thus (Card(A^B)).x = card((A^B).x) by A2, CARD_3:def 2
        .= card(B.D) by A5, ORDINAL4:def 1
        .= (Card B).D by A5, CARD_3:def 2
        .= ((Card A)^(Card B)).x by A6, ORDINAL4:def 1;
    end;
  end;
  hence thesis by A1, FUNCT_1:2;
end;
