The total damage done by units in specific terrain are calculated by multiplying base damage vs target * (percentage value + 100). For example, let's take the +50% Urban bonus of Allied Infantry Level 2. Taking the defensive value against unarmored targets, we get 6.0. We then add the 50% to 100% to get 150%, and then multiply this with 6. We get 9. That is the damage Infantry will do whilst defending against attacks from unarmored units.
Another example: Axis Artillery deals a base damage of 3.1 when attacking heavily armoured units. They get a +50% bonus in both hills and mountains. To calculate the amount of damage Artillery will deal against heavily armoured units, we do 3.1 * (50%+100%) = 4.65. This means that total damage dealt by artillery in hills or mountains is 4.65.
*Remember that damage is also factored in within a random +20%/-20% range, meaning you can deal up to a maximum damage of +20% of original damage, and deal a minimum damage of -20%.
Now, the +15% bonus in core provinces is as simple as this: Your units take 15% less damage, and you deal 15% more damage to invading troops. The fortifications bonus means you take X% less damage. For example, Level 1 Forts give a 15% less damage taken to the units stationed within the forts, and Level 3 Forts give a 45% less damage taken to those units.