Inference Rules For Functional Dependencies