আপনার সমস্যাটি নিম্নলিখিত সহজ প্রশ্নটিকে হ্রাস করেছে বলে মনে হচ্ছে:
ফাংশনগুলির শ্রেণিতে দুটি ফাংশন দেওয়া , আমাদের কি সমস্ত জন্য ? (অন্য কথায়, সর্বত্র কি তাদের সমান মূল্য আছে?)F,GF(x)=G(x)x
এই শ্রেণীর ক্রিয়াকলাপের জন্য, এটি সিদ্ধান্তগ্রহণযোগ্য কিনা আমি জানি না। যদি তা হয় তবে আপনার সমস্যাটিও সিদ্ধান্ত গ্রহণযোগ্য।
আপনার সমস্যার জন্য, একটি সাধারণ পদ্ধতি হ'ল প্রতীকীভাবে পেতে কে আলাদা করুন , তারপরে আমাদের কাছে সমস্ত জন্য আছে কিনা তা পরীক্ষা করুন ।F(x)F′(x)F′(x)=G(x)x
সুতরাং মূল পদক্ষেপটি প্রতীকী পার্থক্য। আসুন কীভাবে আরও বিশদে এটি করা যায় তা নিয়ে কাজ করা যাক। আমরা পুনরাবৃত্তিমূল্য অনুমোদিত ফাংশনগুলির শ্রেণি সংজ্ঞা দিতে পারি:
F(x)::=c|x|ex|log(x)|sin(x)|cos(x)|tan(x)|F1(x)+F2(x)|F1(x)×F2(x)|F1(x)/F2(x)|F1(F2(x))
যেখানে ধ্রুবকগুলির এবং ফাংশনগুলির থাকে।cF,F1,F2
এরপরে ক্যালকুলাসের স্ট্যান্ডার্ড নিয়মগুলি (উদাহরণস্বরূপ, চেইন রুল ইত্যাদি) ব্যবহার করে প্রতীকীভাবে এই শ্রেণীর ফাংশনগুলিকে আলাদা করার জন্য একটি পুনরাবৃত্ত আলগোরিদম তৈরি করা সম্ভব। বিশেষত, আমরা উপরের প্রতিটি কেস পরিচালনা করতে পারি এবং পুনরাবৃত্তভাবে দেখাতে পারি যে এই শ্রেণীর মধ্যে একটি ক্রিয়াকলাপ হিসাবে ডেরিভেটিভ প্রতীকীভাবে প্রকাশ করা যেতে পারে। এই ক্ষেত্রে:
যদি , ।F(x)=cF′(x)=0
যদি , ।F(x)=xF′(x)=1
যদি , ।F(x)=exF′(x)=ex
যদি , ।F(x)=log(x)F′(x)=1/x
যদি , ।F(x)=sin(x)F′(x)=cos(x)
যদি , ।F(x)=tan(x)F′(x)=1+(tan(x))2
যদি , ।F(x)=F1(x)+F2(x)F′(x)=F′1(x)+F′2(x)
যদি , ।F(x)=F1(x)×F2(x)F′(x)=F′1(x)F2(x)+F1(x)F′2(x)
যদি , (চেইন রুল) থাকে।F(x)=F1(F2(x))F′(x)=F′1(F2(x))F′2(x)
ইত্যাদি। প্রতিটি ক্ষেত্রে, যদি অনুমোদিত ফাংশনের শ্রেণিতে থাকে, তবে , এবং আপনি পুনরাবৃত্তভাবে জন্য একটি প্রতীকী অভিব্যক্তিটি তৈরি করতে পারেন - এটি প্রতীকী পার্থক্য হিসাবে পরিচিত ।F(x)F′(x)F′(x)
অবশেষে, অবশিষ্ট সমস্ত জন্য কিনা তা পরীক্ষা করে দেখুন । আমার উত্তরের শীর্ষে সমস্যাটিই উল্লেখ করছি।F′(x)=G(x)x
দুটি ফাংশন একইরূপে সমান কিনা তা যাচাই করার জন্য একটি সহজ পদ্ধতি রয়েছে যা আমি অনুশীলনে বেশ ভালভাবে কাজ করার প্রত্যাশা করি। অ্যালগরিদমটি হ'ল: বারবার এলোমেলো মান বেছে নিন এবং মান ধরে কিনা তা পরীক্ষা করে দেখুন । যদি এটি এলোমেলোভাবে বেছে নেওয়া অনেকগুলি জন্য সমতা ধারণ করে , তবে "সেগুলি সমান সমান" আউটপুট দেয়। যদি আপনি কোনও খুঁজে পান যার জন্য , তবে আউটপুট "সেগুলি পৃথক"।xF(x)=G(x)xxxF(x)≠G(x)
এটি কাজ করবে এমন কোনও গ্যারান্টি নেই, তবে অনেক শ্রেণির ফাংশনগুলির জন্য, এই পদ্ধতির আউটপুট উচ্চ সম্ভাবনার সাথে সঠিক হবে। বিশেষত, ধরুন আমাদের কাছে এলোমেলোভাবে ভেরিয়েবল দ্বারা প্রতিনিধিত্ব করা এবং কিছু যেমন such ক্লাসে সমস্ত রাখেআরও ধরুন যে অনুমতিযোগ্য ফাংশনগুলির শ্রেণি বিয়োগের অধীনে বন্ধ রয়েছে (যেমন আপনার শ্রেণিটি রয়েছে)। তারপরে এটি অনুসরণ করে যে উপরের পদ্ধতির রাউন্ডগুলি সর্বাধিক সাথে সম্ভাব্যতার সাথে ভুল উত্তর দেয় ।xXϵ>0Pr[F(X)=0]≥ϵFr(1−ϵ)r
এছাড়াও, যদি বহুবর্ষীয় সমতা পরীক্ষার জন্য যদি এলোমেলো পদ্ধতি থাকে তবে সমস্যাটি নির্ধারিত।
এটি জিজ্ঞাসা করেই রয়ে গেছে যে এই জাতীয় ফলাফলটি আপনার নির্দিষ্ট শ্রেণির কার্যাবলীর জন্য রয়েছে কি না। উপরের বিবৃতিটি সম্ভবত ধারণ করবে না। তবে, আমরা ভাগ্যবান হলে, সম্ভবত আমরা নিম্নলিখিতগুলির মতো কিছু প্রমাণ করতে সক্ষম হতে পারি:
all এ সমস্ত ক্ষেত্রে , সম্ভবত আমরা আসল সংখ্যার উপর একটি বিতরণ পেতে পারি, যেমন একটি এলোমেলো পরিবর্তনশীল এবং একটি ধ্রুবক , যেমন that জন সব ফাংশন জন্য ঝুলিতে আপনার ক্লাসে হয় এবং সবচেয়ে এ "আকার" have ।s∈NXsϵs>0Pr[F(X)=0]Fs
যদি এটি সত্য হয়, তবে এটি অনুসরণ করবে যে বহুবর্ষীয় সমতা পরীক্ষার জন্য এলোমেলোভাবে অ্যালগরিদম রয়েছে এবং সুতরাং আপনার সমস্যাটি নির্ণয়যোগ্য।