Proxy audit assembly
Proxy audit: delete the column, keep the correlation
SYNTHETIC demo n=2000 seed 14 - inputs zone + device - group column never read
1 - protected column: DELETED
group A - group B (hidden)
never an input to the model
law says: do not use
LOCKED
dropping it changes nothing:
the model never read it
X
2 - proxies the model DOES read
postcode zone
P(high|A)=0.756 P(high|B)=0.245
device tier
correlated with group (synthetic)
each innocent alone - together a rebuild
rebuilds
3 - opaque model decides
score = 2*zone + device
accept if score >= 2
accept A 0.756 - B 0.245
gap A-B = 0.511
no reason code - audit in/out only
appeal needs a human + a record
P(zone=high | A)
0.756
P(zone=high | B)
0.245
accept rate A / B
0.756 / 0.245
acceptance gap A-B
0.511
verdict: gap 0.511 with the column deleted - proxies rebuilt it
SYNTHETIC mechanism demo - correlation is not intent - never social evidence
rejected loans have no outcome label: equal-opportunity needs care, see follow-up