Eh there are two different bonuses at work here (a 3rd if you include the weapon/engine damage reduction):

1. -25% armor damage taken

2. (elite effect) +50 to armor for damage reduction calculation purposes

The way damage to armor/hull works in Starsector is that it goes through a damage reduction calculation, where the incoming damage D is multiplied by H / (H + A), where H is the weapon's hit strength, and A is the target's armor. So for example, if the incoming damage is 500, has a hit strength of 500, and the target's armor is 1000, then it'll end up doing 500 * 500 / (500 + 1000) = 167 damage.

The "damage reduction calculation" refers to the H / (H + A) part of the equation. It can have a minimum value of 0.15, i.e. if the hit strength is too low, it'll always do at least 15%. Generally for projectiles, the hit strength is equal to the damage per bullet, while for beams, the hit strength is half of the damage per second (note that for burst beams, you have to look at the DPS while the beam is on, not its average DPS -- this value can be found in weapon_data.csv).

Once the armor is stripped away, there is a 5% residual armor when a weapon hits hull, meaning that for damage reduction calculation purposes, the weapon will still count as if it's hitting armor, but at 5% of the armor's original value. So for a ship with 1000 base armor, it'll count as if there is still 5% or 50 armor *for the damage reduction calculation*. The original damage part (i.e. D) remains unchanged. The important thing to note here is that this means the kinetic/high explosive/fragmentation bonuses/penalties vs armor still apply toward H / (H + A), even though they do not apply to D. Hence HE will still do better vs hull than kinetic or frag, assuming the base damage is the same.

Impact mitigation does as what it says "on the carton". If the armor damage would have been 400 damage, after going through all the calculations, you'll only take 75% or 300 damage instead.

However, there seems to be an additional hidden effect: the incoming weapon's hit strength is also decreased by 25%. So if the weapon's hit strength is supposed to be 400, it'll end up being 300 for the damage reduction calculation.

The elite effect also does what it says "on the carton". When calculating H / (H + A), it'll add 50 to the armor. I have no idea if it decreases as the armor decreases or not (i.e. if it scales with the % armor remaining). However, it does *not* apply to residual armor, as far as I can tell. Once the armor is gone and the weapon is hitting hull, I don't see a difference whether the target has the elite effect or not.

This is based on testing with a stock Eagle, with the player as officer, testing with skills ranged spec (i.e. no impact mitigation), impact mitigation, or impact mitigation + elite bonus, and with the ship having base armor (1000), heavy armor (1400), or heavy armor + armored weapon mounts (1500). It also had blast doors and reinforced bulkheads for extra hull but I don't think they affect the damage reduction calculations. The weapon used for testing is the Target Practice mod's harpoon ship, firing harpoons which do 750 HE damage each. The test results, against full armor and against bare hull (i.e. with only residual armor remaining), with the conditions of ranged spec (i.e. no impact mitigation), impact mitigation, or impact mitigation with elite bonus as the columns, were:

Nothing: 899 / 725 | 595 / 718 | 581 / 718

Heavy Armor: 775 / 716 | 501 / 706 | 491 / 706

Heavy + Armored Mount: 749 / 715 | 482 / 703 | 473 / 703

Hope it makes sense despite the formatting. Basically, what I described above fits the data perfectly; the harpoon does 1500 damage and has 1500 hit strength vs armor, which drops to 750 damage and 1500 hit strength vs hull, but once there's impact mitigation, the hit strength becomes 1125 instead. On the armor side, it's fixed as 1000/1400/1500 when full and 50/70/75 when stripped, regardless of if there's impact mitigation or its elite effect.