带切线弯曲箭头的树

带切线弯曲箭头的树

箭头控制

\draw[semithick, dashed, ->] (pe)..controls +(south west: 50) and  +(south: 50) .. (re); 

剖析树。我希望它围绕树的最底部节点弯曲。有人告诉我不能使用贝塞尔曲线来做到这一点,而必须使用切线曲线。我该怎么做?

  \documentclass[12pt,a4paper]{article}   
    \usepackage{tikz-qtree}
    \usepackage{tikz-qtree-compat}
    \usepackage{ulem}

    \begin{document}

   \begin{tikzpicture}[baseline=(current bounding box.center), every tree     node/.style={align=center,anchor=north}, level distance = 16ex, scale= 0.5]   
      \Tree [. {\formula{\exists z [sample(z) \land \forall x \exists y      [Company (y) \land Representative-of(x,y) \rightarrow saw(x, z)]]} \\    \formula{t}   }     [.{\formula{\lambda Q. \exists z [sample' (z)} \\    \formula{\land Q(z)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} \hspace{0.1cm} }  [.{\formula{\lambda P.\lambda Q. \exists z [P(z)} \\ \formula{\land Q(z)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} }  ] [.{ \formula{\lambda d. sample'(d):} \\ \formula{(e \linimp t)}  }  ]  ] [. { \formula{\lambda m. \forall x \exists z [company' (z)  \land R.of(x, z)} \\ \formula{\rightarrow \exists y [sample' (y) \land saw'(x, y)]} \\ \formula{((e \linimp t)}  } [.\node (re) {$m : e$}; ] [.{ \formula{\forall x \exists z [company' (z)  \land R.of(x, z)} \\ \formula{\rightarrow \exists y [sample' (y) \land saw'(x, y)]} \\ \formula{t} } [.{ \formula{\lambda Q. \forall x \exists z [company' (z)} \\ \formula{\land R.of(x, z) \rightarrow Q(x)} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} }  [.{ \formula{\lambda P. \lambda Q. \forall x [P (x)} \\ \formula{\rightarrow Q(x)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))}} ] [.{\formula{\lambda n. \exists z [company' (z)} \\ \formula{\land R.of(n',z)]:} \\ \formula{(e \linimp t} }     [.\node (ue) {$n : e$}; ] [.{\formula{\exists z [company' (z)} \\ \formula{\land R.of(n',z)]: t} }          [.{\formula{\lambda Q. \exists z [company' (z)} \\ \formula{\land Q(z)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} \hspace{0.1cm} } [.{\formula{\lambda P.\lambda Q. \exists z [P(z)} \\ \formula{\land Q(z)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} }  ] [.{ \formula{\lambda d. company'(d):} \\ \formula{(e \linimp t)}  } ]             ] [.{\formula{\lambda l. R.of(n',l'):} \\ \formula{(e \linimp t)} }       [.\node (ne) {$l : e$}; ] [.{\formula{R.of(n',l'):} \\ \formula{(t)} }       [.\node [circle,draw] (le) {$n : e$} ; ] [.{\formula{\lambda x. R.of(x,l'):} \\ \formula{(e \linimp t)} }       [.{\formula{\lambda y\lambda x. R.of(x,y):} \\ \formula{(e \linimp } \\ \formula{(e \linimp t)} } ] [.{\formula{l':e} }     [. {\formula{\lambda x_e. x_e:} \\ \formula{(e \linimp e)} } ] [.\node [circle,draw] (me) {$l' : e$} ; ] ] ]         ]                ]             ] ]         ] [.{\formula{\lambda k'. saw(k',m):} \\ \formula{(e \linimp t)} } [.\node (te) {$k' : e$}; ] [.{\formula{saw(k',m'):} \\ \formula{t} }          [.\node [circle,draw] (se) {$k' : e$} ; ] [.{\formula{\lambda x. saw(x,m'):} \\ \formula{(e  \linimp  t)} }   [.{\formula{\lambda y\lambda x. saw(x,y):} \\ \formula{(e \linimp} \\ \formula{(e  \linimp  t)} } ] [.\node [circle,draw] (pe) {$m : e$} ; ] ] ]                  ]             ]           ] ] 
  \draw[semithick, dashed, ->] (le)..controls +(south west:10) and +(south:10)    .. (ue);   
  \draw[semithick, dashed, ->]
  (me)..controls +(south west:11) and +(south:11) .. (ne);
  \draw[semithick, dashed, ->] (se)..controls +(south west:1) and +(south:1) .. (te);    
  \draw[semithick, dashed, ->] (pe)..controls +(south west: 50) and  +(south: 50) .. (re);    
  \end{tikzpicture}  
  \end{document}

同样,我在以下两棵树上遇到了同样的问题,并且想防止箭头解剖树木(就像它们现在做的那样):

 \documentclass[12pt,a4paper]{article}   
    \usepackage{tikz-qtree}
    \usepackage{tikz-qtree-compat}
    \usepackage{ulem}

    \begin{document}

  \begin{tikzpicture}[baseline=(current bounding box.center), every tree node/.style={align=center,anchor=north}, level distance = 17ex, scale= 0.5]   
   \Tree  [.t [.{\formula{\lambda Q. \exists z [company' (z)} \\ \formula{\land Q(z)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} \hspace{0.1cm} } [.{\formula{\lambda P.\lambda Q. \exists z [P(z)} \\ \formula{\land Q(z)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} } ] [.{ \formula{\lambda d. company'(d):} \\ \formula{(e \linimp t)}  } ] ] [.{\formula{\lambda l'. \exists z [sample' (z)} \\ \formula{\land ]:} \\ \formula{\forall x [R.of(x,l')} \\ \formula{\rightarrow Saw(x, z)]:}    \\ \formula{e \linimp t} \hspace{0.1cm} }      [.\node (ne) {$l' : e$}; ] [.{\formula{\exists z [sample' (z)} \\ \formula{\land ]:} \\ \formula{\forall x [R.of(x,l')} \\ \formula{\rightarrow Saw(x, z)]:}    \\ \formula{t} \hspace{0.1cm} }       [.{\formula{\lambda Q. \exists z [sample' (z)} \\ \formula{\land Q(z)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} \hspace{0.1cm} } [.{\formula{\lambda P.\lambda Q. \exists z [P(z)} \\ \formula{\land Q(z)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} } ] [.{ \formula{\lambda d. sample'(d):} \\ \formula{(e \linimp t)}  } ] ] [.{ \formula{\lambda m'. \forall x [R.of(x,l')} \\ \formula{\rightarrow Saw(x, m')]:} \\ \formula{e \linimp t} }        [.\node (re) {$m : e$}; ] [.{ \formula{\forall x [R.of(x,l')} \\ \formula{\rightarrow Saw(x, m')]:} \\ \formula{t} }           [.{ \formula{\lambda Q. \forall x [R.of(x,l')} \\ \formula{\rightarrow Q(x)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} }          [.{ \formula{\lambda P. \lambda Q. \forall x [P (x)} \\ \formula{\rightarrow Q(x)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))}} ] [.{\formula{\lambda n'. R.of(n',l'):} \\ \formula{e \linimp t} }            [.\node (ue) {$n' : e$}; ] [.{\formula{R.of(n',l'):} \\ \formula{t} }                 [.\node [circle,draw] (le) {$n' : e$} ; ] [.{\formula{\lambda x. R.of(x,l'):} \\ \formula{(e \linimp t)} }       [.{\formula{\lambda y \lambda x. R.of(x,y):} \\ \formula{(e \linimp} \\ \formula{(e \linimp t)} }  ] [. \formula{l : e} [.{\formula{\lambda x_e. x_e:} \\ \formula{(e \linimp e)} } ] [.\node [circle,draw] (me) {$l' : e$} ; ]     ]       ]    ] ] ] [.{\formula{\lambda k'. saw(k',m'):} \\ \formula{e \linimp t} }     [.\node (te) {$k' : e$}; ] [.{\formula{saw(k',m'):} \\ \formula{t} }       [.\node [circle,draw] (se) {$k' : e$} ; ] [.{\formula{\lambda x. saw(x,m'):} \\ \formula{(e  \linimp  t)} }  [.{\formula{\lambda y\lambda x. saw(x,y):} \\ \formula{(e \linimp} \\ \formula{(e  \linimp  t)} } ] [.\node [circle,draw] (pe) {$m : e$} ; ] ]      ] ] ]            ]    ] ]                                                               ] 
 \draw[semithick, dashed, ->] (le)..controls +(south west:1) and +(south:1) .. (ue);
\draw[semithick, dashed, ->]
  (me)..controls +(south west:15) and +(south:15) .. (ne);
\draw[semithick, dashed, ->] (se)..controls +(south west:1) and +(south:1) .. (te); 
\draw[semithick, dashed, ->] (pe)..controls +(south west:6) and +(south:6) .. (re);  
  \end{tikzpicture}  
  \end{document}

最后一棵树:

\documentclass[12pt,a4paper]{article}   
    \usepackage{tikz-qtree}
    \usepackage{tikz-qtree-compat}
    \usepackage{ulem}

    \begin{document}

  \begin{tikzpicture}[baseline=(current bounding box.center), every tree node/.style={align=center,anchor=north}, level distance = 15ex, scale= 0.5]   
   \Tree  [.t [.{\formula{\lambda Q. \exists z [sample' (z)} \\ \formula{\land Q(z)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} \hspace{0.1cm} } [.{\formula{\lambda P.\lambda Q. \exists z [P(z)} \\ \formula{\land Q(z)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} } ] [.{ \formula{\lambda d. sample'(d):} \\ \formula{(e \linimp t)}  } ] ] [.{\formula{\lambda m'. \exists z [company' (z)} \\ \formula{\land \forall x [R.of(x,z)} \\ \formula{\rightarrow Saw(x, m')]]:} \\ \formula{t} \hspace{0.1cm} }  [.\node (re) {$m' : e$}; ] [.{\formula{\exists z [company' (z)} \\ \formula{\land \forall x [R.of(x,z)} \\ \formula{\rightarrow Saw(x, m')]]:} \\ \formula{t} \hspace{0.1cm} }       [.{\formula{\lambda Q. \exists z [company' (z)} \\ \formula{\land Q(z)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} \hspace{0.1cm} } [.{\formula{\lambda P.\lambda Q. \exists z [P(z)} \\ \formula{\land Q(z)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} } ] [.{ \formula{\lambda d. company'(d):} \\ \formula{(e \linimp t)}  } ] ] [.{ \formula{\lambda l'. \forall x [R.of(x,l')} \\ \formula{\rightarrow Saw(x, m')]:} \\ \formula{e \linimp t} }  [.\node (ne) {$l' : e$}; ] [.{ \formula{\forall x [R.of(x,l')} \\ \formula{\rightarrow Saw(x, m')]:} \\ \formula{t} }       [.{ \formula{\lambda Q. \forall x [R.of(x,l')} \\ \formula{\rightarrow Q(x)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))}}       [.{ \formula{\lambda P. \lambda Q. \forall x [P (x)} \\ \formula{\rightarrow Q(x)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))}} ] [.{\formula{\lambda n'. R.of(n',l'):} \\ \formula{e \linimp t} }         [.\node (ue) {$n' : e$}; ] [.{\formula{R.of(n',l'):} \\ \formula{t} }     [.\node [circle,draw] (le) {$n' : e$} ; ] [.{\formula{\lambda x. R.of(x,l'):} \\ \formula{(e \linimp t)} }    [.{\formula{\lambda y\lambda x. R.of(x,y):} \\ \formula{(e \linimp} \\ \formula{e \linimp t)} } ] [. \formula{l : e} [.{\formula{\lambda x_e. x_e:} \\ \formula{(e \linimp e)} }  ] [.\node [circle,draw] (me) {$l' : e$} ; ]    ]     ]    ] ] ] [.{\formula{\lambda k'. saw(k',m'):} \\ \formula{e \linimp t} }         [.\node (te) {$k' : e$}; ] [.{\formula{saw(k',m'):} \\ \formula{t} }        [.\node [circle,draw] (se) {$k' : e$} ; ] [.{\formula{\lambda x. saw(x,m'):} \\ \formula{(e  \linimp  t)} }           [.{\formula{\lambda y\lambda x. saw(x,y):} \\ \formula{(e \linimp} \\ \formula{(e  \linimp  t)} }    ] [.\node [circle,draw] (pe) {$m' : e$} ; ] ]      ] ] ]            ]    ] ]                                                               ] 
 \draw[semithick, dashed, ->] (le)..controls +(south west:1) and +(south:1) .. (ue);
\draw[semithick, dashed, ->]
  (me)..controls +(south west:11) and +(south:11) .. (ne);
\draw[semithick, dashed, ->] (se)..controls +(south west:1) and +(south:1) .. (te); 
\draw[semithick, dashed, ->] (pe)..controls +(south west:6) and +(south:6) .. (re);  
  \end{tikzpicture}   

  \end{document}

答案1

一切都归结为选择合适的控制点(我必须提供虚假的定义\formula\linimp处理您的代码):

\documentclass[tikz,border=5pt]{standalone}   
\usepackage{tikz-qtree}
\usepackage{tikz-qtree-compat}
\usepackage{ulem}

\newcommand\formula[1]{$#1$}
\newcommand\linimp{}

\begin{document}

\begin{tikzpicture}[baseline=(current bounding box.center), every tree     node/.style={align=center,anchor=north}, level distance = 16ex, scale= 0.5]   
      \Tree [. {\formula{\exists z [sample(z) \land \forall x \exists y      [Company (y) \land Representative-of(x,y) \rightarrow saw(x, z)]]} \\    \formula{t}   }     [.{\formula{\lambda Q. \exists z [sample' (z)} \\    \formula{\land Q(z)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} \hspace{0.1cm} }  [.{\formula{\lambda P.\lambda Q. \exists z [P(z)} \\ \formula{\land Q(z)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} }  ] [.{ \formula{\lambda d. sample'(d):} \\ \formula{(e \linimp t)}  }  ]  ] [. { \formula{\lambda m. \forall x \exists z [company' (z)  \land R.of(x, z)} \\ \formula{\rightarrow \exists y [sample' (y) \land saw'(x, y)]} \\ \formula{((e \linimp t)}  } [.\node (re) {$m : e$}; ] [.{ \formula{\forall x \exists z [company' (z)  \land R.of(x, z)} \\ \formula{\rightarrow \exists y [sample' (y) \land saw'(x, y)]} \\ \formula{t} } [.{ \formula{\lambda Q. \forall x \exists z [company' (z)} \\ \formula{\land R.of(x, z) \rightarrow Q(x)} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} }  [.{ \formula{\lambda P. \lambda Q. \forall x [P (x)} \\ \formula{\rightarrow Q(x)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))}} ] [.{\formula{\lambda n. \exists z [company' (z)} \\ \formula{\land R.of(n',z)]:} \\ \formula{(e \linimp t} }     [.\node (ue) {$n : e$}; ] [.{\formula{\exists z [company' (z)} \\ \formula{\land R.of(n',z)]: t} }          [.{\formula{\lambda Q. \exists z [company' (z)} \\ \formula{\land Q(z)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} \hspace{0.1cm} } [.{\formula{\lambda P.\lambda Q. \exists z [P(z)} \\ \formula{\land Q(z)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} }  ] [.{ \formula{\lambda d. company'(d):} \\ \formula{(e \linimp t)}  } ]             ] [.{\formula{\lambda l. R.of(n',l'):} \\ \formula{(e \linimp t)} }       [.\node (ne) {$l : e$}; ] [.{\formula{R.of(n',l'):} \\ \formula{(t)} }       [.\node [circle,draw] (le) {$n : e$} ; ] [.{\formula{\lambda x. R.of(x,l'):} \\ \formula{(e \linimp t)} }       [.{\formula{\lambda y\lambda x. R.of(x,y):} \\ \formula{(e \linimp } \\ \formula{(e \linimp t)} } ] [.{\formula{l':e} }     [. {\formula{\lambda x_e. x_e:} \\ \formula{(e \linimp e)} } ] [.\node [circle,draw] (me) {$l' : e$} ; ] ] ]         ]                ]             ] ]         ] [.{\formula{\lambda k'. saw(k',m):} \\ \formula{(e \linimp t)} } [.\node (te) {$k' : e$}; ] [.{\formula{saw(k',m'):} \\ \formula{t} }          [.\node [circle,draw] (se) {$k' : e$} ; ] [.{\formula{\lambda x. saw(x,m'):} \\ \formula{(e  \linimp  t)} }   [.{\formula{\lambda y\lambda x. saw(x,y):} \\ \formula{(e \linimp} \\ \formula{(e  \linimp  t)} } ] [.\node [circle,draw] (pe) {$m : e$} ; ] ] ]                  ]             ]           ] ] 
  \draw[semithick, dashed, ->] (le)..controls +(south west:10) and +(south:10)    .. (ue);   
  \draw[semithick, dashed, ->]
  (me)..controls +(south west:11) and +(south:11) .. (ne);
  \draw[semithick, dashed, ->] (se)..controls +(south west:1) and +(south:1) .. (te);    
  \draw[overlay,semithick, dashed, ->] (pe)..controls +(south:8) and  (south:50) .. (re);    
\end{tikzpicture}  

\begin{tikzpicture}[baseline=(current bounding box.center), every tree node/.style={align=center,anchor=north}, level distance = 17ex, scale= 0.5]   
   \Tree  [.t [.{\formula{\lambda Q. \exists z [company' (z)} \\ \formula{\land Q(z)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} \hspace{0.1cm} } [.{\formula{\lambda P.\lambda Q. \exists z [P(z)} \\ \formula{\land Q(z)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} } ] [.{ \formula{\lambda d. company'(d):} \\ \formula{(e \linimp t)}  } ] ] [.{\formula{\lambda l'. \exists z [sample' (z)} \\ \formula{\land ]:} \\ \formula{\forall x [R.of(x,l')} \\ \formula{\rightarrow Saw(x, z)]:}    \\ \formula{e \linimp t} \hspace{0.1cm} }      [.\node (ne) {$l' : e$}; ] [.{\formula{\exists z [sample' (z)} \\ \formula{\land ]:} \\ \formula{\forall x [R.of(x,l')} \\ \formula{\rightarrow Saw(x, z)]:}    \\ \formula{t} \hspace{0.1cm} }       [.{\formula{\lambda Q. \exists z [sample' (z)} \\ \formula{\land Q(z)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} \hspace{0.1cm} } [.{\formula{\lambda P.\lambda Q. \exists z [P(z)} \\ \formula{\land Q(z)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} } ] [.{ \formula{\lambda d. sample'(d):} \\ \formula{(e \linimp t)}  } ] ] [.{ \formula{\lambda m'. \forall x [R.of(x,l')} \\ \formula{\rightarrow Saw(x, m')]:} \\ \formula{e \linimp t} }        [.\node (re) {$m : e$}; ] [.{ \formula{\forall x [R.of(x,l')} \\ \formula{\rightarrow Saw(x, m')]:} \\ \formula{t} }           [.{ \formula{\lambda Q. \forall x [R.of(x,l')} \\ \formula{\rightarrow Q(x)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} }          [.{ \formula{\lambda P. \lambda Q. \forall x [P (x)} \\ \formula{\rightarrow Q(x)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))}} ] [.{\formula{\lambda n'. R.of(n',l'):} \\ \formula{e \linimp t} }            [.\node (ue) {$n' : e$}; ] [.{\formula{R.of(n',l'):} \\ \formula{t} }                 [.\node [circle,draw] (le) {$n' : e$} ; ] [.{\formula{\lambda x. R.of(x,l'):} \\ \formula{(e \linimp t)} }       [.{\formula{\lambda y \lambda x. R.of(x,y):} \\ \formula{(e \linimp} \\ \formula{(e \linimp t)} }  ] [. \formula{l : e} [.{\formula{\lambda x_e. x_e:} \\ \formula{(e \linimp e)} } ] [.\node [circle,draw] (me) {$l' : e$} ; ]     ]       ]    ] ] ] [.{\formula{\lambda k'. saw(k',m'):} \\ \formula{e \linimp t} }     [.\node (te) {$k' : e$}; ] [.{\formula{saw(k',m'):} \\ \formula{t} }       [.\node [circle,draw] (se) {$k' : e$} ; ] [.{\formula{\lambda x. saw(x,m'):} \\ \formula{(e  \linimp  t)} }  [.{\formula{\lambda y\lambda x. saw(x,y):} \\ \formula{(e \linimp} \\ \formula{(e  \linimp  t)} } ] [.\node [circle,draw] (pe) {$m : e$} ; ] ]      ] ] ]            ]    ] ]                                                               ] 
 \draw[semithick, dashed, ->] (le)..controls +(south west:1) and +(south:1) .. (ue);
\draw[semithick, dashed, ->]
  (me)..controls +(south west:15) and +(south:15) .. (ne);
\draw[semithick, dashed, ->] (se)..controls +(south west:1) and +(south:1) .. (te); 
\draw[overlay,semithick, dashed, ->] (pe)..controls +(south:20) and +(south west:10) .. (re.south);  
\end{tikzpicture}  

  \begin{tikzpicture}[baseline=(current bounding box.center), every tree node/.style={align=center,anchor=north}, level distance = 15ex, scale= 0.5]   
   \Tree  [.t [.{\formula{\lambda Q. \exists z [sample' (z)} \\ \formula{\land Q(z)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} \hspace{0.1cm} } [.{\formula{\lambda P.\lambda Q. \exists z [P(z)} \\ \formula{\land Q(z)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} } ] [.{ \formula{\lambda d. sample'(d):} \\ \formula{(e \linimp t)}  } ] ] [.{\formula{\lambda m'. \exists z [company' (z)} \\ \formula{\land \forall x [R.of(x,z)} \\ \formula{\rightarrow Saw(x, m')]]:} \\ \formula{t} \hspace{0.1cm} }  [.\node (re) {$m' : e$}; ] [.{\formula{\exists z [company' (z)} \\ \formula{\land \forall x [R.of(x,z)} \\ \formula{\rightarrow Saw(x, m')]]:} \\ \formula{t} \hspace{0.1cm} }       [.{\formula{\lambda Q. \exists z [company' (z)} \\ \formula{\land Q(z)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} \hspace{0.1cm} } [.{\formula{\lambda P.\lambda Q. \exists z [P(z)} \\ \formula{\land Q(z)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))} } ] [.{ \formula{\lambda d. company'(d):} \\ \formula{(e \linimp t)}  } ] ] [.{ \formula{\lambda l'. \forall x [R.of(x,l')} \\ \formula{\rightarrow Saw(x, m')]:} \\ \formula{e \linimp t} }  [.\node (ne) {$l' : e$}; ] [.{ \formula{\forall x [R.of(x,l')} \\ \formula{\rightarrow Saw(x, m')]:} \\ \formula{t} }       [.{ \formula{\lambda Q. \forall x [R.of(x,l')} \\ \formula{\rightarrow Q(x)]:} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))}}       [.{ \formula{\lambda P. \lambda Q. \forall x [P (x)} \\ \formula{\rightarrow Q(x)]:} \\ \formula{(e \linimp t)\linimp} \\ \formula{(\forall X(e \linimp X)} \\ \formula{\linimp X))}} ] [.{\formula{\lambda n'. R.of(n',l'):} \\ \formula{e \linimp t} }         [.\node (ue) {$n' : e$}; ] [.{\formula{R.of(n',l'):} \\ \formula{t} }     [.\node [circle,draw] (le) {$n' : e$} ; ] [.{\formula{\lambda x. R.of(x,l'):} \\ \formula{(e \linimp t)} }    [.{\formula{\lambda y\lambda x. R.of(x,y):} \\ \formula{(e \linimp} \\ \formula{e \linimp t)} } ] [. \formula{l : e} [.{\formula{\lambda x_e. x_e:} \\ \formula{(e \linimp e)} }  ] [.\node [circle,draw] (me) {$l' : e$} ; ]    ]     ]    ] ] ] [.{\formula{\lambda k'. saw(k',m'):} \\ \formula{e \linimp t} }         [.\node (te) {$k' : e$}; ] [.{\formula{saw(k',m'):} \\ \formula{t} }        [.\node [circle,draw] (se) {$k' : e$} ; ] [.{\formula{\lambda x. saw(x,m'):} \\ \formula{(e  \linimp  t)} }           [.{\formula{\lambda y\lambda x. saw(x,y):} \\ \formula{(e \linimp} \\ \formula{(e  \linimp  t)} }    ] [.\node [circle,draw] (pe) {$m' : e$} ; ] ]      ] ] ]            ]    ] ]                                                               ] 
 \draw[semithick, dashed, ->] (le)..controls +(south west:1) and +(south:1) .. (ue);
\draw[semithick, dashed, ->]
  (me)..controls +(south west:11) and +(south:11) .. (ne);
\draw[overlay,semithick, dashed, ->] (se)..controls +(south west:1) and +(south:1) .. (te); 
\draw[overlay,semithick, dashed, ->] (pe)..controls +(south:25) and +(south west:15) .. (re);  
\end{tikzpicture}   

\end{document}

在此处输入图片描述

此外,您将需要使用一些overlays(正如我在回答中所做的那样)或剪辑来防止控制点过度扩大边界框。

相关内容