Answers

In English we can use infinitive words like "talking", "teaching", "showing" that haven't any tense in these sentences. In Persian they will be ممنون برای صحبت کردن با منممنون برای فارسی یاد دادن به منممنون برای نشان دادن رفتن به کتابخانه به منThey are correct but we don't use them for this purpose. We commonly use tense for the second verb so it must be specified. We say:ممنون که با من صحبت کردی "Thank you for that you talked with me" if talking happened in the past orممنون که با من صحبت می‌کنی"Thank you for that you talk with me" if talking happens every day.Also:ممنون که به من فارسی یاد دادی (Past)ممنون که به من فارسی یاد میدی (Present)andممنون که به من نشون دادی چطوری برم کتابخانه (Past)ممنون که به من نشون میدی چطوری برم کتابخانه (Present)As you can see in ocean's answer that use present tense for two first sentences and past tense for the third.