→ alfadick:難道跟複數有關? 可是我記得之前的經驗,感覺都實數,冏 02/23 23:06
→ alfadick:(感覺Reduce預設要解的都是實數) 02/23 23:07
另外想請問一下在MATHEMATICA中,-2<x<6這個表達式算集合嗎?
怎樣的表達式算集合?
譬如我想測試 Sqrt[2]是否屬於(-2,6)這個區間,該怎麼做呢?
因為如果是有限元素的集合,我有查到是用List為結構,那很簡單,
可是無線元素-2<x<6的集合呢? 就算下 Reduce[-2<x<6,x],得到的還是-2<x<6 冏..
※ 編輯: alfadick 來自: 114.44.195.220 (02/23 23:31)
推 LPH66:好像真的是複數...改成Exists[x,Element[x,Reals],y==f[x]] 02/23 23:32
→ LPH66:就給出 Re[y]>=0&&Im[y]==0 的結果 02/23 23:32
→ LPH66:你的另外問題似乎可以查一下 Interval 這個東西 02/23 23:34
謝謝~~
追問一下:要找一個函數的對應域,或者它在某個定義域區間的image,
在Mathematica正規做法該怎麼做啊?
我用邏輯的想法是得到正確答案了
Reduce[Exists[x, -1 < x < 4,
y == x^3 + 2*x + 1], y, Reals] (*找出f在 (-1,4) 的image*)
Out= -2 < y < 73
但不知道正規做法是什麼@@
※ 編輯: alfadick 來自: 114.44.195.220 (02/23 23:36)
→ LPH66:唔, Interval 含端點... 02/23 23:35
→ LPH66:不過如果是用 Interval 的話那能用 IntervalMemberQ 查詢 02/23 23:36
找到了
In[11]= f[x_] := x^3 + 2*x + 1
f[Interval[{-1, 4}]] -----------> 這裡有端點
Out[11]= Interval[{-2, 73}]
※ 編輯: alfadick 來自: 114.44.195.220 (02/23 23:41)
話說PREIMAGE也有點怪:
http://mathworld.wolfram.com/Preimage.html
Reduce[Exists[y, IntervalMemberQ[Interval[{-2, 73}], y],
y == x^3 + 2*x + 1], x]
跑出False @@
※ 編輯: alfadick 來自: 114.44.195.220 (02/24 00:09)
→ alfadick:這真的是超有意思的coding logic 02/24 00:29
→ alfadick:也只有mathematica才能這樣大玩特玩量詞邏輯 02/24 00:30
推 LPH66:是說 Interval 這樣代不一定是正確的區間喔 02/24 01:14
→ LPH66:例如 f[x_]:=x+x^2 則 f[Interval[{-1,1}]] 會得到 02/24 01:15
→ LPH66:Interval[{-1,2}] 而不是正確的值域 Interval[{-1/2,2}] 02/24 01:16
我用Plot看(懶得手算XD), 正確的image應該是-1/4~2
→ LPH66:因為這樣代入時兩個 Interval 物件是獨立考慮的 02/24 01:17
→ LPH66:(這個例子是 Interval 的說明裡的例子) 02/24 01:17
啊?你是說f作用在Interval的效果等同於f[List{-1,1}] @@?
那Mathematica設計Interval這個函數幹嘛= =
l[x_] := x + x^2 ; l[Interval[{-1, 1}]] 結果是Interval[{-1,2}] ...
好像也不是端點取f得到的,-1不知道是哪裡冒出來的
※ 編輯: alfadick 來自: 114.44.195.220 (02/24 08:49)
Reduce[Exists[y, -2 < y < 73, y == x^3 + 2*x + 1], x, Reals]
這樣成功了。-2<y<73改用 IntervalMemberQ[Interval[{-2,73}],y]不行@@
※ 編輯: alfadick 來自: 114.44.195.220 (02/24 09:13)
有些很簡單的函數,明明Plot都可以描點了,
但用真值集合(reduce with ForAll, Exists, etc)來算image,就不行
Reduce[Exists[x, -1 < x < 4, y == Sin[x^2] + x^2], y, Reals]
(*求f(x)在(-1,4)的image*)
Reduce::nsmet: This system cannot be solved with the methods available to
Reduce.
http://reference.wolfram.com/mathematica/tutorial/RealPolynomialSystems.html
※ 編輯: alfadick 來自: 114.44.195.220 (02/24 14:08)