خطوات الاستخدام
الخطوة 1: فهم المكونات الأساسية للقواعد النحوية. في أي قاعدة نحوية خالية من السياق (Context-Free Grammar)، لدينا رموز غير نهائية (Non-Terminals) تمثل مفاهيم نحوية، ورموز نهائية (Terminals) تمثل الكلمات أو الرموز الفعلية. المجموعة الأولى (FIRST) لرمز غير نهائي تحتوي على جميع الرموز النهائية التي يمكن أن تبدأ بها أي سلسلة مشتقة من ذلك الرمز، بالإضافة إلى إبسيلون (ε) إذا كان يمكن أن ينتج السلسلة الفارغة. المجموعة التالية (FOLLOW) لرمز غير نهائي تحتوي على جميع الرموز النهائية التي يمكن أن تظهر مباشرة بعد ذلك الرمز في أي اشتقاق، بالإضافة إلى رمز نهاية الإدخال ($) إذا كان الرمز يمكن أن يظهر في نهاية السلسلة.
الخطوة 2: تقدير الحجم الأقصى للمجموعة الأولى (FIRST). لكل رمز غير نهائي، يمكن أن تحتوي المجموعة الأولى على جميع الرموز النهائية (عددها = terminals) بالإضافة إلى إبسيلون (ε) إذا كان ذلك ممكناً. بالتالي، أقصى حجم للمجموعة الأولى لرمز غير نهائي واحد هو (terminals + 1). نظراً لوجود nonTerminals رمزاً غير نهائياً، فإن الحد الأقصى الإجمالي لحجم جميع المجموعات الأولى هو nonTerminals × (terminals + 1). لاحظ أن هذا تقدير متحفظ، لأن المجموعات الأولى قد تتداخل، لكنه يعطي حداً أعلى.
الخطوة 3: تقدير الحجم الأقصى للمجموعة التالية (FOLLOW). لكل رمز غير نهائي، يمكن أن تحتوي المجموعة التالية على جميع الرموز النهائية (عددها = terminals) بالإضافة إلى رمز نهاية الإدخال ($). وبالتالي، أقصى حجم للمجموعة التالية لرمز غير نهائي واحد هو (terminals + 1). إجمالاً، الحد الأقصى لحجم جميع المجموعات التالية هو nonTerminals × (terminals + 1). مرة أخرى، هذا حد أعلى نظري.