I'm not sure that grint understands the basic concepts of SLAM. I'm not going to claim to be an expert; my only experience with SLAM comes from what I have read, and what I learned via the Udacity 373 course (back in 2012 - so I am a bit rusty).
SLAM is - at it's core - a methodology to provide mapping and localization of a (generally) robotic platform in order for that robot to be able to determine it's location at a future time - to within a certain level of probability.
The basic algorithm is a measure-move-measure sequence - where the "measurement" is whatever data the robot gets from a localization sensor - which could be any number of things, but generally is some form of Lidar sensor, or ultrasonics - but it doesn't have to be; ultimately, it just needs to be some form of a sensing system to give the robot some kind of information about the environment it could use to determine location.
So - it measures and stores the data - then it moves in some direction - then it measures again. It then tries to get a probability about the second measurement in relation to the first - how probable - that is what percentage of chance - is there that where it moved matches some previously known sensor data? Now - of course at first nearly every measurement the robot makes will have a probability of matching of zero, or very close to zero. But over time, as more and more measurements (and movements) are made - the robot will be able to compare a measurement to its internal map, and come up with a probability that is greater than 50 percent, and ultimately closer to 100 percent. It will likely never have 100 percent certainty; noise in the sensors, slipping motors, a constantly changing environment (especially with an outdoor robot!) - will all conspire to ensure that the robot will never be 100 percent certain, but it will likely be 98 percent certain - depending on the algorithm employed and the amount of training on the environment of course.
So - what sensors could be used, then? Well - I've already mentioned Lidar and ultrasonic sensors. Both of those are actually really good to work with. You could also have outbound fiducial (or other) sensors - that sense where the robot is and relay it back to the robot (or the robot looks for the fixed sensors - in some manner - in order to localize - which seems similar to what grint wants to do). Vision sensors could also be used - basically sense the location within the environment by sensing the shapes, shadows, light, color, etc - of the environment, and making the guesses.
Any one of these (and many more) could be made to work - but in reality, you want as many of them as possible, then combine the data from all the sensors into your map; because none of the sensors will be accurate in all situations, but some will be more accurate than others in certain situations, getting multiple data points from multiple sensors for each measure will be better in the long run and likely would increase the probability levels (for example, a Lidar could detect a sound porous surface an ultrasonic sensor might miss - on the other hand, an ultrasonic sensor may well give better data than the Lidar in other situations).
But you have constraints (budget and otherwise) for a lawnmowing robot. You want something robust, easy to deploy and use. Here's a proposal:
Imagine setting up "lawn spikes" of plastic (or other non-ferrous and sturdy material - plastic is cheap, though) with a small rare-earth magnet attached to the "head". Plastic golf tees with a small disk magnet attached would be perfect. Now - place these around on the lawn in a distinctly non-deterministic manner (the closer to random you can get, the better). You want to space them about 5-10 cm apart or so, maybe more - experimentation will be your best guide.
Also - add your RF perimeter wire as well. The robot will be able to sense this edge. The robot should also have bump sensors (or some other kind of proximity sensors) to determine other obstacles. Finally, put on the bottom of the robot several hall-effect sensors in a pattern (the more the better!) - which the robot can use to sense the magnets on the lawn.
By the pattern of the magnets sensings, combined with the sensing of the perimeter wire, along with the sensing of any bump/proximity sensors - all of this information should be enough for the robot to determine its position and orientation via a SLAM algorithm. Using magnets on the lawn will reduce maintenance (and indeed, you could even do the perimeter in magnets as well) - no need to worry about supplying power, they'll also be mostly invisible (aesthetics) if pressed flush with the ground.
You won't be able to do the SLAM processing, though, with an Arduino. You'll want at a minimum some kind of powerful single board computer - a Raspberry Pi or something similar would be a good place to start; ideally, you want something that can have a lot of on-board memory to store and process the map quickly, as well as a fast enough CPU to churn through the data and generate the probability of the location, given the sensor data sensed in relation to what has been learned in the past about the environment.
Adding other sensors to the robot might be useful - maybe a vision sensor (a web camera - to sense color of grass, buildings, edging, etc?) - maybe some ultrasonic sensors (to determine rough distances to obstacles). Some form of Lidar would be great, but there aren't many low-cost systems out there suitable for outdoor usage (that said, it seems that SICK LMS-29x devices are appearing on Ebay in greater numbers recently; I managed to pick one up for about $200.00 recently, a fraction of its original new cost - a bit of work later, plus a trip to and from the manufacturer - and I had it measuring data using it's software test suite).
grint, you might want to brush up on the concepts of SLAM some more - the basic concepts, how it works with probabilities, etc. I can't tell you how valuable I found the Udacity CS373 course to be to helping me better understand SLAM, in addition to many other topics surrounding it. If you have a chunk of time (8-12 weeks or so - it's at your own pace, though - so you could go longer if you wanted), I strongly encourage you to take it. You will need to understand and be able to implement algorithms using probabilities and linear algebra - so be aware of that going in (other courses are available from Udacity and other MOOCs that can help you prepare).