-- -*- M2-comint -*- hash: 2888131334410668500

i1 : f = (n,d,e) -> (
         X = base(n,
              Bundle => (symbol D,d,chern_1 symbol D .. chern_d symbol D),
              Bundle => (symbol E,e,chern_1 symbol E .. chern_e symbol E));
         p := chern(exteriorPower dual D * E) - 1;
         assert( p % ctop D == 0 );
         p // ctop D );

i2 : n = 4;

i3 : for d from 1 to 3 do for e from 1 to 4 do << endl << "d=" << d << " e=" << e << " P(D,E) = " << f(n,d,e) << endl

d=1 e=1 P(D,E) = --warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
                        2                    2          3          2                 2        3
1 + (c D - c E) + ((c D)  - 2*c D*c E + (c E) ) + ((c D)  - 3*(c D) c E + 3*c D*(c E)  - (c E) )
      1     1        1         1   1      1          1          1    1       1    1        1

d=1 e=2 P(D,E) = --warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
--warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
                            2                    2                    3          2                 2        3
2 + (3*c D - c E) + (4*(c D)  - 3*c D*c E + (c E)  - 2*c E) + (5*(c D)  - 6*(c D) c E + 4*c D*(c E)  - (c E)  - 7*c D*c E + 3*c E*c E)
        1     1          1         1   1      1         2          1          1    1       1    1        1         1   2       1   2

d=1 e=3 P(D,E) = --warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
--warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
                             2                    2                     3           2                 2        3
3 + (6*c D - c E) + (10*(c D)  - 4*c D*c E + (c E)  - 2*c E) + (15*(c D)  - 10*(c D) c E + 5*c D*(c E)  - (c E)  - 9*c D*c E + 3*c E*c E - 3*c E)
        1     1           1         1   1      1         2           1           1    1       1    1        1         1   2       1   2       3

d=1 e=4 P(D,E) = --warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
--warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
                              2                    2                     3           2                 2        3
4 + (10*c D - c E) + (20*(c D)  - 5*c D*c E + (c E)  - 2*c E) + (35*(c D)  - 15*(c D) c E + 6*c D*(c E)  - (c E)  - 11*c D*c E + 3*c E*c E - 3*c E)
         1     1           1         1   1      1         2           1           1    1       1    1        1          1   2       1   2       3

d=2 e=1 P(D,E) = --warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
--warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
                                2                            2
- 1 + (- c D + 2*c E) + (- (c D)  + c D + 3*c D*c E - 3*(c E) )
          1       1          1       2       1   1        1

d=2 e=2 P(D,E) = --warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
--warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
                                    2                              2
- 2 + (- 2*c D + 2*c E) + (- 2*(c D)  + 3*c D + 3*c D*c E - 3*(c E)  + 6*c E)
            1       1            1         2       1   1        1         2

d=2 e=3 P(D,E) = --warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
--warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
                                    2                              2
- 3 + (- 3*c D + 2*c E) + (- 3*(c D)  + 6*c D + 3*c D*c E - 3*(c E)  + 6*c E)
            1       1            1         2       1   1        1         2

d=2 e=4 P(D,E) = --warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
--warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
                                    2                               2
- 4 + (- 4*c D + 2*c E) + (- 4*(c D)  + 10*c D + 3*c D*c E - 3*(c E)  + 6*c E)
            1       1            1          2       1   1        1         2

d=3 e=1 P(D,E) = --warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
--warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
2 + (3*c D - 6*c E)
        1       1

d=3 e=2 P(D,E) = --warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
--warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
4 + (6*c D - 6*c E)
        1       1

d=3 e=3 P(D,E) = --warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
--warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
6 + (9*c D - 6*c E)
        1       1

d=3 e=4 P(D,E) = --warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
--warning: clearing value of symbol D to allow access to Chern class variables based on it
--warning: clearing value of symbol E to allow access to Chern class variables based on it
8 + (12*c D - 6*c E)
         1       1

i4 : 
