% Mizar problem: t47_algspec1,algspec1,1060,43 
fof(t47_algspec1,conjecture,(
    ! [A] : 
      ( ( v1_instalg1(A)
        & l1_msualg_1(A) )
     => m2_algspec1(A,A) ) ),
    inference(mizar_bg_added,[status(thm)],[cc6_instalg1,d5_algspec1,dt_l1_msualg_1,dt_l1_struct_0,dt_m1_instalg1,dt_m2_algspec1,existence_l1_msualg_1,existence_l1_struct_0,existence_m1_instalg1,existence_m2_algspec1,t16_instalg1]),
    [file(algspec1,t47_algspec1)]).

fof(cc6_instalg1,axiom,(
    ! [A] : 
      ( ( v1_instalg1(A)
        & l1_msualg_1(A) )
     => ! [B] : 
          ( m1_instalg1(B,A)
         => v1_instalg1(B) ) ) ),
    file(instalg1,cc6_instalg1),
    []).

fof(d5_algspec1,axiom,(
    ! [A] : 
      ( ( v1_instalg1(A)
        & l1_msualg_1(A) )
     => ! [B] : 
          ( ( v1_instalg1(B)
            & l1_msualg_1(B) )
         => ( m2_algspec1(B,A)
          <=> m1_instalg1(A,B) ) ) ) ),
    file(algspec1,d5_algspec1),
    []).

fof(dt_l1_msualg_1,axiom,(
    ! [A] : 
      ( l1_msualg_1(A)
     => l1_struct_0(A) ) ),
    file(msualg_1,l1_msualg_1),
    []).

fof(dt_l1_struct_0,axiom,(
    $true ),
    file(struct_0,l1_struct_0),
    []).

fof(dt_m1_instalg1,axiom,(
    ! [A] : 
      ( ( v1_instalg1(A)
        & l1_msualg_1(A) )
     => ! [B] : 
          ( m1_instalg1(B,A)
         => l1_msualg_1(B) ) ) ),
    file(instalg1,m1_instalg1),
    []).

fof(dt_m2_algspec1,axiom,(
    ! [A] : 
      ( ( v1_instalg1(A)
        & l1_msualg_1(A) )
     => ! [B] : 
          ( m2_algspec1(B,A)
         => ( v1_instalg1(B)
            & l1_msualg_1(B) ) ) ) ),
    file(algspec1,m2_algspec1),
    []).

fof(existence_l1_msualg_1,axiom,(
    ? [A] : l1_msualg_1(A) ),
    file(msualg_1,l1_msualg_1),
    []).

fof(existence_l1_struct_0,axiom,(
    ? [A] : l1_struct_0(A) ),
    file(struct_0,l1_struct_0),
    []).

fof(existence_m1_instalg1,axiom,(
    ! [A] : 
      ( ( v1_instalg1(A)
        & l1_msualg_1(A) )
     => ? [B] : m1_instalg1(B,A) ) ),
    file(instalg1,m1_instalg1),
    []).

fof(existence_m2_algspec1,axiom,(
    ! [A] : 
      ( ( v1_instalg1(A)
        & l1_msualg_1(A) )
     => ? [B] : m2_algspec1(B,A) ) ),
    file(algspec1,m2_algspec1),
    []).

fof(t16_instalg1,axiom,(
    ! [A] : 
      ( ( v1_instalg1(A)
        & l1_msualg_1(A) )
     => m1_instalg1(A,A) ) ),
    file(instalg1,t16_instalg1),
    []).
