1) In the properties window, go to the Scene tab and change unit type to Imperial.
2) In Object mode, create a new plane mesh object.
3) Press the N key to bring up the properties panel in the 3D view window and change the x & y dimensions of the plane to 2 yd.
4) Tab into edit mode and select a vertex and check the values in the Transform portion of the properties panel, the x & y values read positive and or negative 1.094 yd when they should be reading positive or negative 1 yd, and yet the plane mesh matches the grid.
5) Change the x and y values to positive or negative 1 yd as necessary, then tab back out to object mode and view the dimensions values in the properties panel again, and now they read 1.829 yd, when they ought to be reading 2 yd, and you will also notice the plane no longer matches the grid.
This tells me that the math used to convert Imperial values in Edit mode must be off, as it produces results that no longer match the grid and causes the objects dimensions to be off. This problem effects both single vertex and median values in the edit modes properties panel in the 3D view window.
OS: Linux Mint 9 (32 bit)
3D card: NVIDIA GeForce 6200 (128MB)
Blender: 2.55.1 r33766 found at http://www.graphicall.org/builds/builds/showbuild.php?action=show&id=1142
Upon further testing I found some odd results. If I set the mesh to the grid in Object mode (say 2yd on x and y for the plane mesh) and then rely solely on dragging and snapping to the grid to move mesh components in Edit mode, then things match the grid and yet the Transform values in the 3D view window's properties panel read accurately. Not sure why dragging and snapping correct the issue that appears when manually entering values. Something else must be going on with it.
It's not a bug, there is a distinction between local and global coordinates (without and with the object transformation applied), you can toggle between them in edit mode, right under the vertex vertex coordinates.