Hi all,

I’m trying to understand the `affine.for`

's loop bound syntax:

```
lower-bound ::= `max`? affine-map-attribute dim-and-symbol-use-list | shorthand-bound
upper-bound ::= `min`? affine-map-attribute dim-and-symbol-use-list | shorthand-bound
```

To my understanding, the lower bound can either be a shorthand with SSA id/integer, or the max of an affine-map application. I don’t get why the lower-bound is the max of an affine-map application, and the upper-bound is the min of an affine-map application, seems like it should be the other way around? When would it be useful to define loop bound with affine map application?

Also, does `affine-map-attribute`

here mean the affine map is attached as an attribute to the `affine.for`

operation? Can I attach other types of attribute to `affine.for`

?

Thanks,

Niansong