let n be Element of NAT ; :: thesis: for x, y being FinSequence holds InnerVertices (n -BitSubtracterStr (x,y)) is Relation
let x, y be FinSequence; :: thesis: InnerVertices (n -BitSubtracterStr (x,y)) is Relation
defpred S1[ Element of NAT ] means InnerVertices ($1 -BitSubtracterStr (x,y)) is Relation;
0 -BitSubtracterStr (x,y) = 1GateCircStr (<*>,((0 -tuples_on BOOLEAN) --> TRUE)) by Th2;
then A1: S1[ 0 ] by FACIRC_1:38;
A2: now
let i be Element of NAT ; :: thesis: ( S1[i] implies S1[i + 1] )
assume A3: S1[i] ; :: thesis: S1[i + 1]
A4: (i + 1) -BitSubtracterStr (x,y) = (i -BitSubtracterStr (x,y)) +* (BitSubtracterWithBorrowStr ((x . (i + 1)),(y . (i + 1)),(i -BitBorrowOutput (x,y)))) by Th7;
InnerVertices (BitSubtracterWithBorrowStr ((x . (i + 1)),(y . (i + 1)),(i -BitBorrowOutput (x,y)))) is Relation by FSCIRC_1:22;
hence S1[i + 1] by A3, A4, FACIRC_1:3; :: thesis: verum
end;
for i being Element of NAT holds S1[i] from NAT_1:sch 1(A1, A2);
hence InnerVertices (n -BitSubtracterStr (x,y)) is Relation ; :: thesis: verum