The idea behind regression testing is simple: make sure any new functionality or changes to existing functionality did not break other parts of the system in unexpected ways. However, the actual implementation may become very complicated very quickly.
Regression testing may focus on a single system, with the idea that part of that system was changed, and we are verifying that the rest of it still behaves as expected.
Regression testing may focus on multiple systems. In this case, any systems that might be impacted by the changed system would need to be tested as well.
Regression testing may be run to verify every system. However, if the company is large or has many systems, this may become more of an extravagance than an actual proper test.
Given how quickly regression testing may scale in size, it becomes very useful to automate the regression tests. This way, way could have a large suite of tests ran overnight, instead of having a team of testers spend an entire week manually entering the tests.
If all of the tests done in the Testing Phase have been automated, then the work of automating the regression tests has already been done. Now, when ever new system tests are made, they are included in the regression suite, and thus the regression suite is continuously updated.