# truncated exponential series over ring of matrices over symbolic ring

I want to do the following:

```
R.<z>=PowerSeriesRing(SR)
i,n,z=var('i,n,z')
f,g=function('f,g')
F=sum(f(i)*z^i,i,1,n)
G=sum(g(i)*z^i,i,1,n)
gamma=matrix([[0,F],[G,0]])
```

I then want to define a function as the first several terms of the exponential series exp(gamma). Something like

```
Gamma=sum(gamma^i/factorial(i),i,0,n)
```

This will return an error like: 'too many values to unpack'

I only want to work with this function formally until I need to specify a value of n and eventually solve for the value f(i), g(i) in terms of some other parameters (yet to be defined in this code). What are some ways to clean this up so I can work with the truncated power series with matrix coefficients?

A possibly simpler but related question is how does one build a function that will sum several powers of a matrix?