While you might be able to get away with using bool instead of BOOL for your own needs, you might run into problems with passing a 'bool' to something else (like a public API method). You should simply stick with BOOL when writing Objective-C code, mostly for future-proofing.
But I don't think anything will blow up if you do, it's just highly not recommended and doesn't follow any of Objective-C's conventions.
As a side note, BOOL's YES or NO format is kind of a suggestion, I've had the bad habit of setting a BOOL to TRUE or FALSE (notice the all uppercase) and it's no problem. You can also use 1 or 0.
These are all valid:
BOOL myBool;
myBool = YES; // true
myBool = TRUE; // true
myBool = 1; // true
myBool = NO; // false
myBool = FALSE; // false
myBool = 0; // false