1 | initial version |

You should use

```
sage: d[2][R] = 1
```

Indeed, when `R`

is the list `[eU, 0, 1]`

, as in your example, the above is equivalent to

```
sage: d[2][eU, 0, 1] = 1
```

** Side note:** in your example, the line

```
sage: d = {(i): var("d_{}".format(i)) for i in range(2*p*q)}
```

is useless, because the elements of the dictionary `d`

are redefined in the two lines that follow:

```
sage: for i in range(2*p*q):
sage: d[i] = M.diff_form(i)
```

If you want to give names to the differential forms `d[i]`

, you could write simply

```
sage: d = {i: M.diff_form(i, name="d_{}".format(i)) for i in range(2*p*q)}
```

Then

```
sage: d[2]
2-form d_2 on the 4-dimensional complex manifold M
sage: R = [eU, 0, 1]
sage: d[2][R] = 1
sage: d[2].display()
d_2 = dx_0/\dx_1
```

2 | No.2 Revision |

You should ~~use~~write

```
sage: d[2][R] = 1
```

Indeed, when `R`

is the list `[eU, 0, 1]`

, as in your example, the above is equivalent to

```
sage: d[2][eU, 0, 1] = 1
```

** Side note:** in your example, the line

```
sage: d = {(i): var("d_{}".format(i)) for i in range(2*p*q)}
```

is useless, because the elements of the dictionary `d`

are redefined in the two lines that follow:

```
sage: for i in range(2*p*q):
sage: d[i] = M.diff_form(i)
```

If you want to give names to the differential forms `d[i]`

, you could write simply

```
sage: d = {i: M.diff_form(i, name="d_{}".format(i)) for i in range(2*p*q)}
```

Then

```
sage: d[2]
2-form d_2 on the 4-dimensional complex manifold M
sage: R = [eU, 0, 1]
sage: d[2][R] = 1
sage: d[2].display()
d_2 = dx_0/\dx_1
```

3 | No.3 Revision |

You should write

```
sage: d[2][R] = 1
```

Indeed, when `R`

is the list `[eU, 0, 1]`

, as in your example, the above is equivalent to

```
sage: d[2][eU, 0, 1] = 1
```

** Side note:** in your example, the line

```
sage: d = {(i): var("d_{}".format(i)) for i in range(2*p*q)}
```

is useless, because the elements of the dictionary `d`

are fully redefined in the two lines that follow:

```
sage: for i in range(2*p*q):
sage: d[i] = M.diff_form(i)
```

If you want to give names to the differential forms `d[i]`

, you could write simply

```
sage: d = {i: M.diff_form(i, name="d_{}".format(i)) for i in range(2*p*q)}
```

Then

```
sage: d[2]
2-form d_2 on the 4-dimensional complex manifold M
sage: R = [eU, 0, 1]
sage: d[2][R] = 1
sage: d[2].display()
d_2 = dx_0/\dx_1
```

Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.